css-to-tailwind-react 0.3.0 → 0.3.2

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,6 +1,8 @@
1
1
  export declare function getPropertyForUtility(utility: string): string;
2
2
  export declare function isTextFontSizeUtility(utility: string): boolean;
3
3
  export declare function isTextColorUtility(utility: string): boolean;
4
+ export declare function isLineHeightUtility(utility: string): boolean;
5
+ export declare function isLetterSpacingUtility(utility: string): boolean;
4
6
  export declare function getPropertiesForUtilities(utilities: string[]): Map<string, string[]>;
5
7
  export declare const PROPERTY_CONFLICT_GROUPS: Record<string, string[]>;
6
8
  export declare function getConflictGroup(property: string): string | null;
@@ -4,15 +4,18 @@ exports.PROPERTY_CONFLICT_GROUPS = void 0;
4
4
  exports.getPropertyForUtility = getPropertyForUtility;
5
5
  exports.isTextFontSizeUtility = isTextFontSizeUtility;
6
6
  exports.isTextColorUtility = isTextColorUtility;
7
+ exports.isLineHeightUtility = isLineHeightUtility;
8
+ exports.isLetterSpacingUtility = isLetterSpacingUtility;
7
9
  exports.getPropertiesForUtilities = getPropertiesForUtilities;
8
10
  exports.getConflictGroup = getConflictGroup;
9
11
  exports.propertiesConflict = propertiesConflict;
10
12
  const PROPERTY_PREFIX_MAP = {
11
13
  'color': ['text-'],
12
14
  'background-color': ['bg-'],
15
+ 'background': ['bg-'],
13
16
  'font-size': ['text-xs', 'text-sm', 'text-base', 'text-lg', 'text-xl', 'text-2xl', 'text-3xl', 'text-4xl', 'text-5xl', 'text-6xl', 'text-7xl', 'text-8xl', 'text-9xl', 'text-'],
14
17
  'font-weight': ['font-thin', 'font-extralight', 'font-light', 'font-normal', 'font-medium', 'font-semibold', 'font-bold', 'font-extrabold', 'font-black'],
15
- 'display': ['block', 'inline-block', 'inline', 'flex', 'inline-flex', 'grid', 'inline-grid', 'hidden', 'contents', 'table', 'table-cell', 'table-row'],
18
+ 'display': ['block', 'inline-block', 'inline', 'flex', 'inline-flex', 'grid', 'inline-grid', 'hidden', 'contents', 'table', 'table-cell', 'table-row', 'flow-root'],
16
19
  'position': ['static', 'fixed', 'absolute', 'relative', 'sticky'],
17
20
  'width': ['w-'],
18
21
  'height': ['h-'],
@@ -38,6 +41,7 @@ const PROPERTY_PREFIX_MAP = {
38
41
  'border-radius': ['rounded-', 'rounded'],
39
42
  'border-width': ['border-', 'border-t-', 'border-r-', 'border-b-', 'border-l-'],
40
43
  'border-color': ['border-'],
44
+ 'border-style': ['border-solid', 'border-dashed', 'border-dotted', 'border-double', 'border-hidden', 'border-none'],
41
45
  'flex-direction': ['flex-row', 'flex-col', 'flex-row-reverse', 'flex-col-reverse'],
42
46
  'flex-wrap': ['flex-wrap', 'flex-nowrap', 'flex-wrap-reverse'],
43
47
  'justify-content': ['justify-'],
@@ -45,6 +49,10 @@ const PROPERTY_PREFIX_MAP = {
45
49
  'align-content': ['content-'],
46
50
  'align-self': ['self-'],
47
51
  'text-align': ['text-left', 'text-center', 'text-right', 'text-justify', 'text-start', 'text-end'],
52
+ 'text-decoration': ['underline', 'line-through', 'no-underline'],
53
+ 'text-transform': ['uppercase', 'lowercase', 'capitalize', 'normal-case'],
54
+ 'letter-spacing': ['tracking-'],
55
+ 'line-height': ['leading-'],
48
56
  'overflow': ['overflow-'],
49
57
  'overflow-x': ['overflow-x-'],
50
58
  'overflow-y': ['overflow-y-'],
@@ -60,7 +68,15 @@ const PROPERTY_PREFIX_MAP = {
60
68
  'right': ['right-'],
61
69
  'bottom': ['bottom-'],
62
70
  'left': ['left-'],
63
- 'inset': ['inset-']
71
+ 'inset': ['inset-'],
72
+ 'aspect-ratio': ['aspect-'],
73
+ 'object-fit': ['object-contain', 'object-cover', 'object-fill', 'object-none', 'object-scale-down'],
74
+ 'object-position': ['object-'],
75
+ 'flex': ['flex-1', 'flex-auto', 'flex-initial', 'flex-none'],
76
+ 'flex-grow': ['grow-', 'grow'],
77
+ 'flex-shrink': ['shrink-', 'shrink'],
78
+ 'flex-basis': ['basis-'],
79
+ 'word-break': ['break-normal', 'break-all', 'break-words', 'break-keep']
64
80
  };
65
81
  const UTILITY_TO_PROPERTY_MAP = {
66
82
  'block': 'display',
@@ -72,6 +88,7 @@ const UTILITY_TO_PROPERTY_MAP = {
72
88
  'inline-grid': 'display',
73
89
  'hidden': 'display',
74
90
  'contents': 'display',
91
+ 'flow-root': 'display',
75
92
  'static': 'position',
76
93
  'fixed': 'position',
77
94
  'absolute': 'position',
@@ -84,6 +101,14 @@ const UTILITY_TO_PROPERTY_MAP = {
84
101
  'flex-wrap': 'flex-wrap',
85
102
  'flex-nowrap': 'flex-wrap',
86
103
  'flex-wrap-reverse': 'flex-wrap',
104
+ 'flex-1': 'flex',
105
+ 'flex-auto': 'flex',
106
+ 'flex-initial': 'flex',
107
+ 'flex-none': 'flex',
108
+ 'grow': 'flex-grow',
109
+ 'grow-0': 'flex-grow',
110
+ 'shrink': 'flex-shrink',
111
+ 'shrink-0': 'flex-shrink',
87
112
  'text-left': 'text-align',
88
113
  'text-center': 'text-align',
89
114
  'text-right': 'text-align',
@@ -107,7 +132,41 @@ const UTILITY_TO_PROPERTY_MAP = {
107
132
  'rounded-xl': 'border-radius',
108
133
  'rounded-2xl': 'border-radius',
109
134
  'rounded-3xl': 'border-radius',
110
- 'rounded-full': 'border-radius'
135
+ 'rounded-full': 'border-radius',
136
+ 'underline': 'text-decoration',
137
+ 'line-through': 'text-decoration',
138
+ 'no-underline': 'text-decoration',
139
+ 'uppercase': 'text-transform',
140
+ 'lowercase': 'text-transform',
141
+ 'capitalize': 'text-transform',
142
+ 'normal-case': 'text-transform',
143
+ 'border-solid': 'border-style',
144
+ 'border-dashed': 'border-style',
145
+ 'border-dotted': 'border-style',
146
+ 'border-double': 'border-style',
147
+ 'border-hidden': 'border-style',
148
+ 'border-none': 'border-style',
149
+ 'object-contain': 'object-fit',
150
+ 'object-cover': 'object-fit',
151
+ 'object-fill': 'object-fit',
152
+ 'object-none': 'object-fit',
153
+ 'object-scale-down': 'object-fit',
154
+ 'object-center': 'object-position',
155
+ 'object-top': 'object-position',
156
+ 'object-bottom': 'object-position',
157
+ 'object-left': 'object-position',
158
+ 'object-right': 'object-position',
159
+ 'object-left-top': 'object-position',
160
+ 'object-right-top': 'object-position',
161
+ 'object-left-bottom': 'object-position',
162
+ 'object-right-bottom': 'object-position',
163
+ 'break-normal': 'word-break',
164
+ 'break-all': 'word-break',
165
+ 'break-words': 'word-break',
166
+ 'break-keep': 'word-break',
167
+ 'aspect-square': 'aspect-ratio',
168
+ 'aspect-video': 'aspect-ratio',
169
+ 'aspect-auto': 'aspect-ratio'
111
170
  };
112
171
  const PREFIX_PROPERTY_MAP = {
113
172
  'text-': 'color',
@@ -154,13 +213,29 @@ const PREFIX_PROPERTY_MAP = {
154
213
  'right-': 'right',
155
214
  'bottom-': 'bottom',
156
215
  'left-': 'left',
157
- 'inset-': 'inset'
216
+ 'inset-': 'inset',
217
+ 'tracking-': 'letter-spacing',
218
+ 'leading-': 'line-height',
219
+ 'aspect-': 'aspect-ratio',
220
+ 'object-': 'object-position',
221
+ 'basis-': 'flex-basis',
222
+ 'grow-': 'flex-grow',
223
+ 'shrink-': 'flex-shrink'
158
224
  };
159
225
  const FONT_SIZE_UTILITIES = new Set([
160
226
  'text-xs', 'text-sm', 'text-base', 'text-lg', 'text-xl',
161
227
  'text-2xl', 'text-3xl', 'text-4xl', 'text-5xl', 'text-6xl',
162
228
  'text-7xl', 'text-8xl', 'text-9xl'
163
229
  ]);
230
+ const LINE_HEIGHT_UTILITIES = new Set([
231
+ 'leading-none', 'leading-tight', 'leading-snug', 'leading-normal',
232
+ 'leading-relaxed', 'leading-loose', 'leading-3', 'leading-4', 'leading-5',
233
+ 'leading-6', 'leading-7', 'leading-8', 'leading-9', 'leading-10'
234
+ ]);
235
+ const LETTER_SPACING_UTILITIES = new Set([
236
+ 'tracking-tighter', 'tracking-tight', 'tracking-normal',
237
+ 'tracking-wide', 'tracking-wider', 'tracking-widest'
238
+ ]);
164
239
  function getPropertyForUtility(utility) {
165
240
  const strippedUtility = stripVariants(utility);
166
241
  if (UTILITY_TO_PROPERTY_MAP[strippedUtility]) {
@@ -169,6 +244,12 @@ function getPropertyForUtility(utility) {
169
244
  if (FONT_SIZE_UTILITIES.has(strippedUtility)) {
170
245
  return 'font-size';
171
246
  }
247
+ if (LINE_HEIGHT_UTILITIES.has(strippedUtility)) {
248
+ return 'line-height';
249
+ }
250
+ if (LETTER_SPACING_UTILITIES.has(strippedUtility)) {
251
+ return 'letter-spacing';
252
+ }
172
253
  if (strippedUtility.startsWith('text-') && !FONT_SIZE_UTILITIES.has(strippedUtility)) {
173
254
  const value = strippedUtility.slice(5);
174
255
  if (/^\d/.test(value) || value.startsWith('[')) {
@@ -176,6 +257,12 @@ function getPropertyForUtility(utility) {
176
257
  }
177
258
  return 'color';
178
259
  }
260
+ if (strippedUtility.startsWith('leading-') && !LINE_HEIGHT_UTILITIES.has(strippedUtility)) {
261
+ return 'line-height';
262
+ }
263
+ if (strippedUtility.startsWith('tracking-') && !LETTER_SPACING_UTILITIES.has(strippedUtility)) {
264
+ return 'letter-spacing';
265
+ }
179
266
  const sortedPrefixes = Object.keys(PREFIX_PROPERTY_MAP).sort((a, b) => b.length - a.length);
180
267
  for (const prefix of sortedPrefixes) {
181
268
  if (strippedUtility.startsWith(prefix)) {
@@ -206,6 +293,14 @@ function isTextColorUtility(utility) {
206
293
  }
207
294
  return false;
208
295
  }
296
+ function isLineHeightUtility(utility) {
297
+ const stripped = stripVariants(utility);
298
+ return LINE_HEIGHT_UTILITIES.has(stripped) || stripped.startsWith('leading-');
299
+ }
300
+ function isLetterSpacingUtility(utility) {
301
+ const stripped = stripVariants(utility);
302
+ return LETTER_SPACING_UTILITIES.has(stripped) || stripped.startsWith('tracking-');
303
+ }
209
304
  function getPropertiesForUtilities(utilities) {
210
305
  const propertyMap = new Map();
211
306
  for (const utility of utilities) {
@@ -226,20 +321,33 @@ exports.PROPERTY_CONFLICT_GROUPS = {
226
321
  'padding': ['padding', 'padding-top', 'padding-right', 'padding-bottom', 'padding-left', 'padding-x', 'padding-y'],
227
322
  'flex-direction': ['flex-direction'],
228
323
  'flex-wrap': ['flex-wrap'],
324
+ 'flex': ['flex', 'flex-grow', 'flex-shrink', 'flex-basis'],
229
325
  'justify-content': ['justify-content'],
230
326
  'align-items': ['align-items'],
327
+ 'align-content': ['align-content'],
328
+ 'align-self': ['align-self'],
231
329
  'text-align': ['text-align'],
232
330
  'font-size': ['font-size'],
233
331
  'font-weight': ['font-weight'],
234
332
  'color': ['color'],
235
- 'background-color': ['background-color'],
333
+ 'background-color': ['background-color', 'background'],
236
334
  'border-radius': ['border-radius'],
237
335
  'border-width': ['border-width', 'border-top-width', 'border-right-width', 'border-bottom-width', 'border-left-width'],
336
+ 'border-color': ['border-color', 'border-top-color', 'border-right-color', 'border-bottom-color', 'border-left-color'],
337
+ 'border-style': ['border-style'],
238
338
  'overflow': ['overflow', 'overflow-x', 'overflow-y'],
239
339
  'z-index': ['z-index'],
240
340
  'opacity': ['opacity'],
241
341
  'gap': ['gap'],
242
- 'inset': ['inset', 'top', 'right', 'bottom', 'left']
342
+ 'inset': ['inset', 'top', 'right', 'bottom', 'left'],
343
+ 'text-decoration': ['text-decoration'],
344
+ 'text-transform': ['text-transform'],
345
+ 'letter-spacing': ['letter-spacing'],
346
+ 'line-height': ['line-height'],
347
+ 'aspect-ratio': ['aspect-ratio'],
348
+ 'object-fit': ['object-fit'],
349
+ 'object-position': ['object-position'],
350
+ 'word-break': ['word-break']
243
351
  };
244
352
  function getConflictGroup(property) {
245
353
  for (const [groupName, properties] of Object.entries(exports.PROPERTY_CONFLICT_GROUPS)) {
@@ -270,8 +378,28 @@ function propertiesConflict(prop1, prop2) {
270
378
  return true;
271
379
  }
272
380
  }
381
+ if (group1 === 'border-width') {
382
+ if (prop1 === 'border-width' || prop2 === 'border-width') {
383
+ return true;
384
+ }
385
+ }
386
+ if (group1 === 'border-color') {
387
+ if (prop1 === 'border-color' || prop2 === 'border-color') {
388
+ return true;
389
+ }
390
+ }
391
+ if (group1 === 'overflow') {
392
+ if (prop1 === 'overflow' || prop2 === 'overflow') {
393
+ return true;
394
+ }
395
+ }
396
+ if (group1 === 'flex') {
397
+ if (prop1 === 'flex' || prop2 === 'flex') {
398
+ return true;
399
+ }
400
+ }
273
401
  return prop1 === prop2;
274
402
  }
275
403
  return prop1 === prop2;
276
404
  }
277
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHlNYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvcHJvcGVydHlNYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBOEpBLHNEQTRCQztBQU9ELHNEQUtDO0FBRUQsZ0RBZ0JDO0FBRUQsOERBY0M7QUEyQkQsNENBT0M7QUFFRCxnREErQkM7QUEzU0QsTUFBTSxtQkFBbUIsR0FBNkI7SUFDcEQsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO0lBQ2xCLGtCQUFrQixFQUFFLENBQUMsS0FBSyxDQUFDO0lBQzNCLFdBQVcsRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUM7SUFDL0ssYUFBYSxFQUFFLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDO0lBQ3pKLFNBQVMsRUFBRSxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDO0lBQ3RKLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUM7SUFDakUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDO0lBQ2YsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDO0lBQ2hCLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztJQUN2QixXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUM7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QUFNLEVBQUUsQ0FBQztRQUMxQyxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNwQixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxnQ0FBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUvQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsSUFBSSxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNoRCxJQUFJLEtBQUssS0FBSyxNQUFNLElBQUksS0FBSyxLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUN6QyxPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDdkIsSUFBSSxLQUFLLEtBQUssT0FBTyxJQUFJLEtBQUssS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDM0MsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sS0FBSyxLQUFLLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRUQsT0FBTyxLQUFLLEtBQUssS0FBSyxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBQUk9QRVJUWV9QUkVGSVhfTUFQOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT4gPSB7XG4gICdjb2xvcic6IFsndGV4dC0nXSxcbiAgJ2JhY2tncm91bmQtY29sb3InOiBbJ2JnLSddLFxuICAnZm9udC1zaXplJzogWyd0ZXh0LXhzJywgJ3RleHQtc20nLCAndGV4dC1iYXNlJywgJ3RleHQtbGcnLCAndGV4dC14bCcsICd0ZXh0LTJ4bCcsICd0ZXh0LTN4bCcsICd0ZXh0LTR4bCcsICd0ZXh0LTV4bCcsICd0ZXh0LTZ4bCcsICd0ZXh0LTd4bCcsICd0ZXh0LTh4bCcsICd0ZXh0LTl4bCcsICd0ZXh0LSddLFxuICAnZm9udC13ZWlnaHQnOiBbJ2ZvbnQtdGhpbicsICdmb250LWV4dHJhbGlnaHQnLCAnZm9udC1saWdodCcsICdmb250LW5vcm1hbCcsICdmb250LW1lZGl1bScsICdmb250LXNlbWlib2xkJywgJ2ZvbnQtYm9sZCcsICdmb250LWV4dHJhYm9sZCcsICdmb250LWJsYWNrJ10sXG4gICdkaXNwbGF5JzogWydibG9jaycsICdpbmxpbmUtYmxvY2snLCAnaW5saW5lJywgJ2ZsZXgnLCAnaW5saW5lLWZsZXgnLCAnZ3JpZCcsICdpbmxpbmUtZ3JpZCcsICdoaWRkZW4nLCAnY29udGVudHMnLCAndGFibGUnLCAndGFibGUtY2VsbCcsICd0YWJsZS1yb3cnXSxcbiAgJ3Bvc2l0aW9uJzogWydzdGF0aWMnLCAnZml4ZWQnLCAnYWJzb2x1dGUnLCAncmVsYXRpdmUnLCAnc3RpY2t5J10sXG4gICd3aWR0aCc6IFsndy0nXSxcbiAgJ2hlaWdodCc6IFsnaC0nXSxcbiAgJ21pbi13aWR0aCc6IFsnbWluLXctJ10sXG4gICdtYXgtd2lkdGgnOiBbJ21heC13LSddLFxuICAnbWluLWhlaWdodCc6IFsnbWluLWgtJ10sXG4gICdtYXgtaGVpZ2h0JzogWydtYXgtaC0nXSxcbiAgJ21hcmdpbic6IFsnbS0nXSxcbiAgJ21hcmdpbi10b3AnOiBbJ210LSddLFxuICAnbWFyZ2luLXJpZ2h0JzogWydtci0nXSxcbiAgJ21hcmdpbi1ib3R0b20nOiBbJ21iLSddLFxuICAnbWFyZ2luLWxlZnQnOiBbJ21sLSddLFxuICAnbWFyZ2luLXgnOiBbJ214LSddLFxuICAnbWFyZ2luLXknOiBbJ215LSddLFxuICAncGFkZGluZyc6IFsncC0nXSxcbiAgJ3BhZGRpbmctdG9wJzogWydwdC0nXSxcbiAgJ3BhZGRpbmctcmlnaHQnOiBbJ3ByLSddLFxuICAncGFkZGluZy1ib3R0b20nOiBbJ3BiLSddLFxuICAncGFkZGluZy1sZWZ0JzogWydwbC0nXSxcbiAgJ3BhZGRpbmcteCc6IFsncHgtJ10sXG4gICdwYWRkaW5nLXknOiBbJ3B5LSddLFxuICAnZ2FwJzogWydnYXAtJ10sXG4gICdib3JkZXItcmFkaXVzJzogWydyb3VuZGVkLScsICdyb3VuZGVkJ10sXG4gICdib3JkZXItd2lkdGgnOiBbJ2JvcmRlci0nLCAnYm9yZGVyLXQtJywgJ2JvcmRlci1yLScsICdib3JkZXItYi0nLCAnYm9yZGVyLWwtJ10sXG4gICdib3JkZXItY29sb3InOiBbJ2JvcmRlci0nXSxcbiAgJ2ZsZXgtZGlyZWN0aW9uJzogWydmbGV4LXJvdycsICdmbGV4LWNvbCcsICdmbGV4LXJvdy1yZXZlcnNlJywgJ2ZsZXgtY29sLXJldmVyc2UnXSxcbiAgJ2ZsZXgtd3JhcCc6IFsnZmxleC13cmFwJywgJ2ZsZXgtbm93cmFwJywgJ2ZsZXgtd3JhcC1yZXZlcnNlJ10sXG4gICdqdXN0aWZ5LWNvbnRlbnQnOiBbJ2p1c3RpZnktJ10sXG4gICdhbGlnbi1pdGVtcyc6IFsnaXRlbXMtJ10sXG4gICdhbGlnbi1jb250ZW50JzogWydjb250ZW50LSddLFxuICAnYWxpZ24tc2VsZic6IFsnc2VsZi0nXSxcbiAgJ3RleHQtYWxpZ24nOiBbJ3RleHQtbGVmdCcsICd0ZXh0LWNlbnRlcicsICd0ZXh0LXJpZ2h0JywgJ3RleHQtanVzdGlmeScsICd0ZXh0LXN0YXJ0JywgJ3RleHQtZW5kJ10sXG4gICdvdmVyZmxvdyc6IFsnb3ZlcmZsb3ctJ10sXG4gICdvdmVyZmxvdy14JzogWydvdmVyZmxvdy14LSddLFxuICAnb3ZlcmZsb3cteSc6IFsnb3ZlcmZsb3cteS0nXSxcbiAgJ3otaW5kZXgnOiBbJ3otJ10sXG4gICdvcGFjaXR5JzogWydvcGFjaXR5LSddLFxuICAnY3Vyc29yJzogWydjdXJzb3ItJ10sXG4gICdwb2ludGVyLWV2ZW50cyc6IFsncG9pbnRlci1ldmVudHMtJ10sXG4gICd1c2VyLXNlbGVjdCc6IFsnc2VsZWN0LSddLFxuICAnYm94LXNoYWRvdyc6IFsnc2hhZG93LSddLFxuICAndHJhbnNpdGlvbic6IFsndHJhbnNpdGlvbi0nXSxcbiAgJ3RyYW5zZm9ybSc6IFsnc2NhbGUtJywgJ3JvdGF0ZS0nLCAndHJhbnNsYXRlLScsICdza2V3LSddLFxuICAndG9wJzogWyd0b3AtJ10sXG4gICdyaWdodCc6IFsncmlnaHQtJ10sXG4gICdib3R0b20nOiBbJ2JvdHRvbS0nXSxcbiAgJ2xlZnQnOiBbJ2xlZnQtJ10sXG4gICdpbnNldCc6IFsnaW5zZXQtJ11cbn07XG5cbmNvbnN0IFVUSUxJVFlfVE9fUFJPUEVSVFlfTUFQOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAnYmxvY2snOiAnZGlzcGxheScsXG4gICdpbmxpbmUtYmxvY2snOiAnZGlzcGxheScsXG4gICdpbmxpbmUnOiAnZGlzcGxheScsXG4gICdmbGV4JzogJ2Rpc3BsYXknLFxuICAnaW5saW5lLWZsZXgnOiAnZGlzcGxheScsXG4gICdncmlkJzogJ2Rpc3BsYXknLFxuICAnaW5saW5lLWdyaWQnOiAnZGlzcGxheScsXG4gICdoaWRkZW4nOiAnZGlzcGxheScsXG4gICdjb250ZW50cyc6ICdkaXNwbGF5JyxcbiAgJ3N0YXRpYyc6ICdwb3NpdGlvbicsXG4gICdmaXhlZCc6ICdwb3NpdGlvbicsXG4gICdhYnNvbHV0ZSc6ICdwb3NpdGlvbicsXG4gICdyZWxhdGl2ZSc6ICdwb3NpdGlvbicsXG4gICdzdGlja3knOiAncG9zaXRpb24nLFxuICAnZmxleC1yb3cnOiAnZmxleC1kaXJlY3Rpb24nLFxuICAnZmxleC1jb2wnOiAnZmxleC1kaXJlY3Rpb24nLFxuICAnZmxleC1yb3ctcmV2ZXJzZSc6ICdmbGV4LWRpcmVjdGlvbicsXG4gICdmbGV4LWNvbC1yZXZlcnNlJzogJ2ZsZXgtZGlyZWN0aW9uJyxcbiAgJ2ZsZXgtd3JhcCc6ICdmbGV4LXdyYXAnLFxuICAnZmxleC1ub3dyYXAnOiAnZmxleC13cmFwJyxcbiAgJ2ZsZXgtd3JhcC1yZXZlcnNlJzogJ2ZsZXgtd3JhcCcsXG4gICd0ZXh0LWxlZnQnOiAndGV4dC1hbGlnbicsXG4gICd0ZXh0LWNlbnRlcic6ICd0ZXh0LWFsaWduJyxcbiAgJ3RleHQtcmlnaHQnOiAndGV4dC1hbGlnbicsXG4gICd0ZXh0LWp1c3RpZnknOiAndGV4dC1hbGlnbicsXG4gICd0ZXh0LXN0YXJ0JzogJ3RleHQtYWxpZ24nLFxuICAndGV4dC1lbmQnOiAndGV4dC1hbGlnbicsXG4gICdmb250LXRoaW4nOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1leHRyYWxpZ2h0JzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtbGlnaHQnOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1ub3JtYWwnOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1tZWRpdW0nOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1zZW1pYm9sZCc6ICdmb250LXdlaWdodCcsXG4gICdmb250LWJvbGQnOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1leHRyYWJvbGQnOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1ibGFjayc6ICdmb250LXdlaWdodCcsXG4gICdyb3VuZGVkJzogJ2JvcmRlci1yYWRpdXMnLFxuICAncm91bmRlZC1ub25lJzogJ2JvcmRlci1yYWRpdXMnLFxuICAncm91bmRlZC1zbSc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ3JvdW5kZWQtbWQnOiAnYm9yZGVyLXJhZGl1cycsXG4gICdyb3VuZGVkLWxnJzogJ2JvcmRlci1yYWRpdXMnLFxuICAncm91bmRlZC14bCc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ3JvdW5kZWQtMnhsJzogJ2JvcmRlci1yYWRpdXMnLFxuICAncm91bmRlZC0zeGwnOiAnYm9yZGVyLXJhZGl1cycsXG4gICdyb3VuZGVkLWZ1bGwnOiAnYm9yZGVyLXJhZGl1cydcbn07XG5cbmNvbnN0IFBSRUZJWF9QUk9QRVJUWV9NQVA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICd0ZXh0LSc6ICdjb2xvcicsXG4gICdiZy0nOiAnYmFja2dyb3VuZC1jb2xvcicsXG4gICd3LSc6ICd3aWR0aCcsXG4gICdoLSc6ICdoZWlnaHQnLFxuICAnbWluLXctJzogJ21pbi13aWR0aCcsXG4gICdtYXgtdy0nOiAnbWF4LXdpZHRoJyxcbiAgJ21pbi1oLSc6ICdtaW4taGVpZ2h0JyxcbiAgJ21heC1oLSc6ICdtYXgtaGVpZ2h0JyxcbiAgJ20tJzogJ21hcmdpbicsXG4gICdtdC0nOiAnbWFyZ2luLXRvcCcsXG4gICdtci0nOiAnbWFyZ2luLXJpZ2h0JyxcbiAgJ21iLSc6ICdtYXJnaW4tYm90dG9tJyxcbiAgJ21sLSc6ICdtYXJnaW4tbGVmdCcsXG4gICdteC0nOiAnbWFyZ2luLXgnLFxuICAnbXktJzogJ21hcmdpbi15JyxcbiAgJ3AtJzogJ3BhZGRpbmcnLFxuICAncHQtJzogJ3BhZGRpbmctdG9wJyxcbiAgJ3ByLSc6ICdwYWRkaW5nLXJpZ2h0JyxcbiAgJ3BiLSc6ICdwYWRkaW5nLWJvdHRvbScsXG4gICdwbC0nOiAncGFkZGluZy1sZWZ0JyxcbiAgJ3B4LSc6ICdwYWRkaW5nLXgnLFxuICAncHktJzogJ3BhZGRpbmcteScsXG4gICdnYXAtJzogJ2dhcCcsXG4gICdyb3VuZGVkLSc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ2p1c3RpZnktJzogJ2p1c3RpZnktY29udGVudCcsXG4gICdpdGVtcy0nOiAnYWxpZ24taXRlbXMnLFxuICAnY29udGVudC0nOiAnYWxpZ24tY29udGVudCcsXG4gICdzZWxmLSc6ICdhbGlnbi1zZWxmJyxcbiAgJ292ZXJmbG93LSc6ICdvdmVyZmxvdycsXG4gICdvdmVyZmxvdy14LSc6ICdvdmVyZmxvdy14JyxcbiAgJ292ZXJmbG93LXktJzogJ292ZXJmbG93LXknLFxuICAnei0nOiAnei1pbmRleCcsXG4gICdvcGFjaXR5LSc6ICdvcGFjaXR5JyxcbiAgJ2N1cnNvci0nOiAnY3Vyc29yJyxcbiAgJ3NoYWRvdy0nOiAnYm94LXNoYWRvdycsXG4gICdib3JkZXItJzogJ2JvcmRlci13aWR0aCcsXG4gICdib3JkZXItdC0nOiAnYm9yZGVyLXdpZHRoJyxcbiAgJ2JvcmRlci1yLSc6ICdib3JkZXItd2lkdGgnLFxuICAnYm9yZGVyLWItJzogJ2JvcmRlci13aWR0aCcsXG4gICdib3JkZXItbC0nOiAnYm9yZGVyLXdpZHRoJyxcbiAgJ3RvcC0nOiAndG9wJyxcbiAgJ3JpZ2h0LSc6ICdyaWdodCcsXG4gICdib3R0b20tJzogJ2JvdHRvbScsXG4gICdsZWZ0LSc6ICdsZWZ0JyxcbiAgJ2luc2V0LSc6ICdpbnNldCdcbn07XG5cbmNvbnN0IEZPTlRfU0laRV9VVElMSVRJRVMgPSBuZXcgU2V0KFtcbiAgJ3RleHQteHMnLCAndGV4dC1zbScsICd0ZXh0LWJhc2UnLCAndGV4dC1sZycsICd0ZXh0LXhsJyxcbiAgJ3RleHQtMnhsJywgJ3RleHQtM3hsJywgJ3RleHQtNHhsJywgJ3RleHQtNXhsJywgJ3RleHQtNnhsJyxcbiAgJ3RleHQtN3hsJywgJ3RleHQtOHhsJywgJ3RleHQtOXhsJ1xuXSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm9wZXJ0eUZvclV0aWxpdHkodXRpbGl0eTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3Qgc3RyaXBwZWRVdGlsaXR5ID0gc3RyaXBWYXJpYW50cyh1dGlsaXR5KTtcbiAgXG4gIGlmIChVVElMSVRZX1RPX1BST1BFUlRZX01BUFtzdHJpcHBlZFV0aWxpdHldKSB7XG4gICAgcmV0dXJuIFVUSUxJVFlfVE9fUFJPUEVSVFlfTUFQW3N0cmlwcGVkVXRpbGl0eV07XG4gIH1cbiAgXG4gIGlmIChGT05UX1NJWkVfVVRJTElUSUVTLmhhcyhzdHJpcHBlZFV0aWxpdHkpKSB7XG4gICAgcmV0dXJuICdmb250LXNpemUnO1xuICB9XG4gIFxuICBpZiAoc3RyaXBwZWRVdGlsaXR5LnN0YXJ0c1dpdGgoJ3RleHQtJykgJiYgIUZPTlRfU0laRV9VVElMSVRJRVMuaGFzKHN0cmlwcGVkVXRpbGl0eSkpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHN0cmlwcGVkVXRpbGl0eS5zbGljZSg1KTtcbiAgICBpZiAoL15cXGQvLnRlc3QodmFsdWUpIHx8IHZhbHVlLnN0YXJ0c1dpdGgoJ1snKSkge1xuICAgICAgcmV0dXJuICdmb250LXNpemUnO1xuICAgIH1cbiAgICByZXR1cm4gJ2NvbG9yJztcbiAgfVxuICBcbiAgY29uc3Qgc29ydGVkUHJlZml4ZXMgPSBPYmplY3Qua2V5cyhQUkVGSVhfUFJPUEVSVFlfTUFQKS5zb3J0KChhLCBiKSA9PiBiLmxlbmd0aCAtIGEubGVuZ3RoKTtcbiAgXG4gIGZvciAoY29uc3QgcHJlZml4IG9mIHNvcnRlZFByZWZpeGVzKSB7XG4gICAgaWYgKHN0cmlwcGVkVXRpbGl0eS5zdGFydHNXaXRoKHByZWZpeCkpIHtcbiAgICAgIHJldHVybiBQUkVGSVhfUFJPUEVSVFlfTUFQW3ByZWZpeF07XG4gICAgfVxuICB9XG4gIFxuICByZXR1cm4gJ3Vua25vd24nO1xufVxuXG5mdW5jdGlvbiBzdHJpcFZhcmlhbnRzKHV0aWxpdHk6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IHBhcnRzID0gdXRpbGl0eS5zcGxpdCgnOicpO1xuICByZXR1cm4gcGFydHNbcGFydHMubGVuZ3RoIC0gMV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1RleHRGb250U2l6ZVV0aWxpdHkodXRpbGl0eTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGNvbnN0IHN0cmlwcGVkID0gc3RyaXBWYXJpYW50cyh1dGlsaXR5KTtcbiAgcmV0dXJuIEZPTlRfU0laRV9VVElMSVRJRVMuaGFzKHN0cmlwcGVkKSB8fCAoXG4gICAgc3RyaXBwZWQuc3RhcnRzV2l0aCgndGV4dC0nKSAmJiAvXlxcZC8udGVzdChzdHJpcHBlZC5zbGljZSg1KSlcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVGV4dENvbG9yVXRpbGl0eSh1dGlsaXR5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgY29uc3Qgc3RyaXBwZWQgPSBzdHJpcFZhcmlhbnRzKHV0aWxpdHkpO1xuICBcbiAgaWYgKEZPTlRfU0laRV9VVElMSVRJRVMuaGFzKHN0cmlwcGVkKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBcbiAgaWYgKHN0cmlwcGVkLnN0YXJ0c1dpdGgoJ3RleHQtJykpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHN0cmlwcGVkLnNsaWNlKDUpO1xuICAgIGlmICgvXlxcZC8udGVzdCh2YWx1ZSkgfHwgdmFsdWUuc3RhcnRzV2l0aCgnWycpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG4gIFxuICByZXR1cm4gZmFsc2U7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRQcm9wZXJ0aWVzRm9yVXRpbGl0aWVzKHV0aWxpdGllczogc3RyaW5nW10pOiBNYXA8c3RyaW5nLCBzdHJpbmdbXT4ge1xuICBjb25zdCBwcm9wZXJ0eU1hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmdbXT4oKTtcbiAgXG4gIGZvciAoY29uc3QgdXRpbGl0eSBvZiB1dGlsaXRpZXMpIHtcbiAgICBjb25zdCBwcm9wZXJ0eSA9IGdldFByb3BlcnR5Rm9yVXRpbGl0eSh1dGlsaXR5KTtcbiAgICBcbiAgICBpZiAoIXByb3BlcnR5TWFwLmhhcyhwcm9wZXJ0eSkpIHtcbiAgICAgIHByb3BlcnR5TWFwLnNldChwcm9wZXJ0eSwgW10pO1xuICAgIH1cbiAgICBcbiAgICBwcm9wZXJ0eU1hcC5nZXQocHJvcGVydHkpIS5wdXNoKHV0aWxpdHkpO1xuICB9XG4gIFxuICByZXR1cm4gcHJvcGVydHlNYXA7XG59XG5cbmV4cG9ydCBjb25zdCBQUk9QRVJUWV9DT05GTElDVF9HUk9VUFM6IFJlY29yZDxzdHJpbmcsIHN0cmluZ1tdPiA9IHtcbiAgJ2Rpc3BsYXknOiBbJ2Rpc3BsYXknXSxcbiAgJ3Bvc2l0aW9uJzogWydwb3NpdGlvbiddLFxuICAnd2lkdGgnOiBbJ3dpZHRoJywgJ21pbi13aWR0aCcsICdtYXgtd2lkdGgnXSxcbiAgJ2hlaWdodCc6IFsnaGVpZ2h0JywgJ21pbi1oZWlnaHQnLCAnbWF4LWhlaWdodCddLFxuICAnbWFyZ2luJzogWydtYXJnaW4nLCAnbWFyZ2luLXRvcCcsICdtYXJnaW4tcmlnaHQnLCAnbWFyZ2luLWJvdHRvbScsICdtYXJnaW4tbGVmdCcsICdtYXJnaW4teCcsICdtYXJnaW4teSddLFxuICAncGFkZGluZyc6IFsncGFkZGluZycsICdwYWRkaW5nLXRvcCcsICdwYWRkaW5nLXJpZ2h0JywgJ3BhZGRpbmctYm90dG9tJywgJ3BhZGRpbmctbGVmdCcsICdwYWRkaW5nLXgnLCAncGFkZGluZy15J10sXG4gICdmbGV4LWRpcmVjdGlvbic6IFsnZmxleC1kaXJlY3Rpb24nXSxcbiAgJ2ZsZXgtd3JhcCc6IFsnZmxleC13cmFwJ10sXG4gICdqdXN0aWZ5LWNvbnRlbnQnOiBbJ2p1c3RpZnktY29udGVudCddLFxuICAnYWxpZ24taXRlbXMnOiBbJ2FsaWduLWl0ZW1zJ10sXG4gICd0ZXh0LWFsaWduJzogWyd0ZXh0LWFsaWduJ10sXG4gICdmb250LXNpemUnOiBbJ2ZvbnQtc2l6ZSddLFxuICAnZm9udC13ZWlnaHQnOiBbJ2ZvbnQtd2VpZ2h0J10sXG4gICdjb2xvcic6IFsnY29sb3InXSxcbiAgJ2JhY2tncm91bmQtY29sb3InOiBbJ2JhY2tncm91bmQtY29sb3InXSxcbiAgJ2JvcmRlci1yYWRpdXMnOiBbJ2JvcmRlci1yYWRpdXMnXSxcbiAgJ2JvcmRlci13aWR0aCc6IFsnYm9yZGVyLXdpZHRoJywgJ2JvcmRlci10b3Atd2lkdGgnLCAnYm9yZGVyLXJpZ2h0LXdpZHRoJywgJ2JvcmRlci1ib3R0b20td2lkdGgnLCAnYm9yZGVyLWxlZnQtd2lkdGgnXSxcbiAgJ292ZXJmbG93JzogWydvdmVyZmxvdycsICdvdmVyZmxvdy14JywgJ292ZXJmbG93LXknXSxcbiAgJ3otaW5kZXgnOiBbJ3otaW5kZXgnXSxcbiAgJ29wYWNpdHknOiBbJ29wYWNpdHknXSxcbiAgJ2dhcCc6IFsnZ2FwJ10sXG4gICdpbnNldCc6IFsnaW5zZXQnLCAndG9wJywgJ3JpZ2h0JywgJ2JvdHRvbScsICdsZWZ0J11cbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb25mbGljdEdyb3VwKHByb3BlcnR5OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgZm9yIChjb25zdCBbZ3JvdXBOYW1lLCBwcm9wZXJ0aWVzXSBvZiBPYmplY3QuZW50cmllcyhQUk9QRVJUWV9DT05GTElDVF9HUk9VUFMpKSB7XG4gICAgaWYgKHByb3BlcnRpZXMuaW5jbHVkZXMocHJvcGVydHkpKSB7XG4gICAgICByZXR1cm4gZ3JvdXBOYW1lO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3BlcnRpZXNDb25mbGljdChwcm9wMTogc3RyaW5nLCBwcm9wMjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGNvbnN0IGdyb3VwMSA9IGdldENvbmZsaWN0R3JvdXAocHJvcDEpO1xuICBjb25zdCBncm91cDIgPSBnZXRDb25mbGljdEdyb3VwKHByb3AyKTtcbiAgXG4gIGlmIChncm91cDEgJiYgZ3JvdXAyICYmIGdyb3VwMSA9PT0gZ3JvdXAyKSB7XG4gICAgaWYgKHByb3AxID09PSBwcm9wMikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIFxuICAgIGNvbnN0IGdyb3VwID0gUFJPUEVSVFlfQ09ORkxJQ1RfR1JPVVBTW2dyb3VwMV07XG4gICAgXG4gICAgaWYgKGdyb3VwLmxlbmd0aCA9PT0gMSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIFxuICAgIGlmIChncm91cDEgPT09ICdtYXJnaW4nIHx8IGdyb3VwMSA9PT0gJ3BhZGRpbmcnKSB7XG4gICAgICBpZiAocHJvcDEgPT09IGdyb3VwMSB8fCBwcm9wMiA9PT0gZ3JvdXAxKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBpZiAoZ3JvdXAxID09PSAnaW5zZXQnKSB7XG4gICAgICBpZiAocHJvcDEgPT09ICdpbnNldCcgfHwgcHJvcDIgPT09ICdpbnNldCcpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBwcm9wMSA9PT0gcHJvcDI7XG4gIH1cbiAgXG4gIHJldHVybiBwcm9wMSA9PT0gcHJvcDI7XG59Il19
405
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHlNYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvcHJvcGVydHlNYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBeU9BLHNEQTRDQztBQU9ELHNEQUtDO0FBRUQsZ0RBZ0JDO0FBRUQsa0RBR0M7QUFFRCx3REFHQztBQUVELDhEQWNDO0FBd0NELDRDQU9DO0FBRUQsZ0RBdURDO0FBcmJELE1BQU0sbUJBQW1CLEdBQTZCO0lBQ3BELE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUNsQixrQkFBa0IsRUFBRSxDQUFDLEtBQUssQ0FBQztJQUMzQixZQUFZLEVBQUUsQ0FBQyxLQUFLLENBQUM7SUFDckIsV0FBVyxFQUFFLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQztJQUMvSyxhQUFhLEVBQUUsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLENBQUM7SUFDekosU0FBUyxFQUFFLENBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsV0FBVyxDQUFDO0lBQ25LLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUM7SUFDakUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDO0lBQ2YsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFD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bnRlbnQiOlsiY29uc3QgUFJPUEVSVFlfUFJFRklYX01BUDogUmVjb3JkPHN0cmluZywgc3RyaW5nW10+ID0ge1xuICAnY29sb3InOiBbJ3RleHQtJ10sXG4gICdiYWNrZ3JvdW5kLWNvbG9yJzogWydiZy0nXSxcbiAgJ2JhY2tncm91bmQnOiBbJ2JnLSddLFxuICAnZm9udC1zaXplJzogWyd0ZXh0LXhzJywgJ3RleHQtc20nLCAndGV4dC1iYXNlJywgJ3RleHQtbGcnLCAndGV4dC14bCcsICd0ZXh0LTJ4bCcsICd0ZXh0LTN4bCcsICd0ZXh0LTR4bCcsICd0ZXh0LTV4bCcsICd0ZXh0LTZ4bCcsICd0ZXh0LTd4bCcsICd0ZXh0LTh4bCcsICd0ZXh0LTl4bCcsICd0ZXh0LSddLFxuICAnZm9udC13ZWlnaHQnOiBbJ2ZvbnQtdGhpbicsICdmb250LWV4dHJhbGlnaHQnLCAnZm9udC1saWdodCcsICdmb250LW5vcm1hbCcsICdmb250LW1lZGl1bScsICdmb250LXNlbWlib2xkJywgJ2ZvbnQtYm9sZCcsICdmb250LWV4dHJhYm9sZCcsICdmb250LWJsYWNrJ10sXG4gICdkaXNwbGF5JzogWydibG9jaycsICdpbmxpbmUtYmxvY2snLCAnaW5saW5lJywgJ2ZsZXgnLCAnaW5saW5lLWZsZXgnLCAnZ3JpZCcsICdpbmxpbmUtZ3JpZCcsICdoaWRkZW4nLCAnY29udGVudHMnLCAndGFibGUnLCAndGFibGUtY2VsbCcsICd0YWJsZS1yb3cnLCAnZmxvdy1yb290J10sXG4gICdwb3NpdGlvbic6IFsnc3RhdGljJywgJ2ZpeGVkJywgJ2Fic29sdXRlJywgJ3JlbGF0aXZlJywgJ3N0aWNreSddLFxuICAnd2lkdGgnOiBbJ3ctJ10sXG4gICdoZWlnaHQnOiBbJ2gtJ10sXG4gICdtaW4td2lkdGgnOiBbJ21pbi13LSddLFxuICAnbWF4LXdpZHRoJzogWydtYXgtdy0nXSxcbiAgJ21pbi1oZWlnaHQnOiBbJ21pbi1oLSddLFxuICAnbWF4LWhlaWdodCc6IFsnbWF4LWgtJ10sXG4gICdtYXJnaW4nOiBbJ20tJ10sXG4gICdtYXJnaW4tdG9wJzogWydtdC0nXSxcbiAgJ21hcmdpbi1yaWdodCc6IFsnbXItJ10sXG4gICdtYXJnaW4tYm90dG9tJzogWydtYi0nXSxcbiAgJ21hcmdpbi1sZWZ0JzogWydtbC0nXSxcbiAgJ21hcmdpbi14JzogWydteC0nXSxcbiAgJ21hcmdpbi15JzogWydteS0nXSxcbiAgJ3BhZGRpbmcnOiBbJ3AtJ10sXG4gICdwYWRkaW5nLXRvcCc6IFsncHQtJ10sXG4gICdwYWRkaW5nLXJpZ2h0JzogWydwci0nXSxcbiAgJ3BhZGRpbmctYm90dG9tJzogWydwYi0nXSxcbiAgJ3BhZGRpbmctbGVmdCc6IFsncGwtJ10sXG4gICdwYWRkaW5nLXgnOiBbJ3B4LSddLFxuICAncGFkZGluZy15JzogWydweS0nXSxcbiAgJ2dhcCc6IFsnZ2FwLSddLFxuICAnYm9yZGVyLXJhZGl1cyc6IFsncm91bmRlZC0nLCAncm91bmRlZCddLFxuICAnYm9yZGVyLXdpZHRoJzogWydib3JkZXItJywgJ2JvcmRlci10LScsICdib3JkZXItci0nLCAnYm9yZGVyLWItJywgJ2JvcmRlci1sLSddLFxuICAnYm9yZGVyLWNvbG9yJzogWydib3JkZXItJ10sXG4gICdib3JkZXItc3R5bGUnOiBbJ2JvcmRlci1zb2xpZCcsICdib3JkZXItZGFzaGVkJywgJ2JvcmRlci1kb3R0ZWQnLCAnYm9yZGVyLWRvdWJsZScsICdib3JkZXItaGlkZGVuJywgJ2JvcmRlci1ub25lJ10sXG4gICdmbGV4LWRpcmVjdGlvbic6IFsnZmxleC1yb3cnLCAnZmxleC1jb2wnLCAnZmxleC1yb3ctcmV2ZXJzZScsICdmbGV4LWNvbC1yZXZlcnNlJ10sXG4gICdmbGV4LXdyYXAnOiBbJ2ZsZXgtd3JhcCcsICdmbGV4LW5vd3JhcCcsICdmbGV4LXdyYXAtcmV2ZXJzZSddLFxuICAnanVzdGlmeS1jb250ZW50JzogWydqdXN0aWZ5LSddLFxuICAnYWxpZ24taXRlbXMnOiBbJ2l0ZW1zLSddLFxuICAnYWxpZ24tY29udGVudCc6IFsnY29udGVudC0nXSxcbiAgJ2FsaWduLXNlbGYnOiBbJ3NlbGYtJ10sXG4gICd0ZXh0LWFsaWduJzogWyd0ZXh0LWxlZnQnLCAndGV4dC1jZW50ZXInLCAndGV4dC1yaWdodCcsICd0ZXh0LWp1c3RpZnknLCAndGV4dC1zdGFydCcsICd0ZXh0LWVuZCddLFxuICAndGV4dC1kZWNvcmF0aW9uJzogWyd1bmRlcmxpbmUnLCAnbGluZS10aHJvdWdoJywgJ25vLXVuZGVybGluZSddLFxuICAndGV4dC10cmFuc2Zvcm0nOiBbJ3VwcGVyY2FzZScsICdsb3dlcmNhc2UnLCAnY2FwaXRhbGl6ZScsICdub3JtYWwtY2FzZSddLFxuICAnbGV0dGVyLXNwYWNpbmcnOiBbJ3RyYWNraW5nLSddLFxuICAnbGluZS1oZWlnaHQnOiBbJ2xlYWRpbmctJ10sXG4gICdvdmVyZmxvdyc6IFsnb3ZlcmZsb3ctJ10sXG4gICdvdmVyZmxvdy14JzogWydvdmVyZmxvdy14LSddLFxuICAnb3ZlcmZsb3cteSc6IFsnb3ZlcmZsb3cteS0nXSxcbiAgJ3otaW5kZXgnOiBbJ3otJ10sXG4gICdvcGFjaXR5JzogWydvcGFjaXR5LSddLFxuICAnY3Vyc29yJzogWydjdXJzb3ItJ10sXG4gICdwb2ludGVyLWV2ZW50cyc6IFsncG9pbnRlci1ldmVudHMtJ10sXG4gICd1c2VyLXNlbGVjdCc6IFsnc2VsZWN0LSddLFxuICAnYm94LXNoYWRvdyc6IFsnc2hhZG93LSddLFxuICAndHJhbnNpdGlvbic6IFsndHJhbnNpdGlvbi0nXSxcbiAgJ3RyYW5zZm9ybSc6IFsnc2NhbGUtJywgJ3JvdGF0ZS0nLCAndHJhbnNsYXRlLScsICdza2V3LSddLFxuICAndG9wJzogWyd0b3AtJ10sXG4gICdyaWdodCc6IFsncmlnaHQtJ10sXG4gICdib3R0b20nOiBbJ2JvdHRvbS0nXSxcbiAgJ2xlZnQnOiBbJ2xlZnQtJ10sXG4gICdpbnNldCc6IFsnaW5zZXQtJ10sXG4gICdhc3BlY3QtcmF0aW8nOiBbJ2FzcGVjdC0nXSxcbiAgJ29iamVjdC1maXQnOiBbJ29iamVjdC1jb250YWluJywgJ29iamVjdC1jb3ZlcicsICdvYmplY3QtZmlsbCcsICdvYmplY3Qtbm9uZScsICdvYmplY3Qtc2NhbGUtZG93biddLFxuICAnb2JqZWN0LXBvc2l0aW9uJzogWydvYmplY3QtJ10sXG4gICdmbGV4JzogWydmbGV4LTEnLCAnZmxleC1hdXRvJywgJ2ZsZXgtaW5pdGlhbCcsICdmbGV4LW5vbmUnXSxcbiAgJ2ZsZXgtZ3Jvdyc6IFsnZ3Jvdy0nLCAnZ3JvdyddLFxuICAnZmxleC1zaHJpbmsnOiBbJ3Nocmluay0nLCAnc2hyaW5rJ10sXG4gICdmbGV4LWJhc2lzJzogWydiYXNpcy0nXSxcbiAgJ3dvcmQtYnJlYWsnOiBbJ2JyZWFrLW5vcm1hbCcsICdicmVhay1hbGwnLCAnYnJlYWstd29yZHMnLCAnYnJlYWsta2VlcCddXG59O1xuXG5jb25zdCBVVElMSVRZX1RPX1BST1BFUlRZX01BUDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgJ2Jsb2NrJzogJ2Rpc3BsYXknLFxuICAnaW5saW5lLWJsb2NrJzogJ2Rpc3BsYXknLFxuICAnaW5saW5lJzogJ2Rpc3BsYXknLFxuICAnZmxleCc6ICdkaXNwbGF5JyxcbiAgJ2lubGluZS1mbGV4JzogJ2Rpc3BsYXknLFxuICAnZ3JpZCc6ICdkaXNwbGF5JyxcbiAgJ2lubGluZS1ncmlkJzogJ2Rpc3BsYXknLFxuICAnaGlkZGVuJzogJ2Rpc3BsYXknLFxuICAnY29udGVudHMnOiAnZGlzcGxheScsXG4gICdmbG93LXJvb3QnOiAnZGlzcGxheScsXG4gICdzdGF0aWMnOiAncG9zaXRpb24nLFxuICAnZml4ZWQnOiAncG9zaXRpb24nLFxuICAnYWJzb2x1dGUnOiAncG9zaXRpb24nLFxuICAncmVsYXRpdmUnOiAncG9zaXRpb24nLFxuICAnc3RpY2t5JzogJ3Bvc2l0aW9uJyxcbiAgJ2ZsZXgtcm93JzogJ2ZsZXgtZGlyZWN0aW9uJyxcbiAgJ2ZsZXgtY29sJzogJ2ZsZXgtZGlyZWN0aW9uJyxcbiAgJ2ZsZXgtcm93LXJldmVyc2UnOiAnZmxleC1kaXJlY3Rpb24nLFxuICAnZmxleC1jb2wtcmV2ZXJzZSc6ICdmbGV4LWRpcmVjdGlvbicsXG4gICdmbGV4LXdyYXAnOiAnZmxleC13cmFwJyxcbiAgJ2ZsZXgtbm93cmFwJzogJ2ZsZXgtd3JhcCcsXG4gICdmbGV4LXdyYXAtcmV2ZXJzZSc6ICdmbGV4LXdyYXAnLFxuICAnZmxleC0xJzogJ2ZsZXgnLFxuICAnZmxleC1hdXRvJzogJ2ZsZXgnLFxuICAnZmxleC1pbml0aWFsJzogJ2ZsZXgnLFxuICAnZmxleC1ub25lJzogJ2ZsZXgnLFxuICAnZ3Jvdyc6ICdmbGV4LWdyb3cnLFxuICAnZ3Jvdy0wJzogJ2ZsZXgtZ3JvdycsXG4gICdzaHJpbmsnOiAnZmxleC1zaHJpbmsnLFxuICAnc2hyaW5rLTAnOiAnZmxleC1zaHJpbmsnLFxuICAndGV4dC1sZWZ0JzogJ3RleHQtYWxpZ24nLFxuICAndGV4dC1jZW50ZXInOiAndGV4dC1hbGlnbicsXG4gICd0ZXh0LXJpZ2h0JzogJ3RleHQtYWxpZ24nLFxuICAndGV4dC1qdXN0aWZ5JzogJ3RleHQtYWxpZ24nLFxuICAndGV4dC1zdGFydCc6ICd0ZXh0LWFsaWduJyxcbiAgJ3RleHQtZW5kJzogJ3RleHQtYWxpZ24nLFxuICAnZm9udC10aGluJzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtZXh0cmFsaWdodCc6ICdmb250LXdlaWdodCcsXG4gICdmb250LWxpZ2h0JzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtbm9ybWFsJzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtbWVkaXVtJzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtc2VtaWJvbGQnOiAnZm9udC13ZWlnaHQnLFxuICAnZm9udC1ib2xkJzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtZXh0cmFib2xkJzogJ2ZvbnQtd2VpZ2h0JyxcbiAgJ2ZvbnQtYmxhY2snOiAnZm9udC13ZWlnaHQnLFxuICAncm91bmRlZCc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ3JvdW5kZWQtbm9uZSc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ3JvdW5kZWQtc20nOiAnYm9yZGVyLXJhZGl1cycsXG4gICdyb3VuZGVkLW1kJzogJ2JvcmRlci1yYWRpdXMnLFxuICAncm91bmRlZC1sZyc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ3JvdW5kZWQteGwnOiAnYm9yZGVyLXJhZGl1cycsXG4gICdyb3VuZGVkLTJ4bCc6ICdib3JkZXItcmFkaXVzJyxcbiAgJ3JvdW5kZWQtM3hsJzogJ2JvcmRlci1yYWRpdXMnLFxuICAncm91bmRlZC1mdWxsJzogJ2JvcmRlci1yYWRpdXMnLFxuICAndW5kZXJsaW5lJzogJ3RleHQtZGVjb3JhdGlvbicsXG4gICdsaW5lLXRocm91Z2gnOiAndGV4dC1kZWNvcmF0aW9uJyxcbiAgJ25vLXVuZGVybGluZSc6ICd0ZXh0LWRlY29yYXRpb24nLFxuICAndXBwZXJjYXNlJzogJ3RleHQtdHJhbnNmb3JtJyxcbiAgJ2xvd2VyY2FzZSc6ICd0ZXh0LXRyYW5zZm9ybScsXG4gICdjYXBpdGFsaXplJzogJ3RleHQtdHJhbnNmb3JtJyxcbiAgJ25vcm1hbC1jYXNlJzogJ3RleHQtdHJhbnNmb3JtJyxcbiAgJ2JvcmRlci1zb2xpZCc6ICdib3JkZXItc3R5bGUnLFxuICAnYm9yZGVyLWRhc2hlZCc6ICdib3JkZXItc3R5bGUnLFxuICAnYm9yZGVyLWRvdHRlZCc6ICdib3JkZXItc3R5bGUnLFxuICAnYm9yZGVyLWRvdWJsZSc6ICdib3JkZXItc3R5bGUnLFxuICAnYm9yZGVyLWhpZGRlbic6ICdib3JkZXItc3R5bGUnLFxuICAnYm9yZGVyLW5vbmUnOiAnYm9yZGVyLXN0eWxlJyxcbiAgJ29iamVjdC1jb250YWluJzogJ29iamVjdC1maXQnLFxuICAnb2JqZWN0LWNvdmVyJzogJ29iamVjdC1maXQnLFxuICAnb2JqZWN0LWZpbGwnOiAnb2JqZWN0LWZpdCcsXG4gICdvYmplY3Qtbm9uZSc6ICdvYmplY3QtZml0JyxcbiAgJ29iamVjdC1zY2FsZS1kb3duJzogJ29iamVjdC1maXQnLFxuICAnb2JqZWN0LWNlbnRlcic6ICdvYmplY3QtcG9zaXRpb24nLFxuICAnb2JqZWN0LXRvcCc6ICdvYmplY3QtcG9zaXRpb24nLFxuICAnb2JqZWN0LWJvdHRvbSc6ICdvYmplY3QtcG9zaXRpb24nLFxuICAnb2JqZWN0LWxlZnQnOiAnb2JqZWN0LXBvc2l0aW9uJyxcbiAgJ29iamVjdC1yaWdodCc6ICdvYmplY3QtcG9zaXRpb24nLFxuICAnb2JqZWN0LWxlZnQtdG9wJzogJ29iamVjdC1wb3NpdGlvbicsXG4gICdvYmplY3QtcmlnaHQtdG9wJzogJ29iamVjdC1wb3NpdGlvbicsXG4gICdvYmplY3QtbGVmdC1ib3R0b20nOiAnb2JqZWN0LXBvc2l0aW9uJyxcbiAgJ29iamVjdC1yaWdodC1ib3R0b20nOiAnb2JqZWN0LXBvc2l0aW9uJyxcbiAgJ2JyZWFrLW5vcm1hbCc6ICd3b3JkLWJyZWFrJyxcbiAgJ2JyZWFrLWFsbCc6ICd3b3JkLWJyZWFrJyxcbiAgJ2JyZWFrLXdvcmRzJzogJ3dvcmQtYnJlYWsnLFxuICAnYnJlYWsta2VlcCc6ICd3b3JkLWJyZWFrJyxcbiAgJ2FzcGVjdC1zcXVhcmUnOiAnYXNwZWN0LXJhdGlvJyxcbiAgJ2FzcGVjdC12aWRlbyc6ICdhc3BlY3QtcmF0aW8nLFxuICAnYXNwZWN0LWF1dG8nOiAnYXNwZWN0LXJhdGlvJ1xufTtcblxuY29uc3QgUFJFRklYX1BST1BFUlRZX01BUDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgJ3RleHQtJzogJ2NvbG9yJyxcbiAgJ2JnLSc6ICdiYWNrZ3JvdW5kLWNvbG9yJyxcbiAgJ3ctJzogJ3dpZHRoJyxcbiAgJ2gtJzogJ2hlaWdodCcsXG4gICdtaW4tdy0nOiAnbWluLXdpZHRoJyxcbiAgJ21heC13LSc6ICdtYXgtd2lkdGgnLFxuICAnbWluLWgtJzogJ21pbi1oZWlnaHQnLFxuICAnbWF4LWgtJzogJ21heC1oZWlnaHQnLFxuICAnbS0nOiAnbWFyZ2luJyxcbiAgJ210LSc6ICdtYXJnaW4tdG9wJyxcbiAgJ21yLSc6ICdtYXJnaW4tcmlnaHQnLFxuICAnbWItJzogJ21hcmdpbi1ib3R0b20nLFxuICAnbWwtJzogJ21hcmdpbi1sZWZ0JyxcbiAgJ214LSc6ICdtYXJnaW4teCcsXG4gICdteS0nOiAnbWFyZ2luLXknLFxuICAncC0nOiAncGFkZGluZycsXG4gICdwdC0nOiAncGFkZGluZy10b3AnLFxuICAncHItJzogJ3BhZGRpbmctcmlnaHQnLFxuICAncGItJzogJ3BhZGRpbmctYm90dG9tJyxcbiAgJ3BsLSc6ICdwYWRkaW5nLWxlZnQnLFxuICAncHgtJzogJ3BhZGRpbmcteCcsXG4gICdweS0nOiAncGFkZGluZy15JyxcbiAgJ2dhcC0nOiAnZ2FwJyxcbiAgJ3JvdW5kZWQtJzogJ2JvcmRlci1yYWRpdXMnLFxuICAnanVzdGlmeS0nOiAnanVzdGlmeS1jb250ZW50JyxcbiAgJ2l0ZW1zLSc6ICdhbGlnbi1pdGVtcycsXG4gICdjb250ZW50LSc6ICdhbGlnbi1jb250ZW50JyxcbiAgJ3NlbGYtJzogJ2FsaWduLXNlbGYnLFxuICAnb3ZlcmZsb3ctJzogJ292ZXJmbG93JyxcbiAgJ292ZXJmbG93LXgtJzogJ292ZXJmbG93LXgnLFxuICAnb3ZlcmZsb3cteS0nOiAnb3ZlcmZsb3cteScsXG4gICd6LSc6ICd6LWluZGV4JyxcbiAgJ29wYWNpdHktJzogJ29wYWNpdHknLFxuICAnY3Vyc29yLSc6ICdjdXJzb3InLFxuICAnc2hhZG93LSc6ICdib3gtc2hhZG93JyxcbiAgJ2JvcmRlci0nOiAnYm9yZGVyLXdpZHRoJyxcbiAgJ2JvcmRlci10LSc6ICdib3JkZXItd2lkdGgnLFxuICAnYm9yZGVyLXItJzogJ2JvcmRlci13aWR0aCcsXG4gICdib3JkZXItYi0nOiAnYm9yZGVyLXdpZHRoJyxcbiAgJ2JvcmRlci1sLSc6ICdib3JkZXItd2lkdGgnLFxuICAndG9wLSc6ICd0b3AnLFxuICAncmlnaHQtJzogJ3JpZ2h0JyxcbiAgJ2JvdHRvbS0nOiAnYm90dG9tJyxcbiAgJ2xlZnQtJzogJ2xlZnQnLFxuICAnaW5zZXQtJzogJ2luc2V0JyxcbiAgJ3RyYWNraW5nLSc6ICdsZXR0ZXItc3BhY2luZycsXG4gICdsZWFkaW5nLSc6ICdsaW5lLWhlaWdodCcsXG4gICdhc3BlY3QtJzogJ2FzcGVjdC1yYXRpbycsXG4gICdvYmplY3QtJzogJ29iamVjdC1wb3NpdGlvbicsXG4gICdiYXNpcy0nOiAnZmxleC1iYXNpcycsXG4gICdncm93LSc6ICdmbGV4LWdyb3cnLFxuICAnc2hyaW5rLSc6ICdmbGV4LXNocmluaydcbn07XG5cbmNvbnN0IEZPTlRfU0laRV9VVElMSVRJRVMgPSBuZXcgU2V0KFtcbiAgJ3RleHQteHMnLCAndGV4dC1zbScsICd0ZXh0LWJhc2UnLCAndGV4dC1sZycsICd0ZXh0LXhsJyxcbiAgJ3RleHQtMnhsJywgJ3RleHQtM3hsJywgJ3RleHQtNHhsJywgJ3RleHQtNXhsJywgJ3RleHQtNnhsJyxcbiAgJ3RleHQtN3hsJywgJ3RleHQtOHhsJywgJ3RleHQtOXhsJ1xuXSk7XG5cbmNvbnN0IExJTkVfSEVJR0hUX1VUSUxJVElFUyA9IG5ldyBTZXQoW1xuICAnbGVhZGluZy1ub25lJywgJ2xlYWRpbmctdGlnaHQnLCAnbGVhZGluZy1zbnVnJywgJ2xlYWRpbmctbm9ybWFsJyxcbiAgJ2xlYWRpbmctcmVsYXhlZCcsICdsZWFkaW5nLWxvb3NlJywgJ2xlYWRpbmctMycsICdsZWFkaW5nLTQnLCAnbGVhZGluZy01JyxcbiAgJ2xlYWRpbmctNicsICdsZWFkaW5nLTcnLCAnbGVhZGluZy04JywgJ2xlYWRpbmctOScsICdsZWFkaW5nLTEwJ1xuXSk7XG5cbmNvbnN0IExFVFRFUl9TUEFDSU5HX1VUSUxJVElFUyA9IG5ldyBTZXQoW1xuICAndHJhY2tpbmctdGlnaHRlcicsICd0cmFja2luZy10aWdodCcsICd0cmFja2luZy1ub3JtYWwnLFxuICAndHJhY2tpbmctd2lkZScsICd0cmFja2luZy13aWRlcicsICd0cmFja2luZy13aWRlc3QnXG5dKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFByb3BlcnR5Rm9yVXRpbGl0eSh1dGlsaXR5OiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBzdHJpcHBlZFV0aWxpdHkgPSBzdHJpcFZhcmlhbnRzKHV0aWxpdHkpO1xuICBcbiAgaWYgKFVUSUxJVFlfVE9fUFJPUEVSVFlfTUFQW3N0cmlwcGVkVXRpbGl0eV0pIHtcbiAgICByZXR1cm4gVVRJTElUWV9UT19QUk9QRVJUWV9NQVBbc3RyaXBwZWRVdGlsaXR5XTtcbiAgfVxuICBcbiAgaWYgKEZPTlRfU0laRV9VVElMSVRJRVMuaGFzKHN0cmlwcGVkVXRpbGl0eSkpIHtcbiAgICByZXR1cm4gJ2ZvbnQtc2l6ZSc7XG4gIH1cblxuICBpZiAoTElORV9IRUlHSFRfVVRJTElUSUVTLmhhcyhzdHJpcHBlZFV0aWxpdHkpKSB7XG4gICAgcmV0dXJuICdsaW5lLWhlaWdodCc7XG4gIH1cblxuICBpZiAoTEVUVEVSX1NQQUNJTkdfVVRJTElUSUVTLmhhcyhzdHJpcHBlZFV0aWxpdHkpKSB7XG4gICAgcmV0dXJuICdsZXR0ZXItc3BhY2luZyc7XG4gIH1cbiAgXG4gIGlmIChzdHJpcHBlZFV0aWxpdHkuc3RhcnRzV2l0aCgndGV4dC0nKSAmJiAhRk9OVF9TSVpFX1VUSUxJVElFUy5oYXMoc3RyaXBwZWRVdGlsaXR5KSkge1xuICAgIGNvbnN0IHZhbHVlID0gc3RyaXBwZWRVdGlsaXR5LnNsaWNlKDUpO1xuICAgIGlmICgvXlxcZC8udGVzdCh2YWx1ZSkgfHwgdmFsdWUuc3RhcnRzV2l0aCgnWycpKSB7XG4gICAgICByZXR1cm4gJ2ZvbnQtc2l6ZSc7XG4gICAgfVxuICAgIHJldHVybiAnY29sb3InO1xuICB9XG5cbiAgaWYgKHN0cmlwcGVkVXRpbGl0eS5zdGFydHNXaXRoKCdsZWFkaW5nLScpICYmICFMSU5FX0hFSUdIVF9VVElMSVRJRVMuaGFzKHN0cmlwcGVkVXRpbGl0eSkpIHtcbiAgICByZXR1cm4gJ2xpbmUtaGVpZ2h0JztcbiAgfVxuXG4gIGlmIChzdHJpcHBlZFV0aWxpdHkuc3RhcnRzV2l0aCgndHJhY2tpbmctJykgJiYgIUxFVFRFUl9TUEFDSU5HX1VUSUxJVElFUy5oYXMoc3RyaXBwZWRVdGlsaXR5KSkge1xuICAgIHJldHVybiAnbGV0dGVyLXNwYWNpbmcnO1xuICB9XG4gIFxuICBjb25zdCBzb3J0ZWRQcmVmaXhlcyA9IE9iamVjdC5rZXlzKFBSRUZJWF9QUk9QRVJUWV9NQVApLnNvcnQoKGEsIGIpID0+IGIubGVuZ3RoIC0gYS5sZW5ndGgpO1xuICBcbiAgZm9yIChjb25zdCBwcmVmaXggb2Ygc29ydGVkUHJlZml4ZXMpIHtcbiAgICBpZiAoc3RyaXBwZWRVdGlsaXR5LnN0YXJ0c1dpdGgocHJlZml4KSkge1xuICAgICAgcmV0dXJuIFBSRUZJWF9QUk9QRVJUWV9NQVBbcHJlZml4XTtcbiAgICB9XG4gIH1cbiAgXG4gIHJldHVybiAndW5rbm93bic7XG59XG5cbmZ1bmN0aW9uIHN0cmlwVmFyaWFudHModXRpbGl0eTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgcGFydHMgPSB1dGlsaXR5LnNwbGl0KCc6Jyk7XG4gIHJldHVybiBwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVGV4dEZvbnRTaXplVXRpbGl0eSh1dGlsaXR5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgY29uc3Qgc3RyaXBwZWQgPSBzdHJpcFZhcmlhbnRzKHV0aWxpdHkpO1xuICByZXR1cm4gRk9OVF9TSVpFX1VUSUxJVElFUy5oYXMoc3RyaXBwZWQpIHx8IChcbiAgICBzdHJpcHBlZC5zdGFydHNXaXRoKCd0ZXh0LScpICYmIC9eXFxkLy50ZXN0KHN0cmlwcGVkLnNsaWNlKDUpKVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUZXh0Q29sb3JVdGlsaXR5KHV0aWxpdHk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBjb25zdCBzdHJpcHBlZCA9IHN0cmlwVmFyaWFudHModXRpbGl0eSk7XG4gIFxuICBpZiAoRk9OVF9TSVpFX1VUSUxJVElFUy5oYXMoc3RyaXBwZWQpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIFxuICBpZiAoc3RyaXBwZWQuc3RhcnRzV2l0aCgndGV4dC0nKSkge1xuICAgIGNvbnN0IHZhbHVlID0gc3RyaXBwZWQuc2xpY2UoNSk7XG4gICAgaWYgKC9eXFxkLy50ZXN0KHZhbHVlKSB8fCB2YWx1ZS5zdGFydHNXaXRoKCdbJykpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbiAgXG4gIHJldHVybiBmYWxzZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTGluZUhlaWdodFV0aWxpdHkodXRpbGl0eTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGNvbnN0IHN0cmlwcGVkID0gc3RyaXBWYXJpYW50cyh1dGlsaXR5KTtcbiAgcmV0dXJuIExJTkVfSEVJR0hUX1VUSUxJVElFUy5oYXMoc3RyaXBwZWQpIHx8IHN0cmlwcGVkLnN0YXJ0c1dpdGgoJ2xlYWRpbmctJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0xldHRlclNwYWNpbmdVdGlsaXR5KHV0aWxpdHk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBjb25zdCBzdHJpcHBlZCA9IHN0cmlwVmFyaWFudHModXRpbGl0eSk7XG4gIHJldHVybiBMRVRURVJfU1BBQ0lOR19VVElMSVRJRVMuaGFzKHN0cmlwcGVkKSB8fCBzdHJpcHBlZC5zdGFydHNXaXRoKCd0cmFja2luZy0nKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFByb3BlcnRpZXNGb3JVdGlsaXRpZXModXRpbGl0aWVzOiBzdHJpbmdbXSk6IE1hcDxzdHJpbmcsIHN0cmluZ1tdPiB7XG4gIGNvbnN0IHByb3BlcnR5TWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZ1tdPigpO1xuICBcbiAgZm9yIChjb25zdCB1dGlsaXR5IG9mIHV0aWxpdGllcykge1xuICAgIGNvbnN0IHByb3BlcnR5ID0gZ2V0UHJvcGVydHlGb3JVdGlsaXR5KHV0aWxpdHkpO1xuICAgIFxuICAgIGlmICghcHJvcGVydHlNYXAuaGFzKHByb3BlcnR5KSkge1xuICAgICAgcHJvcGVydHlNYXAuc2V0KHByb3BlcnR5LCBbXSk7XG4gICAgfVxuICAgIFxuICAgIHByb3BlcnR5TWFwLmdldChwcm9wZXJ0eSkhLnB1c2godXRpbGl0eSk7XG4gIH1cbiAgXG4gIHJldHVybiBwcm9wZXJ0eU1hcDtcbn1cblxuZXhwb3J0IGNvbnN0IFBST1BFUlRZX0NPTkZMSUNUX0dST1VQUzogUmVjb3JkPHN0cmluZywgc3RyaW5nW10+ID0ge1xuICAnZGlzcGxheSc6IFsnZGlzcGxheSddLFxuICAncG9zaXRpb24nOiBbJ3Bvc2l0aW9uJ10sXG4gICd3aWR0aCc6IFsnd2lkdGgnLCAnbWluLXdpZHRoJywgJ21heC13aWR0aCddLFxuICAnaGVpZ2h0JzogWydoZWlnaHQnLCAnbWluLWhlaWdodCcsICdtYXgtaGVpZ2h0J10sXG4gICdtYXJnaW4nOiBbJ21hcmdpbicsICdtYXJnaW4tdG9wJywgJ21hcmdpbi1yaWdodCcsICdtYXJnaW4tYm90dG9tJywgJ21hcmdpbi1sZWZ0JywgJ21hcmdpbi14JywgJ21hcmdpbi15J10sXG4gICdwYWRkaW5nJzogWydwYWRkaW5nJywgJ3BhZGRpbmctdG9wJywgJ3BhZGRpbmctcmlnaHQnLCAncGFkZGluZy1ib3R0b20nLCAncGFkZGluZy1sZWZ0JywgJ3BhZGRpbmcteCcsICdwYWRkaW5nLXknXSxcbiAgJ2ZsZXgtZGlyZWN0aW9uJzogWydmbGV4LWRpcmVjdGlvbiddLFxuICAnZmxleC13cmFwJzogWydmbGV4LXdyYXAnXSxcbiAgJ2ZsZXgnOiBbJ2ZsZXgnLCAnZmxleC1ncm93JywgJ2ZsZXgtc2hyaW5rJywgJ2ZsZXgtYmFzaXMnXSxcbiAgJ2p1c3RpZnktY29udGVudCc6IFsnanVzdGlmeS1jb250ZW50J10sXG4gICdhbGlnbi1pdGVtcyc6IFsnYWxpZ24taXRlbXMnXSxcbiAgJ2FsaWduLWNvbnRlbnQnOiBbJ2FsaWduLWNvbnRlbnQnXSxcbiAgJ2FsaWduLXNlbGYnOiBbJ2FsaWduLXNlbGYnXSxcbiAgJ3RleHQtYWxpZ24nOiBbJ3RleHQtYWxpZ24nXSxcbiAgJ2ZvbnQtc2l6ZSc6IFsnZm9udC1zaXplJ10sXG4gICdmb250LXdlaWdodCc6IFsnZm9udC13ZWlnaHQnXSxcbiAgJ2NvbG9yJzogWydjb2xvciddLFxuICAnYmFja2dyb3VuZC1jb2xvcic6IFsnYmFja2dyb3VuZC1jb2xvcicsICdiYWNrZ3JvdW5kJ10sXG4gICdib3JkZXItcmFkaXVzJzogWydib3JkZXItcmFkaXVzJ10sXG4gICdib3JkZXItd2lkdGgnOiBbJ2JvcmRlci13aWR0aCcsICdib3JkZXItdG9wLXdpZHRoJywgJ2JvcmRlci1yaWdodC13aWR0aCcsICdib3JkZXItYm90dG9tLXdpZHRoJywgJ2JvcmRlci1sZWZ0LXdpZHRoJ10sXG4gICdib3JkZXItY29sb3InOiBbJ2JvcmRlci1jb2xvcicsICdib3JkZXItdG9wLWNvbG9yJywgJ2JvcmRlci1yaWdodC1jb2xvcicsICdib3JkZXItYm90dG9tLWNvbG9yJywgJ2JvcmRlci1sZWZ0LWNvbG9yJ10sXG4gICdib3JkZXItc3R5bGUnOiBbJ2JvcmRlci1zdHlsZSddLFxuICAnb3ZlcmZsb3cnOiBbJ292ZXJmbG93JywgJ292ZXJmbG93LXgnLCAnb3ZlcmZsb3cteSddLFxuICAnei1pbmRleCc6IFsnei1pbmRleCddLFxuICAnb3BhY2l0eSc6IFsnb3BhY2l0eSddLFxuICAnZ2FwJzogWydnYXAnXSxcbiAgJ2luc2V0JzogWydpbnNldCcsICd0b3AnLCAncmlnaHQnLCAnYm90dG9tJywgJ2xlZnQnXSxcbiAgJ3RleHQtZGVjb3JhdGlvbic6IFsndGV4dC1kZWNvcmF0aW9uJ10sXG4gICd0ZXh0LXRyYW5zZm9ybSc6IFsndGV4dC10cmFuc2Zvcm0nXSxcbiAgJ2xldHRlci1zcGFjaW5nJzogWydsZXR0ZXItc3BhY2luZyddLFxuICAnbGluZS1oZWlnaHQnOiBbJ2xpbmUtaGVpZ2h0J10sXG4gICdhc3BlY3QtcmF0aW8nOiBbJ2FzcGVjdC1yYXRpbyddLFxuICAnb2JqZWN0LWZpdCc6IFsnb2JqZWN0LWZpdCddLFxuICAnb2JqZWN0LXBvc2l0aW9uJzogWydvYmplY3QtcG9zaXRpb24nXSxcbiAgJ3dvcmQtYnJlYWsnOiBbJ3dvcmQtYnJlYWsnXVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbmZsaWN0R3JvdXAocHJvcGVydHk6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICBmb3IgKGNvbnN0IFtncm91cE5hbWUsIHByb3BlcnRpZXNdIG9mIE9iamVjdC5lbnRyaWVzKFBST1BFUlRZX0NPTkZMSUNUX0dST1VQUykpIHtcbiAgICBpZiAocHJvcGVydGllcy5pbmNsdWRlcyhwcm9wZXJ0eSkpIHtcbiAgICAgIHJldHVybiBncm91cE5hbWU7XG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvcGVydGllc0NvbmZsaWN0KHByb3AxOiBzdHJpbmcsIHByb3AyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgY29uc3QgZ3JvdXAxID0gZ2V0Q29uZmxpY3RHcm91cChwcm9wMSk7XG4gIGNvbnN0IGdyb3VwMiA9IGdldENvbmZsaWN0R3JvdXAocHJvcDIpO1xuICBcbiAgaWYgKGdyb3VwMSAmJiBncm91cDIgJiYgZ3JvdXAxID09PSBncm91cDIpIHtcbiAgICBpZiAocHJvcDEgPT09IHByb3AyKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgXG4gICAgY29uc3QgZ3JvdXAgPSBQUk9QRVJUWV9DT05GTElDVF9HUk9VUFNbZ3JvdXAxXTtcbiAgICBcbiAgICBpZiAoZ3JvdXAubGVuZ3RoID09PSAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgXG4gICAgaWYgKGdyb3VwMSA9PT0gJ21hcmdpbicgfHwgZ3JvdXAxID09PSAncGFkZGluZycpIHtcbiAgICAgIGlmIChwcm9wMSA9PT0gZ3JvdXAxIHx8IHByb3AyID09PSBncm91cDEpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIGlmIChncm91cDEgPT09ICdpbnNldCcpIHtcbiAgICAgIGlmIChwcm9wMSA9PT0gJ2luc2V0JyB8fCBwcm9wMiA9PT0gJ2luc2V0Jykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZ3JvdXAxID09PSAnYm9yZGVyLXdpZHRoJykge1xuICAgICAgaWYgKHByb3AxID09PSAnYm9yZGVyLXdpZHRoJyB8fCBwcm9wMiA9PT0gJ2JvcmRlci13aWR0aCcpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGdyb3VwMSA9PT0gJ2JvcmRlci1jb2xvcicpIHtcbiAgICAgIGlmIChwcm9wMSA9PT0gJ2JvcmRlci1jb2xvcicgfHwgcHJvcDIgPT09ICdib3JkZXItY29sb3InKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChncm91cDEgPT09ICdvdmVyZmxvdycpIHtcbiAgICAgIGlmIChwcm9wMSA9PT0gJ292ZXJmbG93JyB8fCBwcm9wMiA9PT0gJ292ZXJmbG93Jykge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoZ3JvdXAxID09PSAnZmxleCcpIHtcbiAgICAgIGlmIChwcm9wMSA9PT0gJ2ZsZXgnIHx8IHByb3AyID09PSAnZmxleCcpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBwcm9wMSA9PT0gcHJvcDI7XG4gIH1cbiAgXG4gIHJldHVybiBwcm9wMSA9PT0gcHJvcDI7XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "css-to-tailwind-react",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Convert traditional CSS (inline, internal, and external) into Tailwind CSS utility classes for React-based frameworks",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",