valtech-components 4.0.632 → 4.0.634

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.
@@ -257,7 +257,7 @@ export const CHESSIMALS_ADVENTURE_ACTS = [
257
257
  id: 'a4-n4',
258
258
  actId: 'act4',
259
259
  type: 'boss',
260
- profileId: 'magnus',
260
+ profileId: 'mandrill',
261
261
  difficulty: 'master',
262
262
  boardSize: 8,
263
263
  position: { x: 50, y: 12 },
@@ -265,7 +265,7 @@ export const CHESSIMALS_ADVENTURE_ACTS = [
265
265
  titleKey: 'chessimalsAdventureA4N4Title',
266
266
  descriptionKey: 'chessimalsAdventureA4N4Desc',
267
267
  quoteKey: 'chessimalsAdventureA4N4Quote',
268
- specialRule: 'nightmare-magnus',
268
+ specialRule: 'nightmare-mandrill',
269
269
  },
270
270
  ],
271
271
  },
@@ -295,4 +295,4 @@ export function adventureNodeIsAvailable(nodeId, completedNodes) {
295
295
  return true;
296
296
  return act.nodes.some(n => n.connectsTo.includes(nodeId) && n.id in completedNodes);
297
297
  }
298
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlc3NpbWFscy1hZHZlbnR1cmUtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvbWluaS1nYW1lcy9jaGVzc2ltYWxzLWFkdmVudHVyZS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUE2QjtJQUNqRTtRQUNFLEVBQUUsRUFBRSxNQUFNO1FBQ1YsUUFBUSxFQUFFLDhCQUE4QjtRQUN4QyxjQUFjLEVBQUUsNkJBQTZCO1FBQzdDLE9BQU8sRUFBRSw2QkFBNkI7UUFDdEMsS0FBSyxFQUFFLElBQUk7UUFDWCxLQUFLLEVBQUU7WUFDTDtnQkFDRSxFQUFFLEVBQUUsT0FBTztnQkFDWCxLQUFLLEVBQUUsTUFBTTtnQkFDYixJQUFJLEVBQUUsUUFBUTtnQkFDZCxTQUFTLEVBQUUsTUFBTTtnQkFDakIsVUFBVSxFQUFFLE1BQU07Z0JBQ2xCLFNBQVMsRUFBRSxDQUFDO2dCQUNaLFFBQVEsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRTtnQkFDMUIsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNyQixRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxjQUFjLEVBQUUsNkJBQTZCO2dCQUM3QyxRQUFRLEVBQUUsOEJBQThCO2FBQ3pDO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLE9BQU87Z0JBQ1gsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsU0FBUyxFQUFFLE1BQU07Z0JBQ2pCLFVBQVUsRUFBRSxNQUFNO2dCQUNsQixTQUFTLEVBQUUsQ0FBQztnQkFDWixRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUU7Z0JBQzFCLFVBQVUsRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUM7Z0JB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LEtBQUssTUFBTSxDQUFDLENBQUM7SUFDbEQsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUN4QixNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNwRSxJQUFJLE9BQU87UUFBRSxPQUFPLElBQUksQ0FBQztJQUN6QixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFjLENBQUMsQ0FBQztBQUN0RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hlc3NpbWFsc0FkdmVudHVyZUFjdCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUzogQ2hlc3NpbWFsc0FkdmVudHVyZUFjdFtdID0gW1xuICB7XG4gICAgaWQ6ICdhY3QxJyxcbiAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QxVGl0bGUnLFxuICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDFEZXNjJyxcbiAgICBsb3JlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDFMb3JlJyxcbiAgICBlbW9qaTogJ/CfjL4nLFxuICAgIG5vZGVzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTEtbjEnLFxuICAgICAgICBhY3RJZDogJ2FjdDEnLFxuICAgICAgICB0eXBlOiAnYmF0dGxlJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnYnVsbCcsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdlYXN5JyxcbiAgICAgICAgYm9hcmRTaXplOiA2LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiAyMCwgeTogNzUgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMS1uMiddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMU4xVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMU4xRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUExTjFRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2ExLW4yJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QxJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2hhcmUnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnZWFzeScsXG4gICAgICAgIGJvYXJkU2l6ZTogNixcbiAgICAgICAgcG9zaXRpb246IHsgeDogNTAsIHk6IDU1IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTEtbjMnLCAnYTEtbjQnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOMlRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOMkRlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMU4yUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMS1uMycsXG4gICAgICAgIGFjdElkOiAnYWN0MScsXG4gICAgICAgIHR5cGU6ICdyZXN0JyxcbiAgICAgICAgcG9zaXRpb246IHsgeDogMzAsIHk6IDMwIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTEtbjUnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOM1RpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOM0Rlc2MnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMS1uNCcsXG4gICAgICAgIGFjdElkOiAnYWN0MScsXG4gICAgICAgIHR5cGU6ICdteXN0ZXJ5JyxcbiAgICAgICAgcG9zaXRpb246IHsgeDogNzAsIHk6IDM1IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTEtbjUnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFONFRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFONERlc2MnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMS1uNScsXG4gICAgICAgIGFjdElkOiAnYWN0MScsXG4gICAgICAgIHR5cGU6ICdib3NzJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnZXhwbG9yZXInLFxuICAgICAgICBkaWZmaWN1bHR5OiAnbm9ybWFsJyxcbiAgICAgICAgYm9hcmRTaXplOiA2LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA1MCwgeTogMTAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogW10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUExTjVUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUExTjVEZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFONVF1b3RlJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAge1xuICAgIGlkOiAnYWN0MicsXG4gICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQWN0MlRpdGxlJyxcbiAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QyRGVzYycsXG4gICAgbG9yZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QyTG9yZScsXG4gICAgZW1vamk6ICfwn4y/JyxcbiAgICBub2RlczogW1xuICAgICAge1xuICAgICAgICBpZDogJ2EyLW4xJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QyJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2h1bnRlcicsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdub3JtYWwnLFxuICAgICAgICBib2FyZFNpemU6IDYsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDI1LCB5OiA3NSB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EyLW4yJ10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjFUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjFEZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJOMVF1b3RlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTItbjInLFxuICAgICAgICBhY3RJZDogJ2FjdDInLFxuICAgICAgICB0eXBlOiAnbXlzdGVyeScsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDU1LCB5OiA2MCB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EyLW4zJywgJ2EyLW40J10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjJUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjJEZXNjJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTItbjMnLFxuICAgICAgICBhY3RJZDogJ2FjdDInLFxuICAgICAgICB0eXBlOiAnYmF0dGxlJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnanVtcGVyJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ25vcm1hbCcsXG4gICAgICAgIGJvYXJkU2l6ZTogNixcbiAgICAgICAgcG9zaXRpb246IHsgeDogMjUsIHk6IDM1IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTItbjUnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJOM1RpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJOM0Rlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMk4zUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMi1uNCcsXG4gICAgICAgIGFjdElkOiAnYWN0MicsXG4gICAgICAgIHR5cGU6ICdiYXR0bGUnLFxuICAgICAgICBwcm9maWxlSWQ6ICdndWFyZGlhbicsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdub3JtYWwnLFxuICAgICAgICBib2FyZFNpemU6IDYsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDc1LCB5OiAzNSB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EyLW41J10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjRUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjREZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJONFF1b3RlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTItbjUnLFxuICAgICAgICBhY3RJZDogJ2FjdDInLFxuICAgICAgICB0eXBlOiAnYm9zcycsXG4gICAgICAgIHByb2ZpbGVJZDogJ2NoZWV0YWgnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnaGFyZCcsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogNTAsIHk6IDEwIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFtdLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMk41VGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMk41RGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjVRdW90ZScsXG4gICAgICAgIHNwZWNpYWxSdWxlOiAndGltZXItcHJlc3N1cmUnLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICB7XG4gICAgaWQ6ICdhY3QzJyxcbiAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QzVGl0bGUnLFxuICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDNEZXNjJyxcbiAgICBsb3JlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDNMb3JlJyxcbiAgICBlbW9qaTogJ+KdhO+4jycsXG4gICAgbm9kZXM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMy1uMScsXG4gICAgICAgIGFjdElkOiAnYWN0MycsXG4gICAgICAgIHR5cGU6ICdiYXR0bGUnLFxuICAgICAgICBwcm9maWxlSWQ6ICdzZW50aW5lbCcsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdoYXJkJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiAyMCwgeTogNzUgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMy1uMicsICdhMy1uMyddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04xVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04xRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjFRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2EzLW4yJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QzJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ3R1cnRsZScsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdoYXJkJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiAyMCwgeTogNDAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMy1uNCddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04yVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04yRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjJRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2EzLW4zJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QzJyxcbiAgICAgICAgdHlwZTogJ3Jlc3QnLFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA2NSwgeTogNTAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMy1uNCddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04zVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04zRGVzYycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2EzLW40JyxcbiAgICAgICAgYWN0SWQ6ICdhY3QzJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2FtYnVzaGVyJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ2hhcmQnLFxuICAgICAgICBib2FyZFNpemU6IDgsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDUwLCB5OiAyNSB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EzLW41J10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjRUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjREZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTNONFF1b3RlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTMtbjUnLFxuICAgICAgICBhY3RJZDogJ2FjdDMnLFxuICAgICAgICB0eXBlOiAnYm9zcycsXG4gICAgICAgIHByb2ZpbGVJZDogJ29yYWNsZScsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdoYXJkJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA1MCwgeTogOCB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTNONVRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTNONURlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM041UXVvdGUnLFxuICAgICAgICBzcGVjaWFsUnVsZTogJ25vLXBvd2VycycsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHtcbiAgICBpZDogJ2FjdDQnLFxuICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDRUaXRsZScsXG4gICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQWN0NERlc2MnLFxuICAgIGxvcmVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQWN0NExvcmUnLFxuICAgIGVtb2ppOiAn4pqhJyxcbiAgICBub2RlczogW1xuICAgICAge1xuICAgICAgICBpZDogJ2E0LW4xJyxcbiAgICAgICAgYWN0SWQ6ICdhY3Q0JyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ3N0b3JtJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ21hc3RlcicsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogMjUsIHk6IDc4IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTQtbjInXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROMVRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROMURlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4xUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhNC1uMicsXG4gICAgICAgIGFjdElkOiAnYWN0NCcsXG4gICAgICAgIHR5cGU6ICdiYXR0bGUnLFxuICAgICAgICBwcm9maWxlSWQ6ICdtYXRyaWFyY2gnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnbWFzdGVyJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA3MCwgeTogNjAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhNC1uMyddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4yVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4yRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUE0TjJRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2E0LW4zJyxcbiAgICAgICAgYWN0SWQ6ICdhY3Q0JyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2FuYWNvbmRhJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ21hc3RlcicsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogMzUsIHk6IDQwIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTQtbjQnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROM1RpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROM0Rlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4zUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhNC1uNCcsXG4gICAgICAgIGFjdElkOiAnYWN0NCcsXG4gICAgICAgIHR5cGU6ICdib3NzJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnbWFnbnVzJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ21hc3RlcicsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogNTAsIHk6IDEyIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFtdLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE40VGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE40RGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUE0TjRRdW90ZScsXG4gICAgICAgIHNwZWNpYWxSdWxlOiAnbmlnaHRtYXJlLW1hZ251cycsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG5dO1xuXG5leHBvcnQgZnVuY3Rpb24gYWR2ZW50dXJlQWN0SXNVbmxvY2tlZChcbiAgYWN0SWQ6IHN0cmluZyxcbiAgY29tcGxldGVkTm9kZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4pOiBib29sZWFuIHtcbiAgaWYgKGFjdElkID09PSAnYWN0MScpIHJldHVybiB0cnVlO1xuICBjb25zdCBhY3RzID0gQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUztcbiAgY29uc3QgYWN0SWR4ID0gYWN0cy5maW5kSW5kZXgoYSA9PiBhLmlkID09PSBhY3RJZCk7XG4gIGlmIChhY3RJZHggPD0gMCkgcmV0dXJuIGFjdElkeCA9PT0gMDtcbiAgY29uc3QgcHJldkFjdCA9IGFjdHNbYWN0SWR4IC0gMV07XG4gIGNvbnN0IGJvc3NOb2RlID0gcHJldkFjdC5ub2Rlcy5maW5kKG4gPT4gbi50eXBlID09PSAnYm9zcycpO1xuICByZXR1cm4gYm9zc05vZGUgPyBib3NzTm9kZS5pZCBpbiBjb21wbGV0ZWROb2RlcyA6IGZhbHNlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWR2ZW50dXJlTm9kZUlzQXZhaWxhYmxlKFxuICBub2RlSWQ6IHN0cmluZyxcbiAgY29tcGxldGVkTm9kZXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4pOiBib29sZWFuIHtcbiAgY29uc3QgYWN0ID0gQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUy5maW5kKGEgPT4gYS5ub2Rlcy5zb21lKG4gPT4gbi5pZCA9PT0gbm9kZUlkKSk7XG4gIGlmICghYWN0KSByZXR1cm4gZmFsc2U7XG4gIGlmICghYWR2ZW50dXJlQWN0SXNVbmxvY2tlZChhY3QuaWQsIGNvbXBsZXRlZE5vZGVzKSkgcmV0dXJuIGZhbHNlO1xuICBjb25zdCBub2RlID0gYWN0Lm5vZGVzLmZpbmQobiA9PiBuLmlkID09PSBub2RlSWQpO1xuICBpZiAoIW5vZGUpIHJldHVybiBmYWxzZTtcbiAgY29uc3QgaXNGaXJzdCA9ICFhY3Qubm9kZXMuc29tZShuID0+IG4uY29ubmVjdHNUby5pbmNsdWRlcyhub2RlSWQpKTtcbiAgaWYgKGlzRmlyc3QpIHJldHVybiB0cnVlO1xuICByZXR1cm4gYWN0Lm5vZGVzLnNvbWUobiA9PiBuLmNvbm5lY3RzVG8uaW5jbHVkZXMobm9kZUlkKSAmJiBuLmlkIGluIGNvbXBsZXRlZE5vZGVzKTtcbn1cbiJdfQ==
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlc3NpbWFscy1hZHZlbnR1cmUtZGF0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9vcmdhbmlzbXMvbWluaS1nYW1lcy9jaGVzc2ltYWxzLWFkdmVudHVyZS1kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUE2QjtJQUNqRTtRQUNFLEVBQUUsRUFBRSxNQUFNO1FBQ1YsUUFBUSxFQUFFLDhCQUE4QjtRQUN4QyxjQUFjLEVBQUUsNkJBQTZCO1FBQzdDLE9BQU8sRUFBRSw2QkFBNkI7UUFDdEMsS0FBSyxFQUFFLElBQUk7UUFDWCxLQUFLLEVBQUU7WUFDTDtnQkFDRSxFQUFFLEVBQUUsT0FBTztnQkFDWCxLQUFLLEVBQUUsTUFBTTtnQkFDYixJQUFJLEVBQUUsUUFBUTtnQkFDZCxTQUFTLEVBQUUsTUFBTTtnQkFDakIsVUFBVSxFQUFFLE1BQU07Z0JBQ2xCLFNBQVMsRUFBRSxDQUFDO2dCQUNaLFFBQVEsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRTtnQkFDMUIsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDO2dCQUNyQixRQUFRLEVBQUUsOEJBQThCO2dCQUN4QyxjQUFjLEVBQUUsNkJBQTZCO2dCQUM3QyxRQUFRLEVBQUUsOEJBQThCO2FBQ3pDO1lBQ0Q7Z0JBQ0UsRUFBRSxFQUFFLE9BQU87Z0JBQ1gsS0FBSyxFQUFFLE1BQU07Z0JBQ2IsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsU0FBUyxFQUFFLE1BQU07Z0JBQ2pCLFVBQVUsRUFBRSxNQUFNO2dCQUNsQixTQUFTLEVBQUUsQ0FBQztnQkFDWixRQUFRLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUU7Z0JBQzFCLFVBQVUsRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUM7Z0JB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LEtBQUssTUFBTSxDQUFDLENBQUM7SUFDbEQsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUN4QixNQUFNLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNwRSxJQUFJLE9BQU87UUFBRSxPQUFPLElBQUksQ0FBQztJQUN6QixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxjQUFjLENBQUMsQ0FBQztBQUN0RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hlc3NpbWFsc0FkdmVudHVyZUFjdCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUzogQ2hlc3NpbWFsc0FkdmVudHVyZUFjdFtdID0gW1xuICB7XG4gICAgaWQ6ICdhY3QxJyxcbiAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QxVGl0bGUnLFxuICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDFEZXNjJyxcbiAgICBsb3JlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDFMb3JlJyxcbiAgICBlbW9qaTogJ/CfjL4nLFxuICAgIG5vZGVzOiBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTEtbjEnLFxuICAgICAgICBhY3RJZDogJ2FjdDEnLFxuICAgICAgICB0eXBlOiAnYmF0dGxlJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnYnVsbCcsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdlYXN5JyxcbiAgICAgICAgYm9hcmRTaXplOiA2LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiAyMCwgeTogNzUgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMS1uMiddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMU4xVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMU4xRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUExTjFRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2ExLW4yJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QxJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2hhcmUnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnZWFzeScsXG4gICAgICAgIGJvYXJkU2l6ZTogNixcbiAgICAgICAgcG9zaXRpb246IHsgeDogNTAsIHk6IDU1IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTEtbjMnLCAnYTEtbjQnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOMlRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOMkRlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMU4yUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMS1uMycsXG4gICAgICAgIGFjdElkOiAnYWN0MScsXG4gICAgICAgIHR5cGU6ICdyZXN0JyxcbiAgICAgICAgcG9zaXRpb246IHsgeDogMzAsIHk6IDMwIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTEtbjUnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOM1RpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFOM0Rlc2MnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMS1uNCcsXG4gICAgICAgIGFjdElkOiAnYWN0MScsXG4gICAgICAgIHR5cGU6ICdteXN0ZXJ5JyxcbiAgICAgICAgcG9zaXRpb246IHsgeDogNzAsIHk6IDM1IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTEtbjUnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFONFRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFONERlc2MnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMS1uNScsXG4gICAgICAgIGFjdElkOiAnYWN0MScsXG4gICAgICAgIHR5cGU6ICdib3NzJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnZXhwbG9yZXInLFxuICAgICAgICBkaWZmaWN1bHR5OiAnbm9ybWFsJyxcbiAgICAgICAgYm9hcmRTaXplOiA2LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA1MCwgeTogMTAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogW10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUExTjVUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUExTjVEZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTFONVF1b3RlJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAge1xuICAgIGlkOiAnYWN0MicsXG4gICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQWN0MlRpdGxlJyxcbiAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QyRGVzYycsXG4gICAgbG9yZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QyTG9yZScsXG4gICAgZW1vamk6ICfwn4y/JyxcbiAgICBub2RlczogW1xuICAgICAge1xuICAgICAgICBpZDogJ2EyLW4xJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QyJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2h1bnRlcicsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdub3JtYWwnLFxuICAgICAgICBib2FyZFNpemU6IDYsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDI1LCB5OiA3NSB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EyLW4yJ10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjFUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjFEZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJOMVF1b3RlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTItbjInLFxuICAgICAgICBhY3RJZDogJ2FjdDInLFxuICAgICAgICB0eXBlOiAnbXlzdGVyeScsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDU1LCB5OiA2MCB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EyLW4zJywgJ2EyLW40J10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjJUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjJEZXNjJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTItbjMnLFxuICAgICAgICBhY3RJZDogJ2FjdDInLFxuICAgICAgICB0eXBlOiAnYmF0dGxlJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnanVtcGVyJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ25vcm1hbCcsXG4gICAgICAgIGJvYXJkU2l6ZTogNixcbiAgICAgICAgcG9zaXRpb246IHsgeDogMjUsIHk6IDM1IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTItbjUnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJOM1RpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJOM0Rlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMk4zUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMi1uNCcsXG4gICAgICAgIGFjdElkOiAnYWN0MicsXG4gICAgICAgIHR5cGU6ICdiYXR0bGUnLFxuICAgICAgICBwcm9maWxlSWQ6ICdndWFyZGlhbicsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdub3JtYWwnLFxuICAgICAgICBib2FyZFNpemU6IDYsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDc1LCB5OiAzNSB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EyLW41J10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjRUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjREZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTJONFF1b3RlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTItbjUnLFxuICAgICAgICBhY3RJZDogJ2FjdDInLFxuICAgICAgICB0eXBlOiAnYm9zcycsXG4gICAgICAgIHByb2ZpbGVJZDogJ2NoZWV0YWgnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnaGFyZCcsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogNTAsIHk6IDEwIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFtdLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMk41VGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBMk41RGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEyTjVRdW90ZScsXG4gICAgICAgIHNwZWNpYWxSdWxlOiAndGltZXItcHJlc3N1cmUnLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuICB7XG4gICAgaWQ6ICdhY3QzJyxcbiAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBY3QzVGl0bGUnLFxuICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDNEZXNjJyxcbiAgICBsb3JlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDNMb3JlJyxcbiAgICBlbW9qaTogJ+KdhO+4jycsXG4gICAgbm9kZXM6IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhMy1uMScsXG4gICAgICAgIGFjdElkOiAnYWN0MycsXG4gICAgICAgIHR5cGU6ICdiYXR0bGUnLFxuICAgICAgICBwcm9maWxlSWQ6ICdzZW50aW5lbCcsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdoYXJkJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiAyMCwgeTogNzUgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMy1uMicsICdhMy1uMyddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04xVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04xRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjFRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2EzLW4yJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QzJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ3R1cnRsZScsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdoYXJkJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiAyMCwgeTogNDAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMy1uNCddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04yVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04yRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjJRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2EzLW4zJyxcbiAgICAgICAgYWN0SWQ6ICdhY3QzJyxcbiAgICAgICAgdHlwZTogJ3Jlc3QnLFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA2NSwgeTogNTAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhMy1uNCddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04zVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM04zRGVzYycsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2EzLW40JyxcbiAgICAgICAgYWN0SWQ6ICdhY3QzJyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2FtYnVzaGVyJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ2hhcmQnLFxuICAgICAgICBib2FyZFNpemU6IDgsXG4gICAgICAgIHBvc2l0aW9uOiB7IHg6IDUwLCB5OiAyNSB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbJ2EzLW41J10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjRUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUEzTjREZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTNONFF1b3RlJyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYTMtbjUnLFxuICAgICAgICBhY3RJZDogJ2FjdDMnLFxuICAgICAgICB0eXBlOiAnYm9zcycsXG4gICAgICAgIHByb2ZpbGVJZDogJ29yYWNsZScsXG4gICAgICAgIGRpZmZpY3VsdHk6ICdoYXJkJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA1MCwgeTogOCB9LFxuICAgICAgICBjb25uZWN0c1RvOiBbXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTNONVRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTNONURlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBM041UXVvdGUnLFxuICAgICAgICBzcGVjaWFsUnVsZTogJ25vLXBvd2VycycsXG4gICAgICB9LFxuICAgIF0sXG4gIH0sXG4gIHtcbiAgICBpZDogJ2FjdDQnLFxuICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUFjdDRUaXRsZScsXG4gICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQWN0NERlc2MnLFxuICAgIGxvcmVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQWN0NExvcmUnLFxuICAgIGVtb2ppOiAn4pqhJyxcbiAgICBub2RlczogW1xuICAgICAge1xuICAgICAgICBpZDogJ2E0LW4xJyxcbiAgICAgICAgYWN0SWQ6ICdhY3Q0JyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ3N0b3JtJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ21hc3RlcicsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogMjUsIHk6IDc4IH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTQtbjInXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROMVRpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROMURlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4xUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhNC1uMicsXG4gICAgICAgIGFjdElkOiAnYWN0NCcsXG4gICAgICAgIHR5cGU6ICdiYXR0bGUnLFxuICAgICAgICBwcm9maWxlSWQ6ICdtYXRyaWFyY2gnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnbWFzdGVyJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA3MCwgeTogNjAgfSxcbiAgICAgICAgY29ubmVjdHNUbzogWydhNC1uMyddLFxuICAgICAgICB0aXRsZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4yVGl0bGUnLFxuICAgICAgICBkZXNjcmlwdGlvbktleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4yRGVzYycsXG4gICAgICAgIHF1b3RlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUE0TjJRdW90ZScsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2E0LW4zJyxcbiAgICAgICAgYWN0SWQ6ICdhY3Q0JyxcbiAgICAgICAgdHlwZTogJ2JhdHRsZScsXG4gICAgICAgIHByb2ZpbGVJZDogJ2FuYWNvbmRhJyxcbiAgICAgICAgZGlmZmljdWx0eTogJ21hc3RlcicsXG4gICAgICAgIGJvYXJkU2l6ZTogOCxcbiAgICAgICAgcG9zaXRpb246IHsgeDogMzUsIHk6IDQwIH0sXG4gICAgICAgIGNvbm5lY3RzVG86IFsnYTQtbjQnXSxcbiAgICAgICAgdGl0bGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROM1RpdGxlJyxcbiAgICAgICAgZGVzY3JpcHRpb25LZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTROM0Rlc2MnLFxuICAgICAgICBxdW90ZUtleTogJ2NoZXNzaW1hbHNBZHZlbnR1cmVBNE4zUXVvdGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdhNC1uNCcsXG4gICAgICAgIGFjdElkOiAnYWN0NCcsXG4gICAgICAgIHR5cGU6ICdib3NzJyxcbiAgICAgICAgcHJvZmlsZUlkOiAnbWFuZHJpbGwnLFxuICAgICAgICBkaWZmaWN1bHR5OiAnbWFzdGVyJyxcbiAgICAgICAgYm9hcmRTaXplOiA4LFxuICAgICAgICBwb3NpdGlvbjogeyB4OiA1MCwgeTogMTIgfSxcbiAgICAgICAgY29ubmVjdHNUbzogW10sXG4gICAgICAgIHRpdGxlS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUE0TjRUaXRsZScsXG4gICAgICAgIGRlc2NyaXB0aW9uS2V5OiAnY2hlc3NpbWFsc0FkdmVudHVyZUE0TjREZXNjJyxcbiAgICAgICAgcXVvdGVLZXk6ICdjaGVzc2ltYWxzQWR2ZW50dXJlQTRONFF1b3RlJyxcbiAgICAgICAgc3BlY2lhbFJ1bGU6ICduaWdodG1hcmUtbWFuZHJpbGwnLFxuICAgICAgfSxcbiAgICBdLFxuICB9LFxuXTtcblxuZXhwb3J0IGZ1bmN0aW9uIGFkdmVudHVyZUFjdElzVW5sb2NrZWQoXG4gIGFjdElkOiBzdHJpbmcsXG4gIGNvbXBsZXRlZE5vZGVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuKTogYm9vbGVhbiB7XG4gIGlmIChhY3RJZCA9PT0gJ2FjdDEnKSByZXR1cm4gdHJ1ZTtcbiAgY29uc3QgYWN0cyA9IENIRVNTSU1BTFNfQURWRU5UVVJFX0FDVFM7XG4gIGNvbnN0IGFjdElkeCA9IGFjdHMuZmluZEluZGV4KGEgPT4gYS5pZCA9PT0gYWN0SWQpO1xuICBpZiAoYWN0SWR4IDw9IDApIHJldHVybiBhY3RJZHggPT09IDA7XG4gIGNvbnN0IHByZXZBY3QgPSBhY3RzW2FjdElkeCAtIDFdO1xuICBjb25zdCBib3NzTm9kZSA9IHByZXZBY3Qubm9kZXMuZmluZChuID0+IG4udHlwZSA9PT0gJ2Jvc3MnKTtcbiAgcmV0dXJuIGJvc3NOb2RlID8gYm9zc05vZGUuaWQgaW4gY29tcGxldGVkTm9kZXMgOiBmYWxzZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGFkdmVudHVyZU5vZGVJc0F2YWlsYWJsZShcbiAgbm9kZUlkOiBzdHJpbmcsXG4gIGNvbXBsZXRlZE5vZGVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuKTogYm9vbGVhbiB7XG4gIGNvbnN0IGFjdCA9IENIRVNTSU1BTFNfQURWRU5UVVJFX0FDVFMuZmluZChhID0+IGEubm9kZXMuc29tZShuID0+IG4uaWQgPT09IG5vZGVJZCkpO1xuICBpZiAoIWFjdCkgcmV0dXJuIGZhbHNlO1xuICBpZiAoIWFkdmVudHVyZUFjdElzVW5sb2NrZWQoYWN0LmlkLCBjb21wbGV0ZWROb2RlcykpIHJldHVybiBmYWxzZTtcbiAgY29uc3Qgbm9kZSA9IGFjdC5ub2Rlcy5maW5kKG4gPT4gbi5pZCA9PT0gbm9kZUlkKTtcbiAgaWYgKCFub2RlKSByZXR1cm4gZmFsc2U7XG4gIGNvbnN0IGlzRmlyc3QgPSAhYWN0Lm5vZGVzLnNvbWUobiA9PiBuLmNvbm5lY3RzVG8uaW5jbHVkZXMobm9kZUlkKSk7XG4gIGlmIChpc0ZpcnN0KSByZXR1cm4gdHJ1ZTtcbiAgcmV0dXJuIGFjdC5ub2Rlcy5zb21lKG4gPT4gbi5jb25uZWN0c1RvLmluY2x1ZGVzKG5vZGVJZCkgJiYgbi5pZCBpbiBjb21wbGV0ZWROb2Rlcyk7XG59XG4iXX0=
@@ -102,6 +102,7 @@ export class ChessimalsAdventureComponent {
102
102
  profileId: nodeView.node.profileId,
103
103
  difficulty: nodeView.node.difficulty,
104
104
  boardSize: nodeView.node.boardSize ?? 6,
105
+ actId: nodeView.node.actId,
105
106
  },
106
107
  });
107
108
  }
@@ -125,6 +126,7 @@ export class ChessimalsAdventureComponent {
125
126
  profileId: pick.profileId,
126
127
  difficulty: pick.difficulty,
127
128
  boardSize: pick.boardSize ?? 6,
129
+ actId: nodeView.node.actId,
128
130
  },
129
131
  });
130
132
  }
@@ -422,4 +424,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
422
424
  }
423
425
  `, styles: [":host{--chessimals-panel: #ffffff;--chessimals-surface: #fffaf1;--chessimals-border: rgba(46, 58, 44, .18);--chessimals-text: #2e3a2c;--chessimals-muted: #51643d;--chessimals-soft: rgba(111, 122, 60, .1);--chessimals-primary: #2e6f3e;--chessimals-primary-rgb: 46, 111, 62;--chessimals-secondary: #a8a06a;--chessimals-secondary-rgb: 168, 160, 106;--chessimals-selected: #37f28a;--chessimals-selected-rgb: 55, 242, 138;--chessimals-magic: #f7d45a;--chessimals-magic-rgb: 247, 212, 90;display:grid;gap:1.125rem;width:100%;max-width:min(100%,60rem);margin:0 auto;padding-bottom:2.5rem;color:var(--chessimals-text)}@media (prefers-color-scheme: dark){:host{--chessimals-panel: #172116;--chessimals-surface: #0f170f;--chessimals-border: rgba(242, 230, 213, .2);--chessimals-text: #f6f3e9;--chessimals-muted: #c8cfb1}}.adventure-hub__back{justify-self:start;border:1px solid rgba(var(--chessimals-primary-rgb),.16);border-radius:999px;padding:.45rem .72rem;background:var(--chessimals-panel);color:var(--chessimals-text);font:inherit;font-size:.85rem;font-weight:950;cursor:pointer}.adventure-hub__hero{width:100%;aspect-ratio:16 / 7;object-fit:cover;border-radius:1rem;display:block;margin-bottom:.25rem}.adventure-hub__header{padding:0 0 .5rem;text-align:center}.adventure-hub__eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--chessimals-muted);margin:0 0 .375rem}.adventure-hub__title{font-size:clamp(1.5rem,5vw,2rem);font-weight:800;margin:0 0 .375rem;color:var(--chessimals-text);line-height:1.1}.adventure-hub__subtitle{font-size:.875rem;color:var(--chessimals-muted);margin:0 0 .75rem;line-height:1.4}.adventure-hub__stars{display:inline-flex;align-items:center;gap:4px;background:var(--chessimals-surface);border:1px solid var(--chessimals-border);border-radius:20px;padding:4px 14px;font-weight:700;font-size:.95rem;color:var(--chessimals-magic)}.adventure-hub__stars ion-icon{color:var(--chessimals-magic);font-size:1rem}.adventure-hub__acts{display:grid;gap:.875rem}.adventure-act{border:1px solid var(--chessimals-border);border-radius:1.125rem;background:var(--chessimals-panel);overflow:hidden}.adventure-act--locked{opacity:.55}.adventure-act--done{border-color:rgba(var(--chessimals-primary-rgb),.5)}.adventure-act__head{position:relative;display:flex;align-items:center;gap:.625rem;padding:.875rem 1rem;border-bottom:1px solid var(--chessimals-border);overflow:hidden}.adventure-act__head-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.12;pointer-events:none}.adventure-act__icon{width:2.5rem;height:2.5rem;object-fit:contain;flex-shrink:0;position:relative}.adventure-act__meta{flex:1;min-width:0;position:relative}.adventure-act__name{font-size:.9375rem;font-weight:700;margin:0 0 2px;color:var(--chessimals-text)}.adventure-act__desc{font-size:.8125rem;color:var(--chessimals-muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adventure-act__lock{color:var(--chessimals-muted);font-size:1.125rem;flex-shrink:0;position:relative}.adventure-act__progress{font-size:.8125rem;font-weight:700;color:var(--chessimals-muted);flex-shrink:0;position:relative}.adventure-act__nodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:.5rem;padding:.75rem}.adventure-node{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.75rem .375rem .625rem;border-radius:1rem;border:1px solid rgba(var(--chessimals-primary-rgb),.22);background:radial-gradient(circle at 18% 10%,rgba(255,255,255,.62),transparent 22%),linear-gradient(135deg,rgba(var(--chessimals-primary-rgb),.06),rgba(var(--chessimals-secondary-rgb),.04)),var(--chessimals-panel);cursor:pointer;text-align:center;transition:transform .12s ease,border-color .12s ease;min-width:0;overflow:hidden;font:inherit;color:inherit}.adventure-node:active{transform:scale(.97)}.adventure-node--available{border-color:rgba(var(--chessimals-primary-rgb),.6);background:radial-gradient(circle at 18% 10%,rgba(255,255,255,.74),transparent 22%),linear-gradient(135deg,rgba(var(--chessimals-primary-rgb),.12),rgba(var(--chessimals-secondary-rgb),.07)),var(--chessimals-panel)}.adventure-node--completed{border-color:rgba(var(--chessimals-selected-rgb),.5);background:radial-gradient(circle at 18% 10%,rgba(255,255,255,.74),transparent 22%),linear-gradient(135deg,rgba(var(--chessimals-selected-rgb),.08),rgba(var(--chessimals-primary-rgb),.04)),var(--chessimals-panel)}.adventure-node--locked{opacity:.4;cursor:default}.adventure-node__avatar{width:2.75rem;height:2.75rem;border-radius:50%;object-fit:cover;border:2px solid var(--chessimals-border);flex-shrink:0;filter:var(--chessimals-animal-face-filter, none);background:var(--chessimals-animal-face-bg, #fffdf7)}.adventure-node--available .adventure-node__avatar{border-color:rgba(var(--chessimals-primary-rgb),.5)}.adventure-node--completed .adventure-node__avatar{border-color:rgba(var(--chessimals-selected-rgb),.5)}.adventure-node__icon-img{width:2.5rem;height:2.5rem;object-fit:contain;flex-shrink:0}.adventure-node__label{font-size:.75rem;font-weight:700;color:var(--chessimals-text);line-height:1.2;overflow-wrap:break-word;max-width:100%}.adventure-node__stars{display:flex;gap:1px}.adventure-node__star{font-size:.625rem;color:var(--chessimals-muted)}.adventure-node__star--filled{color:var(--chessimals-magic)}.adventure-node__badge{display:inline-block;font-size:.5625rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#7a5200;background:#f7d45abf;border:1px solid rgba(247,212,90,.9);border-radius:.375rem;padding:1px 5px;line-height:1.5}.adventure-act__lore{margin:0;padding:.5rem 1rem .625rem;font-size:.8125rem;font-style:italic;color:var(--chessimals-muted);line-height:1.5;border-bottom:1px solid var(--chessimals-border);opacity:.88}.adventure-encounter__backdrop{position:fixed;inset:0;z-index:20;background:#00000061;animation:adv-fade-in .18s ease}.adventure-encounter{position:fixed;bottom:0;left:0;right:0;z-index:21;background:var(--chessimals-panel);border-top:1px solid var(--chessimals-border);border-radius:1.25rem 1.25rem 0 0;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.875rem;animation:adv-slide-up .22s cubic-bezier(.34,1.3,.64,1);max-width:480px;margin:0 auto}.adventure-encounter__close{position:absolute;top:1rem;right:1rem;background:var(--chessimals-surface);border:1px solid var(--chessimals-border);border-radius:50%;width:2rem;height:2rem;font-size:.8rem;color:var(--chessimals-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font:inherit}.adventure-encounter__rival{display:flex;align-items:center;gap:.75rem}.adventure-encounter__avatar{width:3.25rem;height:3.25rem;border-radius:50%;object-fit:cover;border:2px solid var(--chessimals-border);flex-shrink:0;filter:var(--chessimals-animal-face-filter, none);background:var(--chessimals-animal-face-bg, #fffdf7)}.adventure-encounter__icon-img{width:3.25rem;height:3.25rem;object-fit:contain;flex-shrink:0}.adventure-encounter__info{display:flex;flex-direction:column;gap:.25rem}.adventure-encounter__name{font-size:1rem;font-weight:800;color:var(--chessimals-text);line-height:1.2}.adventure-encounter__boss-chip{display:inline-block;font-size:.5625rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#7a5200;background:#f7d45abf;border:1px solid rgba(247,212,90,.9);border-radius:.375rem;padding:1px 5px;line-height:1.5;align-self:flex-start}.adventure-encounter__quote{margin:0;font-size:.9375rem;font-style:italic;color:var(--chessimals-text);line-height:1.5;padding:.625rem .875rem;background:var(--chessimals-surface);border-left:3px solid rgba(var(--chessimals-primary-rgb),.5);border-radius:0 .5rem .5rem 0}.adventure-encounter__play{width:100%;padding:.875rem;border-radius:999px;border:none;background:var(--chessimals-primary);color:#fff;font:inherit;font-size:.9375rem;font-weight:800;cursor:pointer;transition:opacity .12s ease}.adventure-encounter__play:active{opacity:.82}@keyframes adv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes adv-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}\n"] }]
424
426
  }], ctorParameters: () => [] });
425
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlc3NpbWFscy1hZHZlbnR1cmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9taW5pLWdhbWVzL2NoZXNzaW1hbHMtYWR2ZW50dXJlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixzQkFBc0IsRUFDdEIsd0JBQXdCLEdBQ3pCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBc0I3RixNQUFNLG9CQUFvQixHQUFHLHdCQUF3QixDQUFDO0FBcW9CdEQsTUFBTSxPQUFPLDRCQUE0QjtJQTBDdkM7UUF6Q2lCLFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0IsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixvQkFBZSxHQUFHLE1BQU0sQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FB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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJb25CdXR0b24sIElvbkljb24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5pbXBvcnQgeyBNSU5JX0dBTUVTX0kxOE4gfSBmcm9tICcuL21pbmktZ2FtZXMuaTE4bic7XG5pbXBvcnQge1xuICBDSEVTU0lNQUxTX0FEVkVOVFVSRV9BQ1RTLFxuICBhZHZlbnR1cmVBY3RJc1VubG9ja2VkLFxuICBhZHZlbnR1cmVOb2RlSXNBdmFpbGFibGUsXG59IGZyb20gJy4vY2hlc3NpbWFscy1hZHZlbnR1cmUtZGF0YSc7XG5pbXBvcnQgeyBDaGVzc2ltYWxzQWR2ZW50dXJlUHJvZ3Jlc3NTZXJ2aWNlIH0gZnJvbSAnLi9jaGVzc2ltYWxzLWFkdmVudHVyZS1wcm9ncmVzcy5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIENoZXNzaW1hbHNBZHZlbnR1cmVBY3QsXG4gIENoZXNzaW1hbHNBZHZlbnR1cmVOb2RlLFxuICBDaGVzc2ltYWxzQWR2ZW50dXJlTm9kZVN0YXR1cyxcbiAgQ2hlc3NpbWFsc0FkdmVudHVyZVByb2dyZXNzLFxufSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEFkdmVudHVyZU5vZGVWaWV3IHtcbiAgbm9kZTogQ2hlc3NpbWFsc0FkdmVudHVyZU5vZGU7XG4gIHN0YXR1czogQ2hlc3NpbWFsc0FkdmVudHVyZU5vZGVTdGF0dXM7XG4gIHN0YXJzOiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBBZHZlbnR1cmVBY3RWaWV3IHtcbiAgYWN0OiBDaGVzc2ltYWxzQWR2ZW50dXJlQWN0O1xuICB1bmxvY2tlZDogYm9vbGVhbjtcbiAgbm9kZXM6IEFkdmVudHVyZU5vZGVWaWV3W107XG4gIGNvbXBsZXRlZENvdW50OiBudW1iZXI7XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbn1cblxuY29uc3QgQURWRU5UVVJFX1JPVVRFX0JBU0UgPSAnL21pbmktZ2FtZXMvY2hlc3NpbWFscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1jaGVzc2ltYWxzLWFkdmVudHVyZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBJb25CdXR0b24sIElvbkljb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJhZHZlbnR1cmUtaHViXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9fYmFja1wiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiZ29CYWNrKClcIj5cbiAgICAgICAge3sgdCgnY2hlc3NpbWFsc0JhY2tUb01lbnUnKSB9fVxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxoZWFkZXIgY2xhc3M9XCJhZHZlbnR1cmUtaHViX19oZWFkZXJcIj5cbiAgICAgICAgPGltZ1xuICAgICAgICAgIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9faGVyb1wiXG4gICAgICAgICAgc3JjPVwiYXNzZXRzL2dhbWVzL2NoZXNzaW1hbHMvYWR2ZW50dXJlL2FkdmVudHVyZS1oZXJvLnBuZ1wiXG4gICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHAgY2xhc3M9XCJhZHZlbnR1cmUtaHViX19leWVicm93XCI+e3sgdCgnY2hlc3NpbWFsc0FkdmVudHVyZUV5ZWJyb3cnKSB9fTwvcD5cbiAgICAgICAgPGgxIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9fdGl0bGVcIj57eyB0KCdjaGVzc2ltYWxzQWR2ZW50dXJlVGl0bGUnKSB9fTwvaDE+XG4gICAgICAgIDxwIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9fc3VidGl0bGVcIj57eyB0KCdjaGVzc2ltYWxzQWR2ZW50dXJlU3VidGl0bGUnKSB9fTwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1odWJfX3N0YXJzXCI+XG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJzdGFyXCIgLz5cbiAgICAgICAgICA8c3Bhbj57eyB0b3RhbFN0YXJzKCkgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9oZWFkZXI+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZHZlbnR1cmUtaHViX19hY3RzXCI+XG4gICAgICAgIEBmb3IgKGFjdFZpZXcgb2YgYWN0Vmlld3MoKTsgdHJhY2sgYWN0Vmlldy5hY3QuaWQpIHtcbiAgICAgICAgICA8c2VjdGlvblxuICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtYWN0XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ2FkdmVudHVyZS1hY3QtLWxvY2tlZCc6ICFhY3RWaWV3LnVubG9ja2VkLFxuICAgICAgICAgICAgICAnYWR2ZW50dXJlLWFjdC0tZG9uZSc6IGFjdFZpZXcuY29tcGxldGVkQ291bnQgPT09IGFjdFZpZXcudG90YWxDb3VudCAmJiBhY3RWaWV3LnVubG9ja2VkLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1hY3RfX2hlYWRcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9faGVhZC1iZ1wiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgYWN0QmdTcmMoYWN0Vmlldy5hY3QuaWQpICsgJyknXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtYWN0X19pY29uXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cImFjdEFzc2V0U3JjKGFjdFZpZXcuYWN0LmlkKVwiXG4gICAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1hY3RfX21ldGFcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJhZHZlbnR1cmUtYWN0X19uYW1lXCI+e3sgdChhY3RWaWV3LmFjdC50aXRsZUtleSkgfX08L2gyPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fZGVzY1wiPnt7IHQoYWN0Vmlldy5hY3QuZGVzY3JpcHRpb25LZXkpIH19PC9wPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgQGlmICghYWN0Vmlldy51bmxvY2tlZCkge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibG9jay1jbG9zZWQtb3V0bGluZVwiIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fbG9ja1wiIC8+XG4gICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fcHJvZ3Jlc3NcIj4ge3sgYWN0Vmlldy5jb21wbGV0ZWRDb3VudCB9fS97eyBhY3RWaWV3LnRvdGFsQ291bnQgfX0gPC9zcGFuPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZiAoYWN0Vmlldy51bmxvY2tlZCAmJiBhY3RWaWV3LmFjdC5sb3JlS2V5KSB7XG4gICAgICAgICAgICAgIDxwIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fbG9yZVwiPnt7IHQoYWN0Vmlldy5hY3QubG9yZUtleSkgfX08L3A+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoYWN0Vmlldy51bmxvY2tlZCkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fbm9kZXNcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChub2RlVmlldyBvZiBhY3RWaWV3Lm5vZGVzOyB0cmFjayBub2RlVmlldy5ub2RlLmlkKSB7XG4gICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWR2ZW50dXJlLW5vZGVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgJ2FkdmVudHVyZS1ub2RlLS1hdmFpbGFibGUnOiBub2RlVmlldy5zdGF0dXMgPT09ICdhdmFpbGFibGUnLFxuICAgICAgICAgICAgICAgICAgICAgICdhZHZlbnR1cmUtbm9kZS0tY29tcGxldGVkJzogbm9kZVZpZXcuc3RhdHVzID09PSAnY29tcGxldGVkJyxcbiAgICAgICAgICAgICAgICAgICAgICAnYWR2ZW50dXJlLW5vZGUtLWxvY2tlZCc6IG5vZGVWaWV3LnN0YXR1cyA9PT0gJ2xvY2tlZCcsXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwibm9kZVZpZXcuc3RhdHVzID09PSAnbG9ja2VkJ1wiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5vZGVUYXAobm9kZVZpZXcpXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAobm9kZVZpZXcubm9kZS5wcm9maWxlSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19hdmF0YXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJhdmF0YXJTcmMobm9kZVZpZXcubm9kZS5wcm9maWxlSWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwidChub2RlVmlldy5ub2RlLnRpdGxlS2V5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtbm9kZV9faWNvbi1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJub2RlQXNzZXRTcmMobm9kZVZpZXcubm9kZS50eXBlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cInQobm9kZVZpZXcubm9kZS50aXRsZUtleSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIlxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZHZlbnR1cmUtbm9kZV9fbGFiZWxcIj57eyB0KG5vZGVWaWV3Lm5vZGUudGl0bGVLZXkpIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19zdGFyc1wiPlxuICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKGkgb2YgWzAsIDEsIDJdOyB0cmFjayBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwibm9kZVZpZXcuc3RhcnMgPiBpID8gJ3N0YXInIDogJ3N0YXItb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19zdGFyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnYWR2ZW50dXJlLW5vZGVfX3N0YXItLWZpbGxlZCc6IG5vZGVWaWV3LnN0YXJzID4gaSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAobm9kZVZpZXcubm9kZS50eXBlID09PSAnYm9zcycpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19iYWRnZVwiPnt7IHQoJ2NoZXNzaW1hbHNBZHZlbnR1cmVCb3NzJykgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoc2VsZWN0ZWROb2RlKCk7IGFzIGVuYykge1xuICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX2JhY2tkcm9wXCIgKGNsaWNrKT1cImRpc21pc3NFbmNvdW50ZXIoKVwiPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX2Nsb3NlXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJkaXNtaXNzRW5jb3VudGVyKClcIj7inJU8L2J1dHRvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX3JpdmFsXCI+XG4gICAgICAgICAgQGlmIChlbmMubm9kZS5wcm9maWxlSWQpIHtcbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtZW5jb3VudGVyX19hdmF0YXJcIlxuICAgICAgICAgICAgICBbc3JjXT1cImF2YXRhclNyYyhlbmMubm9kZS5wcm9maWxlSWQpXCJcbiAgICAgICAgICAgICAgW2FsdF09XCJ0KGVuYy5ub2RlLnRpdGxlS2V5KVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX2ljb24taW1nXCJcbiAgICAgICAgICAgICAgW3NyY109XCJub2RlQXNzZXRTcmMoZW5jLm5vZGUudHlwZSlcIlxuICAgICAgICAgICAgICBbYWx0XT1cInQoZW5jLm5vZGUudGl0bGVLZXkpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZHZlbnR1cmUtZW5jb3VudGVyX19pbmZvXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX25hbWVcIj57eyB0KGVuYy5ub2RlLnRpdGxlS2V5KSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIEBpZiAoZW5jLm5vZGUudHlwZSA9PT0gJ2Jvc3MnKSB7XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWR2ZW50dXJlLWVuY291bnRlcl9fYm9zcy1jaGlwXCI+e3sgdCgnY2hlc3NpbWFsc0FkdmVudHVyZUJvc3MnKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoZW5jLm5vZGUucXVvdGVLZXkpIHtcbiAgICAgICAgICA8cCBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX3F1b3RlXCI+XCJ7eyB0KGVuYy5ub2RlLnF1b3RlS2V5KSB9fVwiPC9wPlxuICAgICAgICB9XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhZHZlbnR1cmUtZW5jb3VudGVyX19wbGF5XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjb25maXJtUGxheSgpXCI+XG4gICAgICAgICAge3sgdCgnY2hlc3NpbWFsc0FkdmVudHVyZUNoYWxsZW5nZScpIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAvKiDilIDilIAgQ2hlc3NpbWFscyB0b2tlbnMg4oCUIGlkw6ludGljb3MgYSAuY2hlc3NpbWFscy1zaGVsbCBkZWwgZ2FtZSDilIDilIAgKi9cbiAgICAgIDpob3N0IHtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXBhbmVsOiAjZmZmZmZmO1xuICAgICAgICAtLWNoZXNzaW1hbHMtc3VyZmFjZTogI2ZmZmFmMTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLWJvcmRlcjogcmdiYSg0NiwgNTgsIDQ0LCAwLjE4KTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXRleHQ6ICMyZTNhMmM7XG4gICAgICAgIC0tY2hlc3NpbWFscy1tdXRlZDogIzUxNjQzZDtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNvZnQ6IHJnYmEoMTExLCAxMjIsIDYwLCAwLjEpO1xuICAgICAgICAtLWNoZXNzaW1hbHMtcHJpbWFyeTogIzJlNmYzZTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiOiA0NiwgMTExLCA2MjtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNlY29uZGFyeTogI2E4YTA2YTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNlY29uZGFyeS1yZ2I6IDE2OCwgMTYwLCAxMDY7XG4gICAgICAgIC0tY2hlc3NpbWFscy1zZWxlY3RlZDogIzM3ZjI4YTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNlbGVjdGVkLXJnYjogNTUsIDI0MiwgMTM4O1xuICAgICAgICAtLWNoZXNzaW1hbHMtbWFnaWM6ICNmN2Q0NWE7XG4gICAgICAgIC0tY2hlc3NpbWFscy1tYWdpYy1yZ2I6IDI0NywgMjEyLCA5MDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAxLjEyNXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogbWluKDEwMCUsIDYwcmVtKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICAtLWNoZXNzaW1hbHMtcGFuZWw6ICMxNzIxMTY7XG4gICAgICAgICAgLS1jaGVzc2ltYWxzLXN1cmZhY2U6ICMwZjE3MGY7XG4gICAgICAgICAgLS1jaGVzc2ltYWxzLWJvcmRlcjogcmdiYSgyNDIsIDIzMCwgMjEzLCAwLjIpO1xuICAgICAgICAgIC0tY2hlc3NpbWFscy10ZXh0OiAjZjZmM2U5O1xuICAgICAgICAgIC0tY2hlc3NpbWFscy1tdXRlZDogI2M4Y2ZiMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQmFjayBsaW5rIOKAlCBtaXNtbyBlc3RpbG8gcXVlIC5jaGVzc2ltYWxzLWJhY2stbGluayBlbiBlbCBnYW1lIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1odWJfX2JhY2sge1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLWNoZXNzaW1hbHMtcHJpbWFyeS1yZ2IpLCAwLjE2KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgIHBhZGRpbmc6IDAuNDVyZW0gMC43MnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgICBmb250OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5NTA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEhlcm8gYmFubmVyIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1odWJfX2hlcm8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDc7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEhlYWRlciDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtaHViX19oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMC41cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtaHViX19leWVicm93IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tdXRlZCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuMzc1cmVtO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWh1Yl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNXJlbSwgNXZ3LCAycmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC4zNzVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWh1Yl9fc3VidGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tdXRlZCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtaHViX19zdGFycyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1zdXJmYWNlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiA0cHggMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tYWdpYyk7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtaHViX19zdGFycyBpb24taWNvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLW1hZ2ljKTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQWN0cyDigJQgZ3JpZCBjb2x1bW4gKGhlcmVkYSBnYXAgZGVsIDpob3N0KSDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtaHViX19hY3RzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAwLjg3NXJlbTtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEFjdCBjYXJkIOKAlCBpZ3VhbCBxdWUgLmNoZXNzaW1hbHMtb3B0aW9ucyDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtYWN0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjEyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtYWN0LS1sb2NrZWQge1xuICAgICAgICBvcGFjaXR5OiAwLjU1O1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdC0tZG9uZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC41KTtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1hY3RfX2hlYWQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jaGVzc2ltYWxzLWJvcmRlcik7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgIC8qIEFjdCBiYWNrZ3JvdW5kIOKAlCBzdWJ0aWwgYW1iaWVudCBsYXllciAqL1xuICAgICAgLmFkdmVudHVyZS1hY3RfX2hlYWQtYmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuXG4gICAgICAvKiBBY3QgaWNvbiBpbWFnZSDigJQgcmVlbXBsYXphIGVtb2ppICovXG4gICAgICAuYWR2ZW50dXJlLWFjdF9faWNvbiB7XG4gICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fbWV0YSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IDAgMCAycHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fZGVzYyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tdXRlZCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtYWN0X19sb2NrIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fcHJvZ3Jlc3Mge1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgTm9kZXMgZ3JpZCDigJQgbWlubWF4KDAsIDFmcikgcHJldmllbmUgb3ZlcmZsb3cg4pSA4pSAICovXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fbm9kZXMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIGdyaWQtYXV0by1yb3dzOiAxZnI7XG4gICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgTm9kZSBjYXJkIOKAlCBtaXNtbyBwYXRyw7NuIHF1ZSAuY2hlc3NpbWFscy1ob21lLWFjdGlvbiDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAwLjM3NXJlbSAwLjYyNXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC4yMik7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxOCUgMTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjIpLCB0cmFuc3BhcmVudCAyMiUpLFxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIDEzNWRlZyxcbiAgICAgICAgICAgIHJnYmEodmFyKC0tY2hlc3NpbWFscy1wcmltYXJ5LXJnYiksIDAuMDYpLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlY29uZGFyeS1yZ2IpLCAwLjA0KVxuICAgICAgICAgICksXG4gICAgICAgICAgdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgIHRyYW5zZm9ybSAwLjEycyBlYXNlLFxuICAgICAgICAgIGJvcmRlci1jb2xvciAwLjEycyBlYXNlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGU6YWN0aXZlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk3KTtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1ub2RlLS1hdmFpbGFibGUge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tY2hlc3NpbWFscy1wcmltYXJ5LXJnYiksIDAuNik7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxOCUgMTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzQpLCB0cmFuc3BhcmVudCAyMiUpLFxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIDEzNWRlZyxcbiAgICAgICAgICAgIHJnYmEodmFyKC0tY2hlc3NpbWFscy1wcmltYXJ5LXJnYiksIDAuMTIpLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlY29uZGFyeS1yZ2IpLCAwLjA3KVxuICAgICAgICAgICksXG4gICAgICAgICAgdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtbm9kZS0tY29tcGxldGVkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNoZXNzaW1hbHMtc2VsZWN0ZWQtcmdiKSwgMC41KTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAxMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NCksIHRyYW5zcGFyZW50IDIyJSksXG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgMTM1ZGVnLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlbGVjdGVkLXJnYiksIDAuMDgpLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC4wNClcbiAgICAgICAgICApLFxuICAgICAgICAgIHZhcigtLWNoZXNzaW1hbHMtcGFuZWwpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGUtLWxvY2tlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQXZhdGFyIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1ub2RlX19hdmF0YXIge1xuICAgICAgICB3aWR0aDogMi43NXJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaGVzc2ltYWxzLWJvcmRlcik7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBmaWx0ZXI6IHZhcigtLWNoZXNzaW1hbHMtYW5pbWFsLWZhY2UtZmlsdGVyLCBub25lKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1hbmltYWwtZmFjZS1iZywgI2ZmZmRmNyk7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtbm9kZS0tYXZhaWxhYmxlIC5hZHZlbnR1cmUtbm9kZV9fYXZhdGFyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNoZXNzaW1hbHMtcHJpbWFyeS1yZ2IpLCAwLjUpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGUtLWNvbXBsZXRlZCAuYWR2ZW50dXJlLW5vZGVfX2F2YXRhciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlbGVjdGVkLXJnYiksIDAuNSk7XG4gICAgICB9XG5cbiAgICAgIC8qIOKUgOKUgCBOb2RlIGljb24gaW1hZ2UgKGRlc2NhbnNvL21pc3RlcmlvKSDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZV9faWNvbi1pbWcge1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qIOKUgOKUgCBMYWJlbCDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZV9fbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC8qIOKUgOKUgCBTdGFycyDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZV9fc3RhcnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFweDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1ub2RlX19zdGFyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGVfX3N0YXItLWZpbGxlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLW1hZ2ljKTtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEJvc3MgY2hpcCDigJQgaW5saW5lIGVuIGVsIGZsb3cgZGVsIG5vZG8g4pSA4pSAICovXG4gICAgICAuYWR2ZW50dXJlLW5vZGVfX2JhZGdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDAuNTYyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICM3YTUyMDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjQ3LCAyMTIsIDkwLCAwLjc1KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNDcsIDIxMiwgOTAsIDAuOSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nOiAxcHggNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQWN0IGxvcmUg4oCUIHBhcnJhZm8gbmFycmF0aXZvIGJham8gZWwgZW5jYWJlemFkbyBkZWwgYWN0byDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtYWN0X19sb3JlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjYyNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBvcGFjaXR5OiAwLjg4O1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgRW5jb3VudGVyIHBhbmVsIOKAlCBmaWpvIGVuIGxhIHBhcnRlIGluZmVyaW9yIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2JhY2tkcm9wIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gICAgICAgIGFuaW1hdGlvbjogYWR2LWZhZGUtaW4gMC4xOHMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDIxO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGVzc2ltYWxzLXBhbmVsKTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNoZXNzaW1hbHMtYm9yZGVyKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbSAxLjI1cmVtIDAgMDtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjI1cmVtIGNhbGMoMS4yNXJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMC44NzVyZW07XG4gICAgICAgIGFuaW1hdGlvbjogYWR2LXNsaWRlLXVwIDAuMjJzIGN1YmljLWJlemllcigwLjM0LCAxLjMsIDAuNjQsIDEpO1xuICAgICAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2Nsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGVzc2ltYWxzLXN1cmZhY2UpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGVzc2ltYWxzLWJvcmRlcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLW11dGVkKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX3JpdmFsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWVuY291bnRlcl9fYXZhdGFyIHtcbiAgICAgICAgd2lkdGg6IDMuMjVyZW07XG4gICAgICAgIGhlaWdodDogMy4yNXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZmlsdGVyOiB2YXIoLS1jaGVzc2ltYWxzLWFuaW1hbC1mYWNlLWZpbHRlciwgbm9uZSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoZXNzaW1hbHMtYW5pbWFsLWZhY2UtYmcsICNmZmZkZjcpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWVuY291bnRlcl9faWNvbi1pbWcge1xuICAgICAgICB3aWR0aDogMy4yNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2luZm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtZW5jb3VudGVyX19uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy10ZXh0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2Jvc3MtY2hpcCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAwLjU2MjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjN2E1MjAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0NywgMjEyLCA5MCwgMC43NSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyMTIsIDkwLCAwLjkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgcGFkZGluZzogMXB4IDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX3F1b3RlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy10ZXh0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoZXNzaW1hbHMtc3VyZmFjZSk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC41KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwLjVyZW0gMC41cmVtIDA7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtZW5jb3VudGVyX19wbGF5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnkpO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEycyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWVuY291bnRlcl9fcGxheTphY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAwLjgyO1xuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIGFkdi1mYWRlLWluIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIGFkdi1zbGlkZS11cCB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hlc3NpbWFsc0FkdmVudHVyZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvZ3Jlc3NTZXJ2aWNlID0gaW5qZWN0KENoZXNzaW1hbHNBZHZlbnR1cmVQcm9ncmVzc1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0ID0gaW5qZWN0KFRvYXN0U2VydmljZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwcm9ncmVzcyA9IHRvU2lnbmFsPENoZXNzaW1hbHNBZHZlbnR1cmVQcm9ncmVzcyB8IHVuZGVmaW5lZD4odGhpcy5wcm9ncmVzc1NlcnZpY2Uud2F0Y2hQcm9ncmVzcygpLCB7XG4gICAgaW5pdGlhbFZhbHVlOiB1bmRlZmluZWQsXG4gIH0pO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGVkQWN0SWQgPSBzaWduYWw8c3RyaW5nPignYWN0MScpO1xuICByZWFkb25seSBzZWxlY3RlZE5vZGUgPSBzaWduYWw8QWR2ZW50dXJlTm9kZVZpZXcgfCBudWxsPihudWxsKTtcblxuICByZWFkb25seSB0b3RhbFN0YXJzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9ncmVzcygpPy50b3RhbFN0YXJzID8/IDApO1xuXG4gIHJlYWRvbmx5IGFjdFZpZXdzID0gY29tcHV0ZWQ8QWR2ZW50dXJlQWN0Vmlld1tdPigoKSA9PiB7XG4gICAgY29uc3QgcHJvZyA9IHRoaXMucHJvZ3Jlc3MoKTtcbiAgICBjb25zdCBjb21wbGV0ZWQgPSBwcm9nPy5jb21wbGV0ZWROb2RlcyA/PyB7fTtcbiAgICByZXR1cm4gQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUy5tYXAoYWN0ID0+IHtcbiAgICAgIGNvbnN0IHVubG9ja2VkID0gYWR2ZW50dXJlQWN0SXNVbmxvY2tlZChhY3QuaWQsIGNvbXBsZXRlZCk7XG4gICAgICBjb25zdCBub2RlczogQWR2ZW50dXJlTm9kZVZpZXdbXSA9IGFjdC5ub2Rlcy5tYXAobm9kZSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGNvbXBsZXRlZFtub2RlLmlkXTtcbiAgICAgICAgbGV0IHN0YXR1czogQ2hlc3NpbWFsc0FkdmVudHVyZU5vZGVTdGF0dXM7XG4gICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICBzdGF0dXMgPSAnY29tcGxldGVkJztcbiAgICAgICAgfSBlbHNlIGlmICghdW5sb2NrZWQgfHwgIWFkdmVudHVyZU5vZGVJc0F2YWlsYWJsZShub2RlLmlkLCBjb21wbGV0ZWQpKSB7XG4gICAgICAgICAgc3RhdHVzID0gJ2xvY2tlZCc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3RhdHVzID0gJ2F2YWlsYWJsZSc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgbm9kZSwgc3RhdHVzLCBzdGFyczogcmVzdWx0Py5zdGFycyA/PyAwIH07XG4gICAgICB9KTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFjdCxcbiAgICAgICAgdW5sb2NrZWQsXG4gICAgICAgIG5vZGVzLFxuICAgICAgICBjb21wbGV0ZWRDb3VudDogbm9kZXMuZmlsdGVyKG4gPT4gbi5zdGF0dXMgPT09ICdjb21wbGV0ZWQnKS5sZW5ndGgsXG4gICAgICAgIHRvdGFsQ291bnQ6IG5vZGVzLmxlbmd0aCxcbiAgICAgIH07XG4gICAgfSk7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmICghdGhpcy5pMThuLmhhc05hbWVzcGFjZSgnTWluaUdhbWVzJykpIHtcbiAgICAgIHRoaXMuaTE4bi5yZWdpc3RlckNvbnRlbnQoJ01pbmlHYW1lcycsIE1JTklfR0FNRVNfSTE4Tik7XG4gICAgfVxuICB9XG5cbiAgdChrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaTE4bi50KGtleSwgJ01pbmlHYW1lcycpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBBRFZfQUNUX1RIRU1FUzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICBhY3QxOiAnc2F2YW5uYScsXG4gICAgYWN0MjogJ2p1bmdsZScsXG4gICAgYWN0MzogJ2FyY3RpYycsXG4gICAgYWN0NDogJ2NvbGlzZXVtJyxcbiAgfTtcblxuICBhdmF0YXJTcmMocHJvZmlsZUlkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgYXNzZXRzL2dhbWVzL2NoZXNzaW1hbHMvY2hhbGxlbmdlLWF2YXRhcnMvJHtwcm9maWxlSWR9LnBuZ2A7XG4gIH1cblxuICBhY3RBc3NldFNyYyhhY3RJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGFzc2V0cy9nYW1lcy9jaGVzc2ltYWxzL2FkdmVudHVyZS9hY3RzLyR7dGhpcy5BRFZfQUNUX1RIRU1FU1thY3RJZF0gPz8gYWN0SWR9LnBuZ2A7XG4gIH1cblxuICBhY3RCZ1NyYyhhY3RJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGFzc2V0cy9nYW1lcy9jaGVzc2ltYWxzL2FkdmVudHVyZS9iYWNrZ3JvdW5kcy8ke3RoaXMuQURWX0FDVF9USEVNRVNbYWN0SWRdID8/IGFjdElkfS5wbmdgO1xuICB9XG5cbiAgbm9kZUFzc2V0U3JjKHR5cGU6IENoZXNzaW1hbHNBZHZlbnR1cmVOb2RlWyd0eXBlJ10pOiBzdHJpbmcge1xuICAgIHJldHVybiBgYXNzZXRzL2dhbWVzL2NoZXNzaW1hbHMvYWR2ZW50dXJlL25vZGVzLyR7dHlwZX0ucG5nYDtcbiAgfVxuXG4gIG9uTm9kZVRhcChub2RlVmlldzogQWR2ZW50dXJlTm9kZVZpZXcpOiB2b2lkIHtcbiAgICBpZiAobm9kZVZpZXcuc3RhdHVzID09PSAnbG9ja2VkJykgcmV0dXJuO1xuICAgIGlmIChub2RlVmlldy5ub2RlLnR5cGUgPT09ICdyZXN0Jykge1xuICAgICAgdGhpcy5vblJlc3RUYXAobm9kZVZpZXcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAobm9kZVZpZXcubm9kZS50eXBlID09PSAnbXlzdGVyeScpIHtcbiAgICAgIHRoaXMub25NeXN0ZXJ5VGFwKG5vZGVWaWV3KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZWxlY3RlZE5vZGUuc2V0KG5vZGVWaWV3KTtcbiAgfVxuXG4gIGRpc21pc3NFbmNvdW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZE5vZGUuc2V0KG51bGwpO1xuICB9XG5cbiAgY29uZmlybVBsYXkoKTogdm9pZCB7XG4gICAgY29uc3Qgbm9kZVZpZXcgPSB0aGlzLnNlbGVjdGVkTm9kZSgpO1xuICAgIGlmICghbm9kZVZpZXcpIHJldHVybjtcbiAgICB0aGlzLnNlbGVjdGVkTm9kZS5zZXQobnVsbCk7XG4gICAgdm9pZCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbQURWRU5UVVJFX1JPVVRFX0JBU0VdLCB7XG4gICAgICBxdWVyeVBhcmFtczoge1xuICAgICAgICBhZHZlbnR1cmVOb2RlOiBub2RlVmlldy5ub2RlLmlkLFxuICAgICAgICBwcm9maWxlSWQ6IG5vZGVWaWV3Lm5vZGUucHJvZmlsZUlkLFxuICAgICAgICBkaWZmaWN1bHR5OiBub2RlVmlldy5ub2RlLmRpZmZpY3VsdHksXG4gICAgICAgIGJvYXJkU2l6ZTogbm9kZVZpZXcubm9kZS5ib2FyZFNpemUgPz8gNixcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIG9uUmVzdFRhcChub2RlVmlldzogQWR2ZW50dXJlTm9kZVZpZXcpOiB2b2lkIHtcbiAgICBpZiAobm9kZVZpZXcuc3RhdHVzID09PSAnY29tcGxldGVkJykgcmV0dXJuO1xuICAgIHZvaWQgdGhpcy5wcm9ncmVzc1NlcnZpY2UucmVjb3JkTm9kZUNvbXBsZXRlZChub2RlVmlldy5ub2RlLmlkLCAxKS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMudG9hc3Quc2hvdyh7IG1lc3NhZ2U6IHRoaXMudCgnY2hlc3NpbWFsc0FkdmVudHVyZVJlc3REb25lJyksIGNvbG9yOiAnZGFyaycsIGR1cmF0aW9uOiAyNTAwIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvbk15c3RlcnlUYXAobm9kZVZpZXc6IEFkdmVudHVyZU5vZGVWaWV3KTogdm9pZCB7XG4gICAgY29uc3QgYWN0ID0gQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUy5maW5kKGEgPT4gYS5pZCA9PT0gbm9kZVZpZXcubm9kZS5hY3RJZCk7XG4gICAgY29uc3QgYmF0dGxlTm9kZXMgPSBhY3Q/Lm5vZGVzLmZpbHRlcihuID0+IG4udHlwZSA9PT0gJ2JhdHRsZScgJiYgbi5wcm9maWxlSWQpID8/IFtdO1xuICAgIGlmICghYmF0dGxlTm9kZXMubGVuZ3RoKSByZXR1cm47XG4gICAgY29uc3QgcGljayA9IGJhdHRsZU5vZGVzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGJhdHRsZU5vZGVzLmxlbmd0aCldO1xuICAgIHRoaXMudG9hc3Quc2hvdyh7IG1lc3NhZ2U6IHRoaXMudCgnY2hlc3NpbWFsc0FkdmVudHVyZU15c3RlcnlSZXZlYWwnKSwgY29sb3I6ICdkYXJrJywgZHVyYXRpb246IDIwMDAgfSk7XG4gICAgdm9pZCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbQURWRU5UVVJFX1JPVVRFX0JBU0VdLCB7XG4gICAgICBxdWVyeVBhcmFtczoge1xuICAgICAgICBhZHZlbnR1cmVOb2RlOiBub2RlVmlldy5ub2RlLmlkLFxuICAgICAgICBwcm9maWxlSWQ6IHBpY2sucHJvZmlsZUlkLFxuICAgICAgICBkaWZmaWN1bHR5OiBwaWNrLmRpZmZpY3VsdHksXG4gICAgICAgIGJvYXJkU2l6ZTogcGljay5ib2FyZFNpemUgPz8gNixcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBnb0JhY2soKTogdm9pZCB7XG4gICAgdm9pZCB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcvbWluaS1nYW1lcy9jaGVzc2ltYWxzJykuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKTtcbiAgfVxufVxuIl19
427
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlc3NpbWFscy1hZHZlbnR1cmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9taW5pLWdhbWVzL2NoZXNzaW1hbHMtYWR2ZW50dXJlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUNMLHlCQUF5QixFQUN6QixzQkFBc0IsRUFDdEIsd0JBQXdCLEdBQ3pCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7O0FBc0I3RixNQUFNLG9CQUFvQixHQUFHLHdCQUF3QixDQUFDO0FBcW9CdEQsTUFBTSxPQUFPLDRCQUE0QjtJQTBDdkM7UUF6Q2lCLFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0IsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixvQkFBZSxHQUFHLE1BQU0sQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FB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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJb25CdXR0b24sIElvbkljb24gfSBmcm9tICdAaW9uaWMvYW5ndWxhci9zdGFuZGFsb25lJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2kxOG4nO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdG9hc3Quc2VydmljZSc7XG5pbXBvcnQgeyBNSU5JX0dBTUVTX0kxOE4gfSBmcm9tICcuL21pbmktZ2FtZXMuaTE4bic7XG5pbXBvcnQge1xuICBDSEVTU0lNQUxTX0FEVkVOVFVSRV9BQ1RTLFxuICBhZHZlbnR1cmVBY3RJc1VubG9ja2VkLFxuICBhZHZlbnR1cmVOb2RlSXNBdmFpbGFibGUsXG59IGZyb20gJy4vY2hlc3NpbWFscy1hZHZlbnR1cmUtZGF0YSc7XG5pbXBvcnQgeyBDaGVzc2ltYWxzQWR2ZW50dXJlUHJvZ3Jlc3NTZXJ2aWNlIH0gZnJvbSAnLi9jaGVzc2ltYWxzLWFkdmVudHVyZS1wcm9ncmVzcy5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIENoZXNzaW1hbHNBZHZlbnR1cmVBY3QsXG4gIENoZXNzaW1hbHNBZHZlbnR1cmVOb2RlLFxuICBDaGVzc2ltYWxzQWR2ZW50dXJlTm9kZVN0YXR1cyxcbiAgQ2hlc3NpbWFsc0FkdmVudHVyZVByb2dyZXNzLFxufSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEFkdmVudHVyZU5vZGVWaWV3IHtcbiAgbm9kZTogQ2hlc3NpbWFsc0FkdmVudHVyZU5vZGU7XG4gIHN0YXR1czogQ2hlc3NpbWFsc0FkdmVudHVyZU5vZGVTdGF0dXM7XG4gIHN0YXJzOiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBBZHZlbnR1cmVBY3RWaWV3IHtcbiAgYWN0OiBDaGVzc2ltYWxzQWR2ZW50dXJlQWN0O1xuICB1bmxvY2tlZDogYm9vbGVhbjtcbiAgbm9kZXM6IEFkdmVudHVyZU5vZGVWaWV3W107XG4gIGNvbXBsZXRlZENvdW50OiBudW1iZXI7XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbn1cblxuY29uc3QgQURWRU5UVVJFX1JPVVRFX0JBU0UgPSAnL21pbmktZ2FtZXMvY2hlc3NpbWFscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1jaGVzc2ltYWxzLWFkdmVudHVyZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzLCBJb25CdXR0b24sIElvbkljb25dLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJhZHZlbnR1cmUtaHViXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9fYmFja1wiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiZ29CYWNrKClcIj5cbiAgICAgICAge3sgdCgnY2hlc3NpbWFsc0JhY2tUb01lbnUnKSB9fVxuICAgICAgPC9idXR0b24+XG5cbiAgICAgIDxoZWFkZXIgY2xhc3M9XCJhZHZlbnR1cmUtaHViX19oZWFkZXJcIj5cbiAgICAgICAgPGltZ1xuICAgICAgICAgIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9faGVyb1wiXG4gICAgICAgICAgc3JjPVwiYXNzZXRzL2dhbWVzL2NoZXNzaW1hbHMvYWR2ZW50dXJlL2FkdmVudHVyZS1oZXJvLnBuZ1wiXG4gICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHAgY2xhc3M9XCJhZHZlbnR1cmUtaHViX19leWVicm93XCI+e3sgdCgnY2hlc3NpbWFsc0FkdmVudHVyZUV5ZWJyb3cnKSB9fTwvcD5cbiAgICAgICAgPGgxIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9fdGl0bGVcIj57eyB0KCdjaGVzc2ltYWxzQWR2ZW50dXJlVGl0bGUnKSB9fTwvaDE+XG4gICAgICAgIDxwIGNsYXNzPVwiYWR2ZW50dXJlLWh1Yl9fc3VidGl0bGVcIj57eyB0KCdjaGVzc2ltYWxzQWR2ZW50dXJlU3VidGl0bGUnKSB9fTwvcD5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1odWJfX3N0YXJzXCI+XG4gICAgICAgICAgPGlvbi1pY29uIG5hbWU9XCJzdGFyXCIgLz5cbiAgICAgICAgICA8c3Bhbj57eyB0b3RhbFN0YXJzKCkgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9oZWFkZXI+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJhZHZlbnR1cmUtaHViX19hY3RzXCI+XG4gICAgICAgIEBmb3IgKGFjdFZpZXcgb2YgYWN0Vmlld3MoKTsgdHJhY2sgYWN0Vmlldy5hY3QuaWQpIHtcbiAgICAgICAgICA8c2VjdGlvblxuICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtYWN0XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ2FkdmVudHVyZS1hY3QtLWxvY2tlZCc6ICFhY3RWaWV3LnVubG9ja2VkLFxuICAgICAgICAgICAgICAnYWR2ZW50dXJlLWFjdC0tZG9uZSc6IGFjdFZpZXcuY29tcGxldGVkQ291bnQgPT09IGFjdFZpZXcudG90YWxDb3VudCAmJiBhY3RWaWV3LnVubG9ja2VkLFxuICAgICAgICAgICAgfVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1hY3RfX2hlYWRcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9faGVhZC1iZ1wiXG4gICAgICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgYWN0QmdTcmMoYWN0Vmlldy5hY3QuaWQpICsgJyknXCJcbiAgICAgICAgICAgICAgPjwvZGl2PlxuICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtYWN0X19pY29uXCJcbiAgICAgICAgICAgICAgICBbc3JjXT1cImFjdEFzc2V0U3JjKGFjdFZpZXcuYWN0LmlkKVwiXG4gICAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1hY3RfX21ldGFcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJhZHZlbnR1cmUtYWN0X19uYW1lXCI+e3sgdChhY3RWaWV3LmFjdC50aXRsZUtleSkgfX08L2gyPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fZGVzY1wiPnt7IHQoYWN0Vmlldy5hY3QuZGVzY3JpcHRpb25LZXkpIH19PC9wPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgQGlmICghYWN0Vmlldy51bmxvY2tlZCkge1xuICAgICAgICAgICAgICAgIDxpb24taWNvbiBuYW1lPVwibG9jay1jbG9zZWQtb3V0bGluZVwiIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fbG9ja1wiIC8+XG4gICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fcHJvZ3Jlc3NcIj4ge3sgYWN0Vmlldy5jb21wbGV0ZWRDb3VudCB9fS97eyBhY3RWaWV3LnRvdGFsQ291bnQgfX0gPC9zcGFuPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIEBpZiAoYWN0Vmlldy51bmxvY2tlZCAmJiBhY3RWaWV3LmFjdC5sb3JlS2V5KSB7XG4gICAgICAgICAgICAgIDxwIGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fbG9yZVwiPnt7IHQoYWN0Vmlldy5hY3QubG9yZUtleSkgfX08L3A+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpZiAoYWN0Vmlldy51bmxvY2tlZCkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWR2ZW50dXJlLWFjdF9fbm9kZXNcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChub2RlVmlldyBvZiBhY3RWaWV3Lm5vZGVzOyB0cmFjayBub2RlVmlldy5ub2RlLmlkKSB7XG4gICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWR2ZW50dXJlLW5vZGVcIlxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgJ2FkdmVudHVyZS1ub2RlLS1hdmFpbGFibGUnOiBub2RlVmlldy5zdGF0dXMgPT09ICdhdmFpbGFibGUnLFxuICAgICAgICAgICAgICAgICAgICAgICdhZHZlbnR1cmUtbm9kZS0tY29tcGxldGVkJzogbm9kZVZpZXcuc3RhdHVzID09PSAnY29tcGxldGVkJyxcbiAgICAgICAgICAgICAgICAgICAgICAnYWR2ZW50dXJlLW5vZGUtLWxvY2tlZCc6IG5vZGVWaWV3LnN0YXR1cyA9PT0gJ2xvY2tlZCcsXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwibm9kZVZpZXcuc3RhdHVzID09PSAnbG9ja2VkJ1wiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbk5vZGVUYXAobm9kZVZpZXcpXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAobm9kZVZpZXcubm9kZS5wcm9maWxlSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19hdmF0YXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJhdmF0YXJTcmMobm9kZVZpZXcubm9kZS5wcm9maWxlSWQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthbHRdPVwidChub2RlVmlldy5ub2RlLnRpdGxlS2V5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtbm9kZV9faWNvbi1pbWdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCJub2RlQXNzZXRTcmMobm9kZVZpZXcubm9kZS50eXBlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYWx0XT1cInQobm9kZVZpZXcubm9kZS50aXRsZUtleSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIlxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZHZlbnR1cmUtbm9kZV9fbGFiZWxcIj57eyB0KG5vZGVWaWV3Lm5vZGUudGl0bGVLZXkpIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19zdGFyc1wiPlxuICAgICAgICAgICAgICAgICAgICAgIEBmb3IgKGkgb2YgWzAsIDEsIDJdOyB0cmFjayBpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW9uLWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgW25hbWVdPVwibm9kZVZpZXcuc3RhcnMgPiBpID8gJ3N0YXInIDogJ3N0YXItb3V0bGluZSdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19zdGFyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnYWR2ZW50dXJlLW5vZGVfX3N0YXItLWZpbGxlZCc6IG5vZGVWaWV3LnN0YXJzID4gaSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAobm9kZVZpZXcubm9kZS50eXBlID09PSAnYm9zcycpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkdmVudHVyZS1ub2RlX19iYWRnZVwiPnt7IHQoJ2NoZXNzaW1hbHNBZHZlbnR1cmVCb3NzJykgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoc2VsZWN0ZWROb2RlKCk7IGFzIGVuYykge1xuICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX2JhY2tkcm9wXCIgKGNsaWNrKT1cImRpc21pc3NFbmNvdW50ZXIoKVwiPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX2Nsb3NlXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJkaXNtaXNzRW5jb3VudGVyKClcIj7inJU8L2J1dHRvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX3JpdmFsXCI+XG4gICAgICAgICAgQGlmIChlbmMubm9kZS5wcm9maWxlSWQpIHtcbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgY2xhc3M9XCJhZHZlbnR1cmUtZW5jb3VudGVyX19hdmF0YXJcIlxuICAgICAgICAgICAgICBbc3JjXT1cImF2YXRhclNyYyhlbmMubm9kZS5wcm9maWxlSWQpXCJcbiAgICAgICAgICAgICAgW2FsdF09XCJ0KGVuYy5ub2RlLnRpdGxlS2V5KVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX2ljb24taW1nXCJcbiAgICAgICAgICAgICAgW3NyY109XCJub2RlQXNzZXRTcmMoZW5jLm5vZGUudHlwZSlcIlxuICAgICAgICAgICAgICBbYWx0XT1cInQoZW5jLm5vZGUudGl0bGVLZXkpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZHZlbnR1cmUtZW5jb3VudGVyX19pbmZvXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX25hbWVcIj57eyB0KGVuYy5ub2RlLnRpdGxlS2V5KSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIEBpZiAoZW5jLm5vZGUudHlwZSA9PT0gJ2Jvc3MnKSB7XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWR2ZW50dXJlLWVuY291bnRlcl9fYm9zcy1jaGlwXCI+e3sgdCgnY2hlc3NpbWFsc0FkdmVudHVyZUJvc3MnKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIEBpZiAoZW5jLm5vZGUucXVvdGVLZXkpIHtcbiAgICAgICAgICA8cCBjbGFzcz1cImFkdmVudHVyZS1lbmNvdW50ZXJfX3F1b3RlXCI+XCJ7eyB0KGVuYy5ub2RlLnF1b3RlS2V5KSB9fVwiPC9wPlxuICAgICAgICB9XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhZHZlbnR1cmUtZW5jb3VudGVyX19wbGF5XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjb25maXJtUGxheSgpXCI+XG4gICAgICAgICAge3sgdCgnY2hlc3NpbWFsc0FkdmVudHVyZUNoYWxsZW5nZScpIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgfVxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAvKiDilIDilIAgQ2hlc3NpbWFscyB0b2tlbnMg4oCUIGlkw6ludGljb3MgYSAuY2hlc3NpbWFscy1zaGVsbCBkZWwgZ2FtZSDilIDilIAgKi9cbiAgICAgIDpob3N0IHtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXBhbmVsOiAjZmZmZmZmO1xuICAgICAgICAtLWNoZXNzaW1hbHMtc3VyZmFjZTogI2ZmZmFmMTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLWJvcmRlcjogcmdiYSg0NiwgNTgsIDQ0LCAwLjE4KTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXRleHQ6ICMyZTNhMmM7XG4gICAgICAgIC0tY2hlc3NpbWFscy1tdXRlZDogIzUxNjQzZDtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNvZnQ6IHJnYmEoMTExLCAxMjIsIDYwLCAwLjEpO1xuICAgICAgICAtLWNoZXNzaW1hbHMtcHJpbWFyeTogIzJlNmYzZTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiOiA0NiwgMTExLCA2MjtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNlY29uZGFyeTogI2E4YTA2YTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNlY29uZGFyeS1yZ2I6IDE2OCwgMTYwLCAxMDY7XG4gICAgICAgIC0tY2hlc3NpbWFscy1zZWxlY3RlZDogIzM3ZjI4YTtcbiAgICAgICAgLS1jaGVzc2ltYWxzLXNlbGVjdGVkLXJnYjogNTUsIDI0MiwgMTM4O1xuICAgICAgICAtLWNoZXNzaW1hbHMtbWFnaWM6ICNmN2Q0NWE7XG4gICAgICAgIC0tY2hlc3NpbWFscy1tYWdpYy1yZ2I6IDI0NywgMjEyLCA5MDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAxLjEyNXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogbWluKDEwMCUsIDYwcmVtKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgIDpob3N0IHtcbiAgICAgICAgICAtLWNoZXNzaW1hbHMtcGFuZWw6ICMxNzIxMTY7XG4gICAgICAgICAgLS1jaGVzc2ltYWxzLXN1cmZhY2U6ICMwZjE3MGY7XG4gICAgICAgICAgLS1jaGVzc2ltYWxzLWJvcmRlcjogcmdiYSgyNDIsIDIzMCwgMjEzLCAwLjIpO1xuICAgICAgICAgIC0tY2hlc3NpbWFscy10ZXh0OiAjZjZmM2U5O1xuICAgICAgICAgIC0tY2hlc3NpbWFscy1tdXRlZDogI2M4Y2ZiMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQmFjayBsaW5rIOKAlCBtaXNtbyBlc3RpbG8gcXVlIC5jaGVzc2ltYWxzLWJhY2stbGluayBlbiBlbCBnYW1lIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1odWJfX2JhY2sge1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLWNoZXNzaW1hbHMtcHJpbWFyeS1yZ2IpLCAwLjE2KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgIHBhZGRpbmc6IDAuNDVyZW0gMC43MnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgICBmb250OiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5NTA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEhlcm8gYmFubmVyIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1odWJfX2hlcm8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxNiAvIDc7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEhlYWRlciDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtaHViX19oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMC41cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtaHViX19leWVicm93IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tdXRlZCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuMzc1cmVtO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWh1Yl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuNXJlbSwgNXZ3LCAycmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMC4zNzVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWh1Yl9fc3VidGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tdXRlZCk7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtaHViX19zdGFycyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1zdXJmYWNlKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiA0cHggMTRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tYWdpYyk7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtaHViX19zdGFycyBpb24taWNvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLW1hZ2ljKTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQWN0cyDigJQgZ3JpZCBjb2x1bW4gKGhlcmVkYSBnYXAgZGVsIDpob3N0KSDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtaHViX19hY3RzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAwLjg3NXJlbTtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEFjdCBjYXJkIOKAlCBpZ3VhbCBxdWUgLmNoZXNzaW1hbHMtb3B0aW9ucyDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtYWN0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjEyNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtYWN0LS1sb2NrZWQge1xuICAgICAgICBvcGFjaXR5OiAwLjU1O1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdC0tZG9uZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC41KTtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1hY3RfX2hlYWQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jaGVzc2ltYWxzLWJvcmRlcik7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgIC8qIEFjdCBiYWNrZ3JvdW5kIOKAlCBzdWJ0aWwgYW1iaWVudCBsYXllciAqL1xuICAgICAgLmFkdmVudHVyZS1hY3RfX2hlYWQtYmcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuXG4gICAgICAvKiBBY3QgaWNvbiBpbWFnZSDigJQgcmVlbXBsYXphIGVtb2ppICovXG4gICAgICAuYWR2ZW50dXJlLWFjdF9faWNvbiB7XG4gICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fbWV0YSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IDAgMCAycHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fZGVzYyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy1tdXRlZCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtYWN0X19sb2NrIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fcHJvZ3Jlc3Mge1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgTm9kZXMgZ3JpZCDigJQgbWlubWF4KDAsIDFmcikgcHJldmllbmUgb3ZlcmZsb3cg4pSA4pSAICovXG4gICAgICAuYWR2ZW50dXJlLWFjdF9fbm9kZXMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIGdyaWQtYXV0by1yb3dzOiAxZnI7XG4gICAgICAgIGdhcDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgTm9kZSBjYXJkIOKAlCBtaXNtbyBwYXRyw7NuIHF1ZSAuY2hlc3NpbWFscy1ob21lLWFjdGlvbiDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAwLjM3NXJlbSAwLjYyNXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC4yMik7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxOCUgMTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjIpLCB0cmFuc3BhcmVudCAyMiUpLFxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIDEzNWRlZyxcbiAgICAgICAgICAgIHJnYmEodmFyKC0tY2hlc3NpbWFscy1wcmltYXJ5LXJnYiksIDAuMDYpLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlY29uZGFyeS1yZ2IpLCAwLjA0KVxuICAgICAgICAgICksXG4gICAgICAgICAgdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgIHRyYW5zZm9ybSAwLjEycyBlYXNlLFxuICAgICAgICAgIGJvcmRlci1jb2xvciAwLjEycyBlYXNlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGU6YWN0aXZlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk3KTtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1ub2RlLS1hdmFpbGFibGUge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEodmFyKC0tY2hlc3NpbWFscy1wcmltYXJ5LXJnYiksIDAuNik7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxOCUgMTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzQpLCB0cmFuc3BhcmVudCAyMiUpLFxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgIDEzNWRlZyxcbiAgICAgICAgICAgIHJnYmEodmFyKC0tY2hlc3NpbWFscy1wcmltYXJ5LXJnYiksIDAuMTIpLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlY29uZGFyeS1yZ2IpLCAwLjA3KVxuICAgICAgICAgICksXG4gICAgICAgICAgdmFyKC0tY2hlc3NpbWFscy1wYW5lbCk7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtbm9kZS0tY29tcGxldGVkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNoZXNzaW1hbHMtc2VsZWN0ZWQtcmdiKSwgMC41KTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAxMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NCksIHRyYW5zcGFyZW50IDIyJSksXG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgMTM1ZGVnLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlbGVjdGVkLXJnYiksIDAuMDgpLFxuICAgICAgICAgICAgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC4wNClcbiAgICAgICAgICApLFxuICAgICAgICAgIHZhcigtLWNoZXNzaW1hbHMtcGFuZWwpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGUtLWxvY2tlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQXZhdGFyIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1ub2RlX19hdmF0YXIge1xuICAgICAgICB3aWR0aDogMi43NXJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaGVzc2ltYWxzLWJvcmRlcik7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBmaWx0ZXI6IHZhcigtLWNoZXNzaW1hbHMtYW5pbWFsLWZhY2UtZmlsdGVyLCBub25lKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hlc3NpbWFscy1hbmltYWwtZmFjZS1iZywgI2ZmZmRmNyk7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtbm9kZS0tYXZhaWxhYmxlIC5hZHZlbnR1cmUtbm9kZV9fYXZhdGFyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLWNoZXNzaW1hbHMtcHJpbWFyeS1yZ2IpLCAwLjUpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGUtLWNvbXBsZXRlZCAuYWR2ZW50dXJlLW5vZGVfX2F2YXRhciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXNlbGVjdGVkLXJnYiksIDAuNSk7XG4gICAgICB9XG5cbiAgICAgIC8qIOKUgOKUgCBOb2RlIGljb24gaW1hZ2UgKGRlc2NhbnNvL21pc3RlcmlvKSDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZV9faWNvbi1pbWcge1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qIOKUgOKUgCBMYWJlbCDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZV9fbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLXRleHQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC8qIOKUgOKUgCBTdGFycyDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtbm9kZV9fc3RhcnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDFweDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1ub2RlX19zdGFyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLW5vZGVfX3N0YXItLWZpbGxlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLW1hZ2ljKTtcbiAgICAgIH1cblxuICAgICAgLyog4pSA4pSAIEJvc3MgY2hpcCDigJQgaW5saW5lIGVuIGVsIGZsb3cgZGVsIG5vZG8g4pSA4pSAICovXG4gICAgICAuYWR2ZW50dXJlLW5vZGVfX2JhZGdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDAuNTYyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICM3YTUyMDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjQ3LCAyMTIsIDkwLCAwLjc1KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNDcsIDIxMiwgOTAsIDAuOSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICBwYWRkaW5nOiAxcHggNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgQWN0IGxvcmUg4oCUIHBhcnJhZm8gbmFycmF0aXZvIGJham8gZWwgZW5jYWJlemFkbyBkZWwgYWN0byDilIDilIAgKi9cbiAgICAgIC5hZHZlbnR1cmUtYWN0X19sb3JlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjYyNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgY29sb3I6IHZhcigtLWNoZXNzaW1hbHMtbXV0ZWQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBvcGFjaXR5OiAwLjg4O1xuICAgICAgfVxuXG4gICAgICAvKiDilIDilIAgRW5jb3VudGVyIHBhbmVsIOKAlCBmaWpvIGVuIGxhIHBhcnRlIGluZmVyaW9yIOKUgOKUgCAqL1xuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2JhY2tkcm9wIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gICAgICAgIGFuaW1hdGlvbjogYWR2LWZhZGUtaW4gMC4xOHMgZWFzZTtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDIxO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGVzc2ltYWxzLXBhbmVsKTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNoZXNzaW1hbHMtYm9yZGVyKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbSAxLjI1cmVtIDAgMDtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjI1cmVtIGNhbGMoMS4yNXJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMC44NzVyZW07XG4gICAgICAgIGFuaW1hdGlvbjogYWR2LXNsaWRlLXVwIDAuMjJzIGN1YmljLWJlemllcigwLjM0LCAxLjMsIDAuNjQsIDEpO1xuICAgICAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2Nsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGVzc2ltYWxzLXN1cmZhY2UpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGVzc2ltYWxzLWJvcmRlcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jaGVzc2ltYWxzLW11dGVkKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX3JpdmFsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWVuY291bnRlcl9fYXZhdGFyIHtcbiAgICAgICAgd2lkdGg6IDMuMjVyZW07XG4gICAgICAgIGhlaWdodDogMy4yNXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY2hlc3NpbWFscy1ib3JkZXIpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZmlsdGVyOiB2YXIoLS1jaGVzc2ltYWxzLWFuaW1hbC1mYWNlLWZpbHRlciwgbm9uZSk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoZXNzaW1hbHMtYW5pbWFsLWZhY2UtYmcsICNmZmZkZjcpO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWVuY291bnRlcl9faWNvbi1pbWcge1xuICAgICAgICB3aWR0aDogMy4yNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAzLjI1cmVtO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2luZm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtZW5jb3VudGVyX19uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy10ZXh0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX2Jvc3MtY2hpcCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAwLjU2MjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjN2E1MjAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0NywgMjEyLCA5MCwgMC43NSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyMTIsIDkwLCAwLjkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgcGFkZGluZzogMXB4IDVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgIH1cblxuICAgICAgLmFkdmVudHVyZS1lbmNvdW50ZXJfX3F1b3RlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hlc3NpbWFscy10ZXh0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNoZXNzaW1hbHMtc3VyZmFjZSk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgcmdiYSh2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnktcmdiKSwgMC41KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwLjVyZW0gMC41cmVtIDA7XG4gICAgICB9XG5cbiAgICAgIC5hZHZlbnR1cmUtZW5jb3VudGVyX19wbGF5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGVzc2ltYWxzLXByaW1hcnkpO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEycyBlYXNlO1xuICAgICAgfVxuXG4gICAgICAuYWR2ZW50dXJlLWVuY291bnRlcl9fcGxheTphY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAwLjgyO1xuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIGFkdi1mYWRlLWluIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAa2V5ZnJhbWVzIGFkdi1zbGlkZS11cCB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hlc3NpbWFsc0FkdmVudHVyZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvZ3Jlc3NTZXJ2aWNlID0gaW5qZWN0KENoZXNzaW1hbHNBZHZlbnR1cmVQcm9ncmVzc1NlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IHRvYXN0ID0gaW5qZWN0KFRvYXN0U2VydmljZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwcm9ncmVzcyA9IHRvU2lnbmFsPENoZXNzaW1hbHNBZHZlbnR1cmVQcm9ncmVzcyB8IHVuZGVmaW5lZD4odGhpcy5wcm9ncmVzc1NlcnZpY2Uud2F0Y2hQcm9ncmVzcygpLCB7XG4gICAgaW5pdGlhbFZhbHVlOiB1bmRlZmluZWQsXG4gIH0pO1xuXG4gIHJlYWRvbmx5IHNlbGVjdGVkQWN0SWQgPSBzaWduYWw8c3RyaW5nPignYWN0MScpO1xuICByZWFkb25seSBzZWxlY3RlZE5vZGUgPSBzaWduYWw8QWR2ZW50dXJlTm9kZVZpZXcgfCBudWxsPihudWxsKTtcblxuICByZWFkb25seSB0b3RhbFN0YXJzID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9ncmVzcygpPy50b3RhbFN0YXJzID8/IDApO1xuXG4gIHJlYWRvbmx5IGFjdFZpZXdzID0gY29tcHV0ZWQ8QWR2ZW50dXJlQWN0Vmlld1tdPigoKSA9PiB7XG4gICAgY29uc3QgcHJvZyA9IHRoaXMucHJvZ3Jlc3MoKTtcbiAgICBjb25zdCBjb21wbGV0ZWQgPSBwcm9nPy5jb21wbGV0ZWROb2RlcyA/PyB7fTtcbiAgICByZXR1cm4gQ0hFU1NJTUFMU19BRFZFTlRVUkVfQUNUUy5tYXAoYWN0ID0+IHtcbiAgICAgIGNvbnN0IHVubG9ja2VkID0gYWR2ZW50dXJlQWN0SXNVbmxvY2tlZChhY3QuaWQsIGNvbXBsZXRlZCk7XG4gICAgICBjb25zdCBub2RlczogQWR2ZW50dXJlTm9kZVZpZXdbXSA9IGFjdC5ub2Rlcy5tYXAobm9kZSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGNvbXBsZXRlZFtub2RlLmlkXTtcbiAgICAgICAgbGV0IHN0YXR1czogQ2hlc3NpbWFsc0FkdmVudHVyZU5vZGVTdGF0dXM7XG4gICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICBzdGF0dXMgPSAnY29tcGxldGVkJztcbiAgICAgICAgfSBlbHNlIGlmICghdW5sb2NrZWQgfHwgIWFkdmVudHVyZU5vZGVJc0F2YWlsYWJsZShub2RlLmlkLCBjb21wbGV0ZWQpKSB7XG4gICAgICAgICAgc3RhdHVzID0gJ2xvY2tlZCc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3RhdHVzID0gJ2F2YWlsYWJsZSc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgbm9kZSwgc3RhdHVzLCBzdGFyczogcmVzdWx0Py5zdGFycyA/PyAwIH07XG4gICAgICB9KTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFjdCxcbiAgICAgICAgdW5sb2NrZWQsXG4gICAgICAgIG5vZGVzLFxuICAgICAgICBjb21wbGV0ZWRDb3VudDogbm9kZXMuZmlsdGVyKG4gPT4gbi5zdGF0dXMgPT09ICdjb21wbGV0ZWQnKS5sZW5ndGgsXG4gICAgICAgIHRvdGFsQ291bnQ6IG5vZGVzLmxlbmd0aCxcbiAgICAgIH07XG4gICAgfSk7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmICghdGhpcy5pMThuLmhhc05hbWVzcGFjZSgnTWluaUdhbWVzJykpIHtcbiAgICAgIHRoaXMuaTE4bi5yZWdpc3RlckNvbnRlbnQoJ01pbmlHYW1lcycsIE1JTklfR0FNRVNfSTE4Tik7XG4gICAgfVxuICB9XG5cbiAgdChrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaTE4bi50KGtleSwgJ01pbmlHYW1lcycpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBBRFZfQUNUX1RIRU1FUzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICBhY3QxOiAnc2F2YW5uYScsXG4gICAgYWN0MjogJ2p1bmdsZScsXG4gICAgYWN0MzogJ2FyY3RpYycsXG4gICAgYWN0NDogJ2NvbGlzZXVtJyxcbiAgfTtcblxuICBhdmF0YXJTcmMocHJvZmlsZUlkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgYXNzZXRzL2dhbWVzL2NoZXNzaW1hbHMvY2hhbGxlbmdlLWF2YXRhcnMvJHtwcm9maWxlSWR9LnBuZ2A7XG4gIH1cblxuICBhY3RBc3NldFNyYyhhY3RJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGFzc2V0cy9nYW1lcy9jaGVzc2ltYWxzL2FkdmVudHVyZS9hY3RzLyR7dGhpcy5BRFZfQUNUX1RIRU1FU1thY3RJZF0gPz8gYWN0SWR9LnBuZ2A7XG4gIH1cblxuICBhY3RCZ1NyYyhhY3RJZDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGFzc2V0cy9nYW1lcy9jaGVzc2ltYWxzL2FkdmVudHVyZS9iYWNrZ3JvdW5kcy8ke3RoaXMuQURWX0FDVF9USEVNRVNbYWN0SWRdID8/IGFjdElkfS5wbmdgO1xuICB9XG5cbiAgbm9kZUFzc2V0U3JjKHR5cGU6IENoZXNzaW1hbHNBZHZlbnR1cmVOb2RlWyd0eXBlJ10pOiBzdHJpbmcge1xuICAgIHJldHVybiBgYXNzZXRzL2dhbWVzL2NoZXNzaW1hbHMvYWR2ZW50dXJlL25vZGVzLyR7dHlwZX0ucG5nYDtcbiAgfVxuXG4gIG9uTm9kZVRhcChub2RlVmlldzogQWR2ZW50dXJlTm9kZVZpZXcpOiB2b2lkIHtcbiAgICBpZiAobm9kZVZpZXcuc3RhdHVzID09PSAnbG9ja2VkJykgcmV0dXJuO1xuICAgIGlmIChub2RlVmlldy5ub2RlLnR5cGUgPT09ICdyZXN0Jykge1xuICAgICAgdGhpcy5vblJlc3RUYXAobm9kZVZpZXcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAobm9kZVZpZXcubm9kZS50eXBlID09PSAnbXlzdGVyeScpIHtcbiAgICAgIHRoaXMub25NeXN0ZXJ5VGFwKG5vZGVWaWV3KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZWxlY3RlZE5vZGUuc2V0KG5vZGVWaWV3KTtcbiAgfVxuXG4gIGRpc21pc3NFbmNvdW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZE5vZGUuc2V0KG51bGwpO1xuICB9XG5cbiAgY29uZmlybVBsYXkoKTogdm9pZCB7XG4gICAgY29uc3Qgbm9kZVZpZXcgPSB0aGlzLnNlbGVjdGVkTm9kZSgpO1xuICAgIGlmICghbm9kZVZpZXcpIHJldHVybjtcbiAgICB0aGlzLnNlbGVjdGVkTm9kZS5zZXQobnVsbCk7XG4gICAgdm9pZCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbQURWRU5UVVJFX1JPVVRFX0JBU0VdLCB7XG4gICAgICBxdWVyeVBhcmFtczoge1xuICAgICAgICBhZHZlbnR1cmVOb2RlOiBub2RlVmlldy5ub2RlLmlkLFxuICAgICAgICBwcm9maWxlSWQ6IG5vZGVWaWV3Lm5vZGUucHJvZmlsZUlkLFxuICAgICAgICBkaWZmaWN1bHR5OiBub2RlVmlldy5ub2RlLmRpZmZpY3VsdHksXG4gICAgICAgIGJvYXJkU2l6ZTogbm9kZVZpZXcubm9kZS5ib2FyZFNpemUgPz8gNixcbiAgICAgICAgYWN0SWQ6IG5vZGVWaWV3Lm5vZGUuYWN0SWQsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvblJlc3RUYXAobm9kZVZpZXc6IEFkdmVudHVyZU5vZGVWaWV3KTogdm9pZCB7XG4gICAgaWYgKG5vZGVWaWV3LnN0YXR1cyA9PT0gJ2NvbXBsZXRlZCcpIHJldHVybjtcbiAgICB2b2lkIHRoaXMucHJvZ3Jlc3NTZXJ2aWNlLnJlY29yZE5vZGVDb21wbGV0ZWQobm9kZVZpZXcubm9kZS5pZCwgMSkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLnRvYXN0LnNob3coeyBtZXNzYWdlOiB0aGlzLnQoJ2NoZXNzaW1hbHNBZHZlbnR1cmVSZXN0RG9uZScpLCBjb2xvcjogJ2RhcmsnLCBkdXJhdGlvbjogMjUwMCB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb25NeXN0ZXJ5VGFwKG5vZGVWaWV3OiBBZHZlbnR1cmVOb2RlVmlldyk6IHZvaWQge1xuICAgIGNvbnN0IGFjdCA9IENIRVNTSU1BTFNfQURWRU5UVVJFX0FDVFMuZmluZChhID0+IGEuaWQgPT09IG5vZGVWaWV3Lm5vZGUuYWN0SWQpO1xuICAgIGNvbnN0IGJhdHRsZU5vZGVzID0gYWN0Py5ub2Rlcy5maWx0ZXIobiA9PiBuLnR5cGUgPT09ICdiYXR0bGUnICYmIG4ucHJvZmlsZUlkKSA/PyBbXTtcbiAgICBpZiAoIWJhdHRsZU5vZGVzLmxlbmd0aCkgcmV0dXJuO1xuICAgIGNvbnN0IHBpY2sgPSBiYXR0bGVOb2Rlc1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBiYXR0bGVOb2Rlcy5sZW5ndGgpXTtcbiAgICB0aGlzLnRvYXN0LnNob3coeyBtZXNzYWdlOiB0aGlzLnQoJ2NoZXNzaW1hbHNBZHZlbnR1cmVNeXN0ZXJ5UmV2ZWFsJyksIGNvbG9yOiAnZGFyaycsIGR1cmF0aW9uOiAyMDAwIH0pO1xuICAgIHZvaWQgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW0FEVkVOVFVSRV9ST1VURV9CQVNFXSwge1xuICAgICAgcXVlcnlQYXJhbXM6IHtcbiAgICAgICAgYWR2ZW50dXJlTm9kZTogbm9kZVZpZXcubm9kZS5pZCxcbiAgICAgICAgcHJvZmlsZUlkOiBwaWNrLnByb2ZpbGVJZCxcbiAgICAgICAgZGlmZmljdWx0eTogcGljay5kaWZmaWN1bHR5LFxuICAgICAgICBib2FyZFNpemU6IHBpY2suYm9hcmRTaXplID8/IDYsXG4gICAgICAgIGFjdElkOiBub2RlVmlldy5ub2RlLmFjdElkLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIGdvQmFjaygpOiB2b2lkIHtcbiAgICB2b2lkIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9taW5pLWdhbWVzL2NoZXNzaW1hbHMnKS5jYXRjaCgoKSA9PiB1bmRlZmluZWQpO1xuICB9XG59XG4iXX0=