@tricoteuses/assemblee 1.4.0 → 1.5.0
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.
- package/lib/datasets.d.ts +1 -0
- package/lib/datasets.js +28 -2
- package/lib/datasets.mjs +14 -2
- package/lib/dossiers_legislatifs.js +1 -1
- package/lib/dossiers_legislatifs.mjs +1 -1
- package/lib/file_systems.js +30 -24
- package/lib/file_systems.mjs +4 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.mjs +1 -1
- package/lib/loaders.js +2 -2
- package/lib/loaders.mjs +2 -2
- package/lib/raw_types/debats.d.ts +5 -4
- package/lib/raw_types/debats.js +9 -5
- package/lib/raw_types/debats.mjs +9 -5
- package/lib/raw_types/dossiers_legislatifs.d.ts +2 -0
- package/lib/raw_types/dossiers_legislatifs.js +5 -3
- package/lib/raw_types/dossiers_legislatifs.mjs +5 -3
- package/lib/raw_types/questions.d.ts +1 -1
- package/lib/raw_types/questions.js +2 -2
- package/lib/raw_types/questions.mjs +2 -2
- package/lib/scripts/clean_reorganized_data.js +13 -42
- package/lib/scripts/clean_reorganized_data.mjs +8 -18
- package/lib/scripts/reorganize_data.js +17 -46
- package/lib/scripts/reorganize_data.mjs +8 -18
- package/lib/scripts/retrieve_open_data.js +5 -5
- package/lib/scripts/retrieve_open_data.mjs +4 -4
- package/lib/shared_types/codes_actes.d.ts +129 -342
- package/lib/shared_types/codes_actes.js +212 -243
- package/lib/shared_types/codes_actes.mjs +211 -224
- package/lib/types/debats.d.ts +5 -4
- package/lib/types/debats.js +9 -5
- package/lib/types/debats.mjs +9 -5
- package/lib/types/dossiers_legislatifs.d.ts +2 -0
- package/lib/types/dossiers_legislatifs.js +7 -8
- package/lib/types/dossiers_legislatifs.mjs +8 -9
- package/lib/types/questions.d.ts +1 -1
- package/lib/types/questions.js +2 -2
- package/lib/types/questions.mjs +2 -2
- package/package.json +1 -1
package/lib/datasets.mjs
CHANGED
|
@@ -121,7 +121,7 @@ export const datasets = {
|
|
|
121
121
|
fs.moveSync(path.join(dataDir, "json"), targetDir);
|
|
122
122
|
},
|
|
123
123
|
structure: DatasetStructure.SegmentedFiles,
|
|
124
|
-
title: "Acteurs et organes de la
|
|
124
|
+
title: "Acteurs et organes de la XVIème législature",
|
|
125
125
|
url: "http://data.assemblee-nationale.fr/static/openData/repository/16/amo/deputes_senateurs_ministres_legislature/AMO20_dep_sen_min_tous_mandats_et_organes.json.zip"
|
|
126
126
|
}, {
|
|
127
127
|
// AMO20 (XV)
|
|
@@ -609,4 +609,16 @@ export function masterUrl(filename) {
|
|
|
609
609
|
const [dataset, file] = datasetUrl;
|
|
610
610
|
return `[${file}](https://git.en-root.org/tricoteuses/data.tricoteuses.fr/${dataset}/-/tree/master/${file})`;
|
|
611
611
|
}
|
|
612
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVIYXNoIiwiZnMiLCJwYXRoIiwiTGVnaXNsYXR1cmUiLCJEYXRhc2V0U3RydWN0dXJlIiwiRW5hYmxlZERhdGFzZXRzIiwiZGF0YXNldHMiLCJhY3RldXJzRXRPcmdhbmVzIiwiZmlsZW5hbWUiLCJpZ25vcmVGb3JXZWIiLCJsZWdpc2xhdHVyZSIsIlNlaXplIiwicmVwYWlyWmlwIiwiZGF0YXNldCIsImRhdGFEaXIiLCJ0YXJnZXREaXIiLCJqb2luIiwiZXhpc3RzU3luYyIsInJlbW92ZVN5bmMiLCJtb3ZlU3luYyIsInN0cnVjdHVyZSIsIlNlZ21lbnRlZEZpbGVzIiwidGl0bGUiLCJ1cmwiLCJRdWluemUiLCJRdWF0b3J6ZSIsIlNpbmdsZUZpbGUiLCJBbGwiLCJta2RpclN5bmMiLCJhZ2VuZGFzIiwiYW1lbmRlbWVudHMiLCJkb3NzaWVyc0xlZ2lzbGF0aWZzIiwic2NydXRpbnMiLCJxdWVzdGlvbnMiLCJjb21wdGVzUmVuZHVzU2VhbmNlcyIsImRpcmVjdG9yeTJzY2hlbWEiLCJnZXREYXRhc2V0cyIsInZhbGlkRGF0YXNldCIsImRpciIsImluY2x1ZGVzIiwiZ2V0U2NoZW1hcyIsIk9iamVjdCIsInZhbHVlcyIsImRhdGFzZXREaXJlY3RvcnlTY2hlbWEiLCJkaXJlY3RvcmllcyIsInJlc3VsdHMiLCJkaXJlY3RvcnkiLCJyZSIsImtleXMiLCJSZWdFeHAiLCJleGVjIiwicHVzaCIsImZpbGVEYXRhc2V0VXJsIiwibWF0Y2giLCJmaWxlIiwiZGlmZlVwc3RyZWFtIiwiZGF0YXNldFVybCIsInN1bSIsInVwZGF0ZSIsImRpZ2VzdCIsInRvU3RyaW5nIiwibWFzdGVyVXJsIl0sInNvdXJjZXMiOlsiLi4vc3JjL2RhdGFzZXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUhhc2ggfSBmcm9tIFwiY3J5cHRvXCJcbmltcG9ydCBmcyBmcm9tIFwiZnMtZXh0cmFcIlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuXG5pbXBvcnQgeyBMZWdpc2xhdHVyZSB9IGZyb20gXCIuL3R5cGVzL2xlZ2lzbGF0dXJlc1wiXG5cbmludGVyZmFjZSBEYXRhc2V0IHtcbiAgZmlsZW5hbWU6IHN0cmluZ1xuICBpZ25vcmVGb3JXZWI/OiBib29sZWFuXG4gIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZVxuICByZXBhaXJaaXA/OiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB2b2lkXG4gIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZVxuICB0aXRsZTogc3RyaW5nXG4gIHVybDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YXNldHMge1xuICBhY3RldXJzRXRPcmdhbmVzOiBEYXRhc2V0W11cbiAgYWdlbmRhczogRGF0YXNldFtdXG4gIGFtZW5kZW1lbnRzOiBEYXRhc2V0W11cbiAgZG9zc2llcnNMZWdpc2xhdGlmczogRGF0YXNldFtdXG4gIHNjcnV0aW5zOiBEYXRhc2V0W11cbiAgcXVlc3Rpb25zOiBEYXRhc2V0W11cbiAgY29tcHRlc1JlbmR1c1NlYW5jZXM6IERhdGFzZXRbXVxufVxuXG5leHBvcnQgZW51bSBEYXRhc2V0U3RydWN0dXJlIHtcbiAgU2luZ2xlRmlsZSxcbiAgU2VnbWVudGVkRmlsZXMsXG59XG5cbmV4cG9ydCBlbnVtIEVuYWJsZWREYXRhc2V0cyB7XG4gIE5vbmUgPSAwLFxuICBBY3RldXJzRXRPcmdhbmVzID0gMSA8PCAwLFxuICBBZ2VuZGFzID0gMSA8PCAxLFxuICBBbWVuZGVtZW50cyA9IDEgPDwgMixcbiAgRG9zc2llcnNMZWdpc2xhdGlmcyA9IDEgPDwgMyxcbiAgUGhvdG9zID0gMSA8PCA0LFxuICBTY3J1dGlucyA9IDEgPDwgNSxcbiAgUXVlc3Rpb25zID0gMSA8PCA2LFxuICBDb21wdGVzUmVuZHVzU2VhbmNlcyA9IDEgPDwgNyxcbiAgQWxsID0gQWN0ZXVyc0V0T3JnYW5lcyB8XG4gICAgQWdlbmRhcyB8XG4gICAgQW1lbmRlbWVudHMgfFxuICAgIERvc3NpZXJzTGVnaXNsYXRpZnMgfFxuICAgIFBob3RvcyB8XG4gICAgU2NydXRpbnMgfFxuICAgIFF1ZXN0aW9ucyB8XG4gICAgQ29tcHRlc1JlbmR1c1NlYW5jZXMsXG59XG5cbmV4cG9ydCBjb25zdCBkYXRhc2V0czogRGF0YXNldHMgPSB7XG4gIGFjdGV1cnNFdE9yZ2FuZXM6IFtcbiAgICB7XG4gICAgICAvLyBBTU8xMCAoWFZJKVxuICAgICAgLy9cbiAgICAgIC8vIENvbnRpZW50IGxlcyBkw6lwdXTDqXMgYWN0aWZzXG4gICAgICAvLyAqIGF2ZWMgdG91cyBsZXMgbWFuZGF0cyBlbiBjb3Vyc1xuICAgICAgLy8gKiB5IGNvbXByaXMgYXZlYyBsZXVyIHBhcnRpIHBvbGl0aXF1ZSAodHlwZU9yZ2FuZTogXCJQQVJQT0xcIilcbiAgICAgIC8vICogbWFpcyBzYW5zIGxlcyBtYW5kYXRzIGFjaGV2w6lzICh5IGNvbXByaXMgZGFucyBjZXR0ZSBsw6lnaXNsYXR1cmUpXG4gICAgICAvL1xuICAgICAgLy8gT3JnYW5lcyA6XG4gICAgICAvLyAqIENvbnRpZW50IHNldWxlbWVudCBsZXMgb3JnYW5lcyBjb3JyZXNwb25kYW50cyBhdXggbWFuZGF0cyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGxlIHhzaVR5cGUgZGUgbCdvcmdhbmVcbiAgICAgIC8vICogYXZlYyBkZXMgY29tbWlzc2lvbnMgc8OpbmF0b3JpYWxlcyAocGVybWFuZW50ZXMgZXQgc3DDqWNpYWxlcykgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBkZXMgZMOpbMOpZ2F0aW9ucyBzw6luYXRvcmlhbGVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGdyb3VwZXMgc8OpbmF0b3JpYXV4IGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIG1pbmlzdMOocmVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgbGVzIFByw6lzaWRlbmNlcyBkZSBsYSBSw6lwdWJsaXF1ZSAoeSBjb21wcmlzIFNhcmtvenkpXG4gICAgICAvLyAqIGF2ZWMgbGUgQ29uc2VpbCBjb25zdGl0dXRpb25uZWxcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIGVzdCB1biBzb3VzLWVuc2VtYmxlIMOgIHRvdXMgbGVzIG5pdmVhdXggZHUgZmljaGllciBBTU8yMFxuICAgICAgLy8gKHF1aSBlc3QgbHVpIG3Dqm1lIHVuIHNvdXMtZW5zZW1ibGUgZGUgbCdBTU8zMCkuXG4gICAgICAvLyBJbCBuJ2FwcG9ydGUgZG9uYyBhYnNvbHVtZW50IHJpZW4gcGFyIHJhcHBvcnQgw6AgQU1PMjAgb3UgbCdBTU8zMC5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzEwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfWFZJLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJEw6lwdXTDqXMgYWN0aWZzIGV0IG9yZ2FuZXMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2Ftby9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzL0FNTzEwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXMuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzEwIChYVilcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBsZXMgZMOpcHV0w6lzIGFjdGlmc1xuICAgICAgLy8gKiBhdmVjIHRvdXMgbGVzIG1hbmRhdHMgZW4gY291cnNcbiAgICAgIC8vICogeSBjb21wcmlzIGF2ZWMgbGV1ciBwYXJ0aSBwb2xpdGlxdWUgKHR5cGVPcmdhbmU6IFwiUEFSUE9MXCIpXG4gICAgICAvLyAqIG1haXMgc2FucyBsZXMgbWFuZGF0cyBhY2hldsOpcyAoeSBjb21wcmlzIGRhbnMgY2V0dGUgbMOpZ2lzbGF0dXJlKVxuICAgICAgLy9cbiAgICAgIC8vIE9yZ2FuZXMgOlxuICAgICAgLy8gKiBDb250aWVudCBzZXVsZW1lbnQgbGVzIG9yZ2FuZXMgY29ycmVzcG9uZGFudHMgYXV4IG1hbmRhdHMgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBsZSB4c2lUeXBlIGRlIGwnb3JnYW5lXG4gICAgICAvLyAqIGF2ZWMgZGVzIGNvbW1pc3Npb25zIHPDqW5hdG9yaWFsZXMgKHBlcm1hbmVudGVzIGV0IHNww6ljaWFsZXMpIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGTDqWzDqWdhdGlvbnMgc8OpbmF0b3JpYWxlcyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBncm91cGVzIHPDqW5hdG9yaWF1eCBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBtaW5pc3TDqHJlcyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGxlcyBQcsOpc2lkZW5jZXMgZGUgbGEgUsOpcHVibGlxdWUgKHkgY29tcHJpcyBTYXJrb3p5KVxuICAgICAgLy8gKiBhdmVjIGxlIENvbnNlaWwgY29uc3RpdHV0aW9ubmVsXG4gICAgICAvL1xuICAgICAgLy8gQ2UgZmljaGllciBlc3QgdW4gc291cy1lbnNlbWJsZSDDoCB0b3VzIGxlcyBuaXZlYXV4IGR1IGZpY2hpZXIgQU1PMjBcbiAgICAgIC8vIChxdWkgZXN0IGx1aSBtw6ptZSB1biBzb3VzLWVuc2VtYmxlIGRlIGwnQU1PMzApLlxuICAgICAgLy8gSWwgbidhcHBvcnRlIGRvbmMgYWJzb2x1bWVudCByaWVuIHBhciByYXBwb3J0IMOgIEFNTzIwIG91IGwnQU1PMzAuXG4gICAgICBmaWxlbmFtZTogXCJBTU8xMF9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzX1hWLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiRMOpcHV0w6lzIGFjdGlmcyBldCBvcmdhbmVzIGRlIGxhIFhWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2Ftby9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzL0FNTzEwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzIwIChYVkkpXG4gICAgICAvL1xuICAgICAgLy8gQ29udGllbnQgbGVzIGTDqXB1dMOpcyBkZSBsYSBsw6lnaXNsYXR1cmUsIGFjdGlmcyBvdSBub24gKGludmFsaWTDqXMsIGV0YyksIGxlcyBzw6luYXRldXJzIGFjdHVlbHNcbiAgICAgIC8vIFBvdXIgbGVzIGTDqXB1dMOpcyA6XG4gICAgICAvLyAqIGF2ZWMgdG91cyBsZXVycyBtYW5kYXRzIGRlIGxhIGzDqWdpc2xhdHVyZVxuICAgICAgLy8gKiB5IGNvbXByaXMgbGVzIG1hbmRhdHMgYWNoZXbDqXNcbiAgICAgIC8vICogeSBjb21wcmlzIGxldXJzIHBhcnRpcyBwb2xpdGlxdWVzICAodHlwZU9yZ2FuZTogXCJQQVJQT0xcIilcbiAgICAgIC8vICogbWFpcyBzYW5zIGxlcyBtYW5kYXRzIGRlcyBsw6lnaXNsYXR1cmVzIHByw6ljw6lkZW50ZXMgKHF1aSBzb250IGRhbnMgQU1PNDApXG4gICAgICAvL1xuICAgICAgLy8gQ29udGllbnQgdG91cyBsZXMgb3JnYW5lcyByw6lmw6lyZW5jw6lzIHBhciBsZXMgbWFuZGF0c1xuICAgICAgLy8gKiBhdmVjIGxlIHhzaVR5cGUgZGUgbCdvcmdhbmVcbiAgICAgIC8vICogYXZlYyBkZXMgY29tbWlzc2lvbnMgc8OpbmF0b3JpYWxlcyAocGVybWFuZW50ZXMgZXQgc3DDqWNpYWxlcykgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBkZXMgZMOpbMOpZ2F0aW9ucyBzw6luYXRvcmlhbGVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGdyb3VwZXMgc8OpbmF0b3JpYXV4IGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIG1pbmlzdMOocmVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgbGVzIFByw6lzaWRlbmNlcyBkZSBsYSBSw6lwdWJsaXF1ZSAoeSBjb21wcmlzIFNhcmtvenkpXG4gICAgICAvLyAqIGF2ZWMgbGUgQ29uc2VpbCBjb25zdGl0dXRpb25uZWxcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIGVzdCB1biBzb3VzLWVuc2VtYmxlIMOgIHRvdXMgbGVzIG5pdmVhdXggZHUgZmljaGllciBBTU8zMC5cbiAgICAgIC8vIElsIG4nYXBwb3J0ZSBkb25jIGFic29sdW1lbnQgcmllbiBwYXIgcmFwcG9ydCDDoCBsJ0FNTzMwLlxuICAgICAgZmlsZW5hbWU6IFwiQU1PMjBfZGVwX3Nlbl9taW5fdG91c19tYW5kYXRzX2V0X29yZ2FuZXNfWFZJLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJBY3RldXJzIGV0IG9yZ2FuZXMgZGUgbGEgWFbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvYW1vL2RlcHV0ZXNfc2VuYXRldXJzX21pbmlzdHJlc19sZWdpc2xhdHVyZS9BTU8yMF9kZXBfc2VuX21pbl90b3VzX21hbmRhdHNfZXRfb3JnYW5lcy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgLy8gQU1PMjAgKFhWKVxuICAgICAgLy9cbiAgICAgIC8vIENvbnRpZW50IGxlcyBkw6lwdXTDqXMgZGUgbGEgbMOpZ2lzbGF0dXJlLCBhY3RpZnMgb3Ugbm9uIChpbnZhbGlkw6lzLCBldGMpLCBsZXMgc8OpbmF0ZXVycyBhY3R1ZWxzXG4gICAgICAvLyBQb3VyIGxlcyBkw6lwdXTDqXMgOlxuICAgICAgLy8gKiBhdmVjIHRvdXMgbGV1cnMgbWFuZGF0cyBkZSBsYSBsw6lnaXNsYXR1cmVcbiAgICAgIC8vICogeSBjb21wcmlzIGxlcyBtYW5kYXRzIGFjaGV2w6lzXG4gICAgICAvLyAqIHkgY29tcHJpcyBsZXVycyBwYXJ0aXMgcG9saXRpcXVlcyAgKHR5cGVPcmdhbmU6IFwiUEFSUE9MXCIpXG4gICAgICAvLyAqIG1haXMgc2FucyBsZXMgbWFuZGF0cyBkZXMgbMOpZ2lzbGF0dXJlcyBwcsOpY8OpZGVudGVzIChxdWkgc29udCBkYW5zIEFNTzQwKVxuICAgICAgLy9cbiAgICAgIC8vIENvbnRpZW50IHRvdXMgbGVzIG9yZ2FuZXMgcsOpZsOpcmVuY8OpcyBwYXIgbGVzIG1hbmRhdHNcbiAgICAgIC8vICogYXZlYyBsZSB4c2lUeXBlIGRlIGwnb3JnYW5lXG4gICAgICAvLyAqIGF2ZWMgZGVzIGNvbW1pc3Npb25zIHPDqW5hdG9yaWFsZXMgKHBlcm1hbmVudGVzIGV0IHNww6ljaWFsZXMpIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGTDqWzDqWdhdGlvbnMgc8OpbmF0b3JpYWxlcyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBncm91cGVzIHPDqW5hdG9yaWF1eCBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBtaW5pc3TDqHJlcyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGxlcyBQcsOpc2lkZW5jZXMgZGUgbGEgUsOpcHVibGlxdWUgKHkgY29tcHJpcyBTYXJrb3p5KVxuICAgICAgLy8gKiBhdmVjIGxlIENvbnNlaWwgY29uc3RpdHV0aW9ubmVsXG4gICAgICAvL1xuICAgICAgLy8gQ2UgZmljaGllciBlc3QgdW4gc291cy1lbnNlbWJsZSDDoCB0b3VzIGxlcyBuaXZlYXV4IGR1IGZpY2hpZXIgQU1PMzAuXG4gICAgICAvLyBJbCBuJ2FwcG9ydGUgZG9uYyBhYnNvbHVtZW50IHJpZW4gcGFyIHJhcHBvcnQgw6AgbCdBTU8zMC5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzIwX2RlcF9zZW5fbWluX3RvdXNfbWFuZGF0c19ldF9vcmdhbmVzX1hWLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiQWN0ZXVycyBldCBvcmdhbmVzIGRlIGxhIFhWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2Ftby9kZXB1dGVzX3NlbmF0ZXVyc19taW5pc3RyZXNfbGVnaXNsYXR1cmUvQU1PMjBfZGVwX3Nlbl9taW5fdG91c19tYW5kYXRzX2V0X29yZ2FuZXNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzIwIChYSVYpXG4gICAgICAvL1xuICAgICAgLy8gQ29tbWUgQU1PMjAgKFhWKSBtYWlzIHBvdXIgbGEgWElWw6htZSBsw6lnaXNsYXR1cmVcbiAgICAgIC8vIFRvdXMgbGVzIGFjdGV1cnMgc2F1ZiB1biAoUEE0Mjk4OTIpIHNvbnQgcHLDqXNlbnRzIGVuIHBsdXMgw6Agam91ciBkYW5zIEFNTzMwLlxuICAgICAgLy8gQ2V0IGFjdGV1ciBQQTQyOTg5MiAoYW5jaWVubmUgU8OpbmF0cmljZSkgbidlc3QgcHLDqXNlbnQgZGFucyBhdWN1biBkZXMgYXV0cmVzXG4gICAgICAvLyBmaWNoaWVycyBBTU8uXG4gICAgICAvLyBUb3VzIGxlcyBvcmdhbmVzIHNvbnQgcHLDqXNlbnRzIGVuIHBsdXMgY29tcGxldHMgZGFucyBBTU8zMC5cbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIGVzdCBkb25jIMOgIHVuIGTDqXRhaWwgcHLDqnQgKFBBNDI5ODkyKSB1biBzb3VzLWVuc2VtYmxlIGQnQU1PMzAuXG4gICAgICAvLyBJbCBuJ2FwcG9ydGUgZG9uYyBxdWFzaW1lbnQgcmllbiBwYXIgcmFwcG9ydCDDoCBsJ0FNTzMwLlxuICAgICAgZmlsZW5hbWU6IFwiQU1PMjBfZGVwX3Nlbl9taW5fdG91c19tYW5kYXRzX2V0X29yZ2FuZXNfWElWLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWF0b3J6ZSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TaW5nbGVGaWxlLFxuICAgICAgdGl0bGU6IFwiQWN0ZXVycyBldCBvcmdhbmVzIGRlIGxhIFhJVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNC9hbW8vZGVwdXRlc19zZW5hdGV1cnNfbWluaXN0cmVzX2xlZ2lzbGF0dXJlc19YSVYvQU1PMjBfZGVwX3Nlbl9taW5fdG91c19tYW5kYXRzX2V0X29yZ2FuZXNfWElWLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAvLyBBTU8zMCAoWFZJKVxuICAgICAgLy9cbiAgICAgIC8vIENlIGZpY2hpZXIgY29udGllbnQgdG91cyBsZXMgYWN0ZXVycyBldCBvcmdhbmVzLlxuICAgICAgLy8gQydlc3QgdW4gc3VyLWVuc2VtYmxlIGRlcyBmaWNoaWVycyBBTU8yMC5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWUuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLkFsbCxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTpcbiAgICAgICAgXCJIaXN0b3JpcXVlIGRlIHRvdXMgbGVzIGFjdGV1cnMgZXQgb3JnYW5lcyBkZXB1aXMgbGEgWEnDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvYW1vL3RvdXNfYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNfeGlfbGVnaXNsYXR1cmUvQU1PMzBfdG91c19hY3RldXJzX3RvdXNfbWFuZGF0c190b3VzX29yZ2FuZXNfaGlzdG9yaXF1ZS5qc29uLnppcFwiLFxuICAgIH0sXG4gICAgLy8ge1xuICAgIC8vICAgLy8gQU1PMzAgKFhWKVxuICAgIC8vICAgLy9cbiAgICAvLyAgIC8vIENlIGZpY2hpZXIgY29udGllbnQgdG91cyBsZXMgYWN0ZXVycyBldCBvcmdhbmVzLlxuICAgIC8vICAgLy8gQydlc3QgdW4gc3VyLWVuc2VtYmxlIGRlcyBmaWNoaWVycyBBTU8yMC5cbiAgICAvLyAgIGZpbGVuYW1lOiBcIkFNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWUuanNvblwiLFxuICAgIC8vICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLkFsbCxcbiAgICAvLyAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgIC8vICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAvLyAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgIC8vICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgIC8vICAgICB9XG4gICAgLy8gICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAvLyAgIH0sXG4gICAgLy8gICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgLy8gICB0aXRsZTpcbiAgICAvLyAgICAgXCJIaXN0b3JpcXVlIGRlIHRvdXMgbGVzIGFjdGV1cnMgZXQgb3JnYW5lcyBkZXB1aXMgbGEgWEnDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgIC8vICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTUvYW1vL3RvdXNfYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNfeGlfbGVnaXNsYXR1cmUvQU1PMzBfdG91c19hY3RldXJzX3RvdXNfbWFuZGF0c190b3VzX29yZ2FuZXNfaGlzdG9yaXF1ZS5qc29uLnppcFwiLFxuICAgIC8vIH0sXG4gICAge1xuICAgICAgLy8gQU1PNDAgKFhWSSlcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBsZXMgZMOpcHV0w6lzIGFjdGlmcyAobGVzIG3Dqm1lcyBxdSdBTU8yMClcbiAgICAgIC8vICogYXZlYyBwcmVzcXVlIHRvdXMgbGV1cnMgbWFuZGF0c1xuICAgICAgLy8gKiB5IGNvbXByaXMgbGVzIG1hbmRhdHMgYWNoZXbDqXMgZXQgY2V1eCBkZXMgbMOpZ2lzbGF0dXJlcyBwcsOpY8OpZGVudGVzXG4gICAgICAvLyAqIHkgY29tcHJpcyBsZXVycyBwYXJ0aXMgcG9saXRpcXVlcyBwcsOpY8OpZGVudHNcbiAgICAgIC8vICogbWFpcyBzYW5zIGxldXIgcGFydGkgcG9saXRpcXVlIGFjdHVlbCAodHlwZU9yZ2FuZTogXCJQQVJQT0xcIilcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBiZWF1Y291cCBkJ29yZ2FuZXMgcsOpZsOpcmVuY8OpcywgeSBjb21wcmlzIGNldXggZGVzIGzDqWdpc2xhdHVyZXNcbiAgICAgIC8vIHByw6ljw6lkZW50ZXNcbiAgICAgIC8vICogbWFpcyBpbCBtYW5xdWUgbGUgeHNpVHlwZSBkZXMgb3JnYW5lc1xuICAgICAgLy8gKiBuZSBjb250aWVudCBwYXMgbGVzIG9yZ2FuZXMgc8OpbmF0b3JpYXV4XG4gICAgICAvLyAqIG5lIGNvbnRpZW50IHBhcyBsZXMgbWluaXN0w6hyZXNcbiAgICAgIC8vICogbmUgY29udGllbnQgcGFzIGxhIFByw6lzaWRlbmNlIGRlIGxhIFLDqXB1YmxpcXVlXG4gICAgICAvLyAqIG5lIGNvbnRpZW50IHBhcyBsZSBDb25zZWlsIGNvbnN0aXR1dGlvbm5lbFxuICAgICAgLy9cbiAgICAgIC8vIFBvdXIgbGVzIGFjdGV1cnMsIGNlIGTDqXDDtHQgZXN0IHVuIHNvdXMtZW5zZW1ibGUgc3RyaWN0IGRlIEFNTzMwIDpcbiAgICAgIC8vIElsIGEgbW9pbnMgZCdhY3RldXJzIGV0IGlsIHNvbnQgbW9pbnMgY29tcGxldHMuXG4gICAgICAvL1xuICAgICAgLy8gUG91ciBsZXMgb3JnYW5lcyA6XG4gICAgICAvLyBRdWFuZCBsJ29yZ2FuZSBlc3QgYXVzc2kgcHLDqXNlbnQgZGFucyBBTU8zMCwgaWwgdmF1dCBtaWV1eCBwcmVuZHJlIGNlbHVpXG4gICAgICAvLyBkJ0FNTzMwLCBjYXIgaWwgY29udGllbnQgbGUgeHNpVHlwZSAoYydlc3QgbGEgc2V1bGUgZGlmZsOpcmVuY2Ugc2VtYmxlLXQtaSkuXG4gICAgICAvLyBTaW5vbiwgaWwgZmF1dCBsZSBwcmVuZHJlIHNldWxlbWVudCBzaSBvbiBlc3QgaW50w6lyZXNzw6kgcGFyIGxlcyBsw6lnaXNsYXR1cmVzXG4gICAgICAvLyBwcsOpY8OpZGVudGVzLlxuICAgICAgZmlsZW5hbWU6IFwiQU1PNDBfZGVwdXRlc19hY3RpZnNfbWFuZGF0c19hY3RpZnNfb3JnYW5lc19kaXZpc2VzX1hWSS5qc29uXCIsXG4gICAgICBpZ25vcmVGb3JXZWI6IHRydWUsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5ta2RpclN5bmModGFyZ2V0RGlyKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJhY3RldXJcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJhY3RldXJcIiksXG4gICAgICAgIClcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwib3JnYW5lXCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwib3JnYW5lXCIpLFxuICAgICAgICApXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiRMOpcHV0w6lzIGFjdGlmcyBldCBvcmdhbmVzIGRlIGxhIFhWScOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNi9hbW8vZGVwdXRlc19hY3RpZnNfbWFuZGF0c19hY3RpZnNfb3JnYW5lc19kaXZpc2VzL0FNTzQwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfZGl2aXNlcy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgLy8gQU1PNDAgKFhWKVxuICAgICAgLy9cbiAgICAgIC8vIENvbnRpZW50IGxlcyBkw6lwdXTDqXMgYWN0aWZzIChsZXMgbcOqbWVzIHF1J0FNTzIwKVxuICAgICAgLy8gKiBhdmVjIHByZXNxdWUgdG91cyBsZXVycyBtYW5kYXRzXG4gICAgICAvLyAqIHkgY29tcHJpcyBsZXMgbWFuZGF0cyBhY2hldsOpcyBldCBjZXV4IGRlcyBsw6lnaXNsYXR1cmVzIHByw6ljw6lkZW50ZXNcbiAgICAgIC8vICogeSBjb21wcmlzIGxldXJzIHBhcnRpcyBwb2xpdGlxdWVzIHByw6ljw6lkZW50c1xuICAgICAgLy8gKiBtYWlzIHNhbnMgbGV1ciBwYXJ0aSBwb2xpdGlxdWUgYWN0dWVsICh0eXBlT3JnYW5lOiBcIlBBUlBPTFwiKVxuICAgICAgLy9cbiAgICAgIC8vIENvbnRpZW50IGJlYXVjb3VwIGQnb3JnYW5lcyByw6lmw6lyZW5jw6lzLCB5IGNvbXByaXMgY2V1eCBkZXMgbMOpZ2lzbGF0dXJlc1xuICAgICAgLy8gcHLDqWPDqWRlbnRlc1xuICAgICAgLy8gKiBtYWlzIGlsIG1hbnF1ZSBsZSB4c2lUeXBlIGRlcyBvcmdhbmVzXG4gICAgICAvLyAqIG5lIGNvbnRpZW50IHBhcyBsZXMgb3JnYW5lcyBzw6luYXRvcmlhdXhcbiAgICAgIC8vICogbmUgY29udGllbnQgcGFzIGxlcyBtaW5pc3TDqHJlc1xuICAgICAgLy8gKiBuZSBjb250aWVudCBwYXMgbGEgUHLDqXNpZGVuY2UgZGUgbGEgUsOpcHVibGlxdWVcbiAgICAgIC8vICogbmUgY29udGllbnQgcGFzIGxlIENvbnNlaWwgY29uc3RpdHV0aW9ubmVsXG4gICAgICAvL1xuICAgICAgLy8gUG91ciBsZXMgYWN0ZXVycywgY2UgZMOpcMO0dCBlc3QgdW4gc291cy1lbnNlbWJsZSBzdHJpY3QgZGUgQU1PMzAgOlxuICAgICAgLy8gSWwgYSBtb2lucyBkJ2FjdGV1cnMgZXQgaWwgc29udCBtb2lucyBjb21wbGV0cy5cbiAgICAgIC8vXG4gICAgICAvLyBQb3VyIGxlcyBvcmdhbmVzIDpcbiAgICAgIC8vIFF1YW5kIGwnb3JnYW5lIGVzdCBhdXNzaSBwcsOpc2VudCBkYW5zIEFNTzMwLCBpbCB2YXV0IG1pZXV4IHByZW5kcmUgY2VsdWlcbiAgICAgIC8vIGQnQU1PMzAsIGNhciBpbCBjb250aWVudCBsZSB4c2lUeXBlIChjJ2VzdCBsYSBzZXVsZSBkaWZmw6lyZW5jZSBzZW1ibGUtdC1pKS5cbiAgICAgIC8vIFNpbm9uLCBpbCBmYXV0IGxlIHByZW5kcmUgc2V1bGVtZW50IHNpIG9uIGVzdCBpbnTDqXJlc3PDqSBwYXIgbGVzIGzDqWdpc2xhdHVyZXNcbiAgICAgIC8vIHByw6ljw6lkZW50ZXMuXG4gICAgICBmaWxlbmFtZTogXCJBTU80MF9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzX2RpdmlzZXNfWFYuanNvblwiLFxuICAgICAgaWdub3JlRm9yV2ViOiB0cnVlLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1aW56ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1rZGlyU3luYyh0YXJnZXREaXIpXG4gICAgICAgIGZzLm1vdmVTeW5jKFxuICAgICAgICAgIHBhdGguam9pbihkYXRhRGlyLCBcImFjdGV1clwiKSxcbiAgICAgICAgICBwYXRoLmpvaW4odGFyZ2V0RGlyLCBcImFjdGV1clwiKSxcbiAgICAgICAgKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJvcmdhbmVcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJvcmdhbmVcIiksXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJEw6lwdXTDqXMgYWN0aWZzIGV0IG9yZ2FuZXMgZGUgbGEgWFbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTUvYW1vL2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfZGl2aXNlcy9BTU80MF9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzX2RpdmlzZXNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzUwIChYVkkpXG4gICAgICAvL1xuICAgICAgLy8gQXR0ZW50aW9uLCBjZSBmaWNoaWVyIG4nZXN0IHBhcyBtaXMgw6Agam91ciByw6lndWxpw6hyZW1lbnQgIVxuICAgICAgLy9cbiAgICAgIC8vIFBvdXIgbGVzIGFjdGV1cnMgOlxuICAgICAgLy8gKiBjJ2VzdCB1biBzb3VzIGVuc2VtYmxlIG9ic29sw6h0ZSBkJ0FNTzMwXG4gICAgICAvLyAqIGlsIG1hbnF1ZSBsZXMgeHNpVHlwZSBhdXggbWFuZGF0c1xuICAgICAgLy9cbiAgICAgIC8vIFBvdXIgbGVzIG9yZ2FuZXMgOlxuICAgICAgLy8gKiBjJ2VzdCB1biBzb3VzIGVuc2VtYmxlIG9ic29sw6h0ZSBkJ0FNTzMwXG4gICAgICAvLyAqIGlsIG1hbnF1ZSBsZXMgeHNpVHlwZVxuICAgICAgLy9cbiAgICAgIC8vIENlIGZpY2hpZXIgbidhcHBvcnRlIGRvbmMgYWJzb2x1bWVudCByaWVuIHBhciByYXBwb3J0IMOgIGwnQU1PMzAsXG4gICAgICAvLyBkb250IGlsIGVzdCB1biBzb3VzIGVuc2VtYmxlIG9ic29sw6h0ZS5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzUwX2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX2RpdmlzZXNfWFZJLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1rZGlyU3luYyh0YXJnZXREaXIpXG4gICAgICAgIGZzLm1vdmVTeW5jKFxuICAgICAgICAgIHBhdGguam9pbihkYXRhRGlyLCBcIm1hbmRhdFwiKSxcbiAgICAgICAgICBwYXRoLmpvaW4odGFyZ2V0RGlyLCBcIm1hbmRhdFwiKSxcbiAgICAgICAgKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJhY3RldXJcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJhY3RldXJcIiksXG4gICAgICAgIClcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwib3JnYW5lXCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwib3JnYW5lXCIpLFxuICAgICAgICApXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6XG4gICAgICAgIFwiQWN0ZXVycywgbWFuZGF0cyBldCBvcmdhbmVzIGRlIGxhIFhWScOobWUgbMOpZ2lzbGF0dXJlIChmaWNoaWVycyBzw6lwYXLDqXMsIHkgY29tcHJpcyBtYW5kYXRzKVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvYW1vL2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX2RpdmlzZXMvQU1PNTBfYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNfZGl2aXNlcy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgLy8gQU1PNTAgKFhWKVxuICAgICAgLy9cbiAgICAgIC8vIEF0dGVudGlvbiwgY2UgZmljaGllciBuJ2VzdCBwYXMgbWlzIMOgIGpvdXIgcsOpZ3VsacOocmVtZW50ICFcbiAgICAgIC8vXG4gICAgICAvLyBQb3VyIGxlcyBhY3RldXJzIDpcbiAgICAgIC8vICogYydlc3QgdW4gc291cyBlbnNlbWJsZSBvYnNvbMOodGUgZCdBTU8zMFxuICAgICAgLy8gKiBpbCBtYW5xdWUgbGVzIHhzaVR5cGUgYXV4IG1hbmRhdHNcbiAgICAgIC8vXG4gICAgICAvLyBQb3VyIGxlcyBvcmdhbmVzIDpcbiAgICAgIC8vICogYydlc3QgdW4gc291cyBlbnNlbWJsZSBvYnNvbMOodGUgZCdBTU8zMFxuICAgICAgLy8gKiBpbCBtYW5xdWUgbGVzIHhzaVR5cGVcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIG4nYXBwb3J0ZSBkb25jIGFic29sdW1lbnQgcmllbiBwYXIgcmFwcG9ydCDDoCBsJ0FNTzMwLFxuICAgICAgLy8gZG9udCBpbCBlc3QgdW4gc291cyBlbnNlbWJsZSBvYnNvbMOodGUuXG4gICAgICBmaWxlbmFtZTogXCJBTU81MF9hY3RldXJzX21hbmRhdHNfb3JnYW5lc19kaXZpc2VzX1hWLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5ta2RpclN5bmModGFyZ2V0RGlyKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJtYW5kYXRcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJtYW5kYXRcIiksXG4gICAgICAgIClcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwiYWN0ZXVyXCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwiYWN0ZXVyXCIpLFxuICAgICAgICApXG4gICAgICAgIGZzLm1vdmVTeW5jKFxuICAgICAgICAgIHBhdGguam9pbihkYXRhRGlyLCBcIm9yZ2FuZVwiKSxcbiAgICAgICAgICBwYXRoLmpvaW4odGFyZ2V0RGlyLCBcIm9yZ2FuZVwiKSxcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOlxuICAgICAgICBcIkFjdGV1cnMsIG1hbmRhdHMgZXQgb3JnYW5lcyBkZSBsYSBYVsOobWUgbMOpZ2lzbGF0dXJlIChmaWNoaWVycyBzw6lwYXLDqXMsIHkgY29tcHJpcyBtYW5kYXRzKVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTUvYW1vL2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX2RpdmlzZXMvQU1PNTBfYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNfZGl2aXNlc19YVi5qc29uLnppcFwiLFxuICAgIH0sXG4gIF0sXG4gIGFnZW5kYXM6IFtcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJBZ2VuZGFfWFZJLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJBZ2VuZGEgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L3ZwL3JldW5pb25zL0FnZW5kYS5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiQWdlbmRhX1hWLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiQWdlbmRhIGRlIGxhIFhWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L3ZwL3JldW5pb25zL0FnZW5kYV9YVi5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiQWdlbmRhX1hJVi5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVhdG9yemUsXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2luZ2xlRmlsZSxcbiAgICAgIHRpdGxlOiBcIkFnZW5kYSBkZSBsYSBYSVbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTQvdnAvcmV1bmlvbnMvQWdlbmRhX1hJVi5qc29uLnppcFwiLFxuICAgIH0sXG4gIF0sXG4gIGFtZW5kZW1lbnRzOiBbXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiQW1lbmRlbWVudHNfWFZJLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJBbWVuZGVtZW50cyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvbG9pL2FtZW5kZW1lbnRzX2Rpdl9sZWdpcy9BbWVuZGVtZW50cy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiQW1lbmRlbWVudHNfWFYuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1aW56ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJBbWVuZGVtZW50cyBkZSBsYSBYVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNS9sb2kvYW1lbmRlbWVudHNfbGVnaXMvQW1lbmRlbWVudHNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIC8vIHtcbiAgICAvLyAgIGZpbGVuYW1lOiBcIkFtZW5kZW1lbnRzX1hJVi5qc29uXCIsXG4gICAgLy8gICBpZ25vcmVGb3JXZWI6IHRydWUsXG4gICAgLy8gICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVhdG9yemUsXG4gICAgLy8gICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2luZ2xlRmlsZSxcbiAgICAvLyAgIHRpdGxlOiBcIkFtZW5kZW1lbnRzIGRlIGxhIFhJVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgLy8gICB1cmw6XG4gICAgLy8gICAgIFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNC9sb2kvYW1lbmRlbWVudHNfbGVnaXNfWElWL0FtZW5kZW1lbnRzX1hJVi5qc29uLnppcFwiLFxuICAgIC8vIH0sXG4gIF0sXG4gIGRvc3NpZXJzTGVnaXNsYXRpZnM6IFtcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJEb3NzaWVyc19MZWdpc2xhdGlmc19YVkkuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlNlaXplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIkRvc3NpZXJzIGzDqWdpc2xhdGlmcyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvbG9pL2Rvc3NpZXJzX2xlZ2lzbGF0aWZzL0Rvc3NpZXJzX0xlZ2lzbGF0aWZzLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJEb3NzaWVyc19MZWdpc2xhdGlmc19YVi5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVpbnplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIkRvc3NpZXJzIGzDqWdpc2xhdGlmcyBkZSBsYSBYVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNS9sb2kvZG9zc2llcnNfbGVnaXNsYXRpZnMvRG9zc2llcnNfTGVnaXNsYXRpZnNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIkRvc3NpZXJzX0xlZ2lzbGF0aWZzX1hJVi5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVhdG9yemUsXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2luZ2xlRmlsZSxcbiAgICAgIHRpdGxlOiBcIkRvc3NpZXJzIGzDqWdpc2xhdGlmcyBkZSBsYSBYSVbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTQvbG9pL2Rvc3NpZXJzX2xlZ2lzbGF0aWZzL0Rvc3NpZXJzX0xlZ2lzbGF0aWZzX1hJVi5qc29uLnppcFwiLFxuICAgIH0sXG4gIF0sXG4gIHNjcnV0aW5zOiBbXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiU2NydXRpbnNfWFZJLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJTY3J1dGlucyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvbG9pL3NjcnV0aW5zL1NjcnV0aW5zLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJTY3J1dGluc19YVi5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVpbnplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIlNjcnV0aW5zIGRlIGxhIFhWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2xvaS9zY3J1dGlucy9TY3J1dGluc19YVi5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiU2NydXRpbnNfWElWLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWF0b3J6ZSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TaW5nbGVGaWxlLFxuICAgICAgdGl0bGU6IFwiU2NydXRpbnMgZGUgbGEgWElWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE0L2xvaS9zY3J1dGlucy9TY3J1dGluc19YSVYuanNvbi56aXBcIixcbiAgICB9LFxuICBdLFxuICBxdWVzdGlvbnM6IFtcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJRdWVzdGlvbnNfZWNyaXRlc19YVkkuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlNlaXplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIlF1ZXN0aW9ucyDDqWNyaXRlcyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvcXVlc3Rpb25zL3F1ZXN0aW9uc19lY3JpdGVzL1F1ZXN0aW9uc19lY3JpdGVzLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJRdWVzdGlvbnNfZ291dmVybmVtZW50X1hWSS5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiUXVlc3Rpb25zIGF1IGdvdXZlcm5lbWVudCBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvcXVlc3Rpb25zL3F1ZXN0aW9uc19nb3V2ZXJuZW1lbnQvUXVlc3Rpb25zX2dvdXZlcm5lbWVudC5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiUXVlc3Rpb25zX29yYWxlc19YVkkuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlNlaXplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIlF1ZXN0aW9ucyBvcmFsZXMgc2FucyBkw6liYXRzIGRlIGxhIFhWScOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNi9xdWVzdGlvbnMvcXVlc3Rpb25zX29yYWxlc19zYW5zX2RlYmF0L1F1ZXN0aW9uc19vcmFsZXNfc2Fuc19kZWJhdC5qc29uLnppcFwiLFxuICAgIH0sXG4gIF0sXG4gIGNvbXB0ZXNSZW5kdXNTZWFuY2VzOiBbXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiQ29tcHRlc19SZW5kdXNfU2VhbmNlc19YVkkueG1sXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJ4bWxcIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJDb21wdGVzIHJlbmR1cyBkZXMgc8OpYW5jZXMgcHVibGlxdWVzIGRlIGxhIFhWScOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cHM6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvdnAvc3ljZXJvbmJydXQvc3lzZXJvbi54bWwuemlwXCIsXG4gICAgfSxcbiAgXSxcbn1cblxuY29uc3QgZGlyZWN0b3J5MnNjaGVtYTogYW55ID0ge1xuICBcIi4qQWdlbmRhXy4qXCI6IFwiYWdlbmRhXCIsXG4gIFwiLipTY3J1dGluc18uKlwiOiBcInNjcnV0aW5cIixcbiAgXCIuKlF1ZXN0aW9uc18uKlwiOiBcInF1ZXN0aW9uXCIsXG4gIFwiLipBbWVuZGVtZW50c18uKlwiOiBcImFtZW5kZW1lbnRcIixcbiAgXCIuKkRvc3NpZXJzX0xlZ2lzbGF0aWZzXy4qL2RvY3VtZW50c1wiOiBcImRvY3VtZW50XCIsXG4gIFwiLipEb3NzaWVyc19MZWdpc2xhdGlmc18uKi9kb3NzaWVyc1wiOiBcImRvc3NpZXJcIixcbiAgXCIuKmFjdGV1cnNfbWFuZGF0c19vcmdhbmVzL29yZ2FuZXNcIjogXCJvcmdhbmVcIixcbiAgXCIuKmFjdGV1cnNfbWFuZGF0c19vcmdhbmVzL2FjdGV1cnNcIjogXCJhY3RldXJcIixcbiAgXCIuKkFNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWUuKi9vcmdhbmVzXCI6XG4gICAgXCJvcmdhbmVcIixcbiAgXCIuKkFNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWUuKi9hY3RldXJzXCI6XG4gICAgXCJhY3RldXJcIixcbiAgXCIuKkNvbXB0ZXNfUmVuZHVzX1NlYW5jZXNfLipcIjogXCJkZWJhdFwiLFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGF0YXNldHMoKTogYW55IHtcbiAgcmV0dXJuIFtcbiAgICBcIkFnZW5kYV9YSVZcIixcbiAgICBcIkFnZW5kYV9YVlwiLFxuICAgIFwiQWdlbmRhX1hWSVwiLFxuICAgIFwiU2NydXRpbnNfWElWXCIsXG4gICAgXCJTY3J1dGluc19YVlwiLFxuICAgIFwiU2NydXRpbnNfWFZJXCIsXG4gICAgXCJRdWVzdGlvbnNfRWNyaXRlc19YVklcIixcbiAgICBcIlF1ZXN0aW9uc19Hb3V2ZXJuZW1lbnRfWFZJXCIsXG4gICAgXCJBbWVuZGVtZW50c19YSVZcIixcbiAgICBcIkFtZW5kZW1lbnRzX1hWXCIsXG4gICAgXCJBbWVuZGVtZW50c19YVklcIixcbiAgICBcIkRvc3NpZXJzX0xlZ2lzbGF0aWZzX1hJVlwiLFxuICAgIFwiRG9zc2llcnNfTGVnaXNsYXRpZnNfWFZcIixcbiAgICBcIkRvc3NpZXJzX0xlZ2lzbGF0aWZzX1hWSVwiLFxuICAgIFwiQU1PMzBfdG91c19hY3RldXJzX3RvdXNfbWFuZGF0c190b3VzX29yZ2FuZXNfaGlzdG9yaXF1ZVwiLFxuICAgIFwiYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNcIixcbiAgICBcIkNvbXB0ZXNfUmVuZHVzX1NlYW5jZXNfWFZJXCIsXG4gIF1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkRGF0YXNldChkaXI6IGFueSk6IGFueSB7XG4gIGZvciAoY29uc3QgZGF0YXNldCBvZiBnZXREYXRhc2V0cygpKSB7XG4gICAgaWYgKGRpci5pbmNsdWRlcyhkYXRhc2V0KSkgcmV0dXJuIHRydWVcbiAgfVxuICByZXR1cm4gZmFsc2Vcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNjaGVtYXMoKTogYW55IHtcbiAgcmV0dXJuIE9iamVjdC52YWx1ZXMoZGlyZWN0b3J5MnNjaGVtYSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRhdGFzZXREaXJlY3RvcnlTY2hlbWEoZGF0YXNldDogc3RyaW5nKTogYW55IHtcbiAgbGV0IGRpcmVjdG9yaWVzOiBhbnlcbiAgaWYgKGRhdGFzZXQuaW5jbHVkZXMoXCJEb3NzaWVyc19MZWdpc2xhdGlmc19cIikpIHtcbiAgICBkaXJlY3RvcmllcyA9IFtgJHtkYXRhc2V0fS9kb2N1bWVudHNgLCBgJHtkYXRhc2V0fS9kb3NzaWVyc2BdXG4gIH0gZWxzZSBpZiAoXG4gICAgZGF0YXNldC5pbmNsdWRlcyhcImFjdGV1cnNfbWFuZGF0c19vcmdhbmVzXCIpIHx8XG4gICAgZGF0YXNldC5pbmNsdWRlcyhcIkFNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWVcIilcbiAgKSB7XG4gICAgZGlyZWN0b3JpZXMgPSBbYCR7ZGF0YXNldH0vb3JnYW5lc2AsIGAke2RhdGFzZXR9L2FjdGV1cnNgXVxuICB9IGVsc2Uge1xuICAgIGRpcmVjdG9yaWVzID0gW2RhdGFzZXRdXG4gIH1cblxuICBsZXQgcmVzdWx0cyA9IFtdXG4gIGZvciAoY29uc3QgZGlyZWN0b3J5IG9mIGRpcmVjdG9yaWVzKSB7XG4gICAgZm9yIChjb25zdCByZSBvZiBPYmplY3Qua2V5cyhkaXJlY3Rvcnkyc2NoZW1hKSkge1xuICAgICAgaWYgKG5ldyBSZWdFeHAocmUpLmV4ZWMoZGlyZWN0b3J5KSlcbiAgICAgICAgcmVzdWx0cy5wdXNoKFtgJHtkaXJlY3Rvcnl9LyoqLyouanNvbmAsIGRpcmVjdG9yeTJzY2hlbWFbcmVdXSlcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3VsdHNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbGVEYXRhc2V0VXJsKGZpbGVuYW1lOiBzdHJpbmcpOiBbc3RyaW5nLCBzdHJpbmddIHwgbnVsbCB7XG4gIGNvbnN0IHJlID0gXCJeLiovKC4qKV9uZXR0b3llLyguKilcIlxuICBjb25zdCBtYXRjaCA9IG5ldyBSZWdFeHAocmUpLmV4ZWMoZmlsZW5hbWUpXG4gIGlmIChtYXRjaCA9PSBudWxsKSByZXR1cm4gbnVsbFxuICBsZXQgW2RhdGFzZXQsIGZpbGVdID0gW21hdGNoWzFdLCBtYXRjaFsyXV1cbiAgaWYgKGRhdGFzZXQgPT0gXCJBTU8zMF90b3VzX2FjdGV1cnNfdG91c19tYW5kYXRzX3RvdXNfb3JnYW5lc19oaXN0b3JpcXVlXCIpXG4gICAgZGF0YXNldCA9IFwiYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNcIlxuICByZXR1cm4gW2RhdGFzZXQsIGZpbGVdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkaWZmVXBzdHJlYW0oZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGFzZXRVcmwgPSBmaWxlRGF0YXNldFVybChmaWxlbmFtZSlcbiAgaWYgKGRhdGFzZXRVcmwgPT0gbnVsbCkgcmV0dXJuIGZpbGVuYW1lXG4gIGNvbnN0IFtkYXRhc2V0LCBmaWxlXSA9IGRhdGFzZXRVcmxcbiAgY29uc3Qgc3VtID0gY3JlYXRlSGFzaChcInNoYTFcIikudXBkYXRlKGZpbGUpLmRpZ2VzdChcImhleFwiKS50b1N0cmluZygpXG4gIHJldHVybiBgWyR7ZmlsZX1dKGh0dHBzOi8vZ2l0LmVuLXJvb3Qub3JnL3RyaWNvdGV1c2VzL2RhdGEudHJpY290ZXVzZXMuZnIvJHtkYXRhc2V0fS8tL2NvbXBhcmUvdXBzdHJlYW0uLi5tYXN0ZXIjJHtzdW19KWBcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hc3RlclVybChmaWxlbmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgZGF0YXNldFVybCA9IGZpbGVEYXRhc2V0VXJsKGZpbGVuYW1lKVxuICBpZiAoZGF0YXNldFVybCA9PSBudWxsKSByZXR1cm4gZmlsZW5hbWVcbiAgY29uc3QgW2RhdGFzZXQsIGZpbGVdID0gZGF0YXNldFVybFxuICByZXR1cm4gYFske2ZpbGV9XShodHRwczovL2dpdC5lbi1yb290Lm9yZy90cmljb3RldXNlcy9kYXRhLnRyaWNvdGV1c2VzLmZyLyR7ZGF0YXNldH0vLS90cmVlL21hc3Rlci8ke2ZpbGV9KWBcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsVUFBVSxRQUFRLFFBQVE7QUFDbkMsT0FBT0MsRUFBRSxNQUFNLFVBQVU7QUFDekIsT0FBT0MsSUFBSSxNQUFNLE1BQU07QUFBQSxTQUVkQyxXQUFXO0FBc0JwQixXQUFZQyxnQkFBZ0IsMEJBQWhCQSxnQkFBZ0I7RUFBaEJBLGdCQUFnQixDQUFoQkEsZ0JBQWdCO0VBQWhCQSxnQkFBZ0IsQ0FBaEJBLGdCQUFnQjtFQUFBLE9BQWhCQSxnQkFBZ0I7QUFBQTtBQUs1QixXQUFZQyxlQUFlLDBCQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFmQSxlQUFlLENBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFmQSxlQUFlLENBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFmQSxlQUFlLENBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFBLE9BQWZBLGVBQWU7QUFBQTtBQW9CM0IsT0FBTyxNQUFNQyxRQUFrQixHQUFHO0VBQ2hDQyxnQkFBZ0IsRUFBRSxDQUNoQjtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lB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
|
|
612
|
+
export function filterByLegislature(datasets, legislature) {
|
|
613
|
+
// When a given legislature is 0, it is the same as giving no legislature:
|
|
614
|
+
// It means "every legislatures".
|
|
615
|
+
const legislatures = legislature?.some(legislature => legislature === 0) ? undefined : legislature;
|
|
616
|
+
if (legislatures !== undefined) {
|
|
617
|
+
const enabledLegislatures = legislatures.map(legislature => legislature.toString());
|
|
618
|
+
for (let [key, value] of Object.entries(datasets)) {
|
|
619
|
+
datasets[key] = value.filter(dataset => dataset.legislature === Legislature.All || enabledLegislatures.includes(dataset.legislature));
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
return datasets;
|
|
623
|
+
}
|
|
624
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVIYXNoIiwiZnMiLCJwYXRoIiwiTGVnaXNsYXR1cmUiLCJEYXRhc2V0U3RydWN0dXJlIiwiRW5hYmxlZERhdGFzZXRzIiwiZGF0YXNldHMiLCJhY3RldXJzRXRPcmdhbmVzIiwiZmlsZW5hbWUiLCJpZ25vcmVGb3JXZWIiLCJsZWdpc2xhdHVyZSIsIlNlaXplIiwicmVwYWlyWmlwIiwiZGF0YXNldCIsImRhdGFEaXIiLCJ0YXJnZXREaXIiLCJqb2luIiwiZXhpc3RzU3luYyIsInJlbW92ZVN5bmMiLCJtb3ZlU3luYyIsInN0cnVjdHVyZSIsIlNlZ21lbnRlZEZpbGVzIiwidGl0bGUiLCJ1cmwiLCJRdWluemUiLCJRdWF0b3J6ZSIsIlNpbmdsZUZpbGUiLCJBbGwiLCJta2RpclN5bmMiLCJhZ2VuZGFzIiwiYW1lbmRlbWVudHMiLCJkb3NzaWVyc0xlZ2lzbGF0aWZzIiwic2NydXRpbnMiLCJxdWVzdGlvbnMiLCJjb21wdGVzUmVuZHVzU2VhbmNlcyIsImRpcmVjdG9yeTJzY2hlbWEiLCJnZXREYXRhc2V0cyIsInZhbGlkRGF0YXNldCIsImRpciIsImluY2x1ZGVzIiwiZ2V0U2NoZW1hcyIsIk9iamVjdCIsInZhbHVlcyIsImRhdGFzZXREaXJlY3RvcnlTY2hlbWEiLCJkaXJlY3RvcmllcyIsInJlc3VsdHMiLCJkaXJlY3RvcnkiLCJyZSIsImtleXMiLCJSZWdFeHAiLCJleGVjIiwicHVzaCIsImZpbGVEYXRhc2V0VXJsIiwibWF0Y2giLCJmaWxlIiwiZGlmZlVwc3RyZWFtIiwiZGF0YXNldFVybCIsInN1bSIsInVwZGF0ZSIsImRpZ2VzdCIsInRvU3RyaW5nIiwibWFzdGVyVXJsIiwiZmlsdGVyQnlMZWdpc2xhdHVyZSIsImxlZ2lzbGF0dXJlcyIsInNvbWUiLCJ1bmRlZmluZWQiLCJlbmFibGVkTGVnaXNsYXR1cmVzIiwibWFwIiwia2V5IiwidmFsdWUiLCJlbnRyaWVzIiwiZmlsdGVyIl0sInNvdXJjZXMiOlsiLi4vc3JjL2RhdGFzZXRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUhhc2ggfSBmcm9tIFwiY3J5cHRvXCJcbmltcG9ydCBmcyBmcm9tIFwiZnMtZXh0cmFcIlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuXG5pbXBvcnQgeyBMZWdpc2xhdHVyZSB9IGZyb20gXCIuL3R5cGVzL2xlZ2lzbGF0dXJlc1wiXG5cbmludGVyZmFjZSBEYXRhc2V0IHtcbiAgZmlsZW5hbWU6IHN0cmluZ1xuICBpZ25vcmVGb3JXZWI/OiBib29sZWFuXG4gIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZVxuICByZXBhaXJaaXA/OiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB2b2lkXG4gIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZVxuICB0aXRsZTogc3RyaW5nXG4gIHVybDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YXNldHMge1xuICBhY3RldXJzRXRPcmdhbmVzOiBEYXRhc2V0W11cbiAgYWdlbmRhczogRGF0YXNldFtdXG4gIGFtZW5kZW1lbnRzOiBEYXRhc2V0W11cbiAgZG9zc2llcnNMZWdpc2xhdGlmczogRGF0YXNldFtdXG4gIHNjcnV0aW5zOiBEYXRhc2V0W11cbiAgcXVlc3Rpb25zOiBEYXRhc2V0W11cbiAgY29tcHRlc1JlbmR1c1NlYW5jZXM6IERhdGFzZXRbXVxufVxuXG5leHBvcnQgZW51bSBEYXRhc2V0U3RydWN0dXJlIHtcbiAgU2luZ2xlRmlsZSxcbiAgU2VnbWVudGVkRmlsZXMsXG59XG5cbmV4cG9ydCBlbnVtIEVuYWJsZWREYXRhc2V0cyB7XG4gIE5vbmUgPSAwLFxuICBBY3RldXJzRXRPcmdhbmVzID0gMSA8PCAwLFxuICBBZ2VuZGFzID0gMSA8PCAxLFxuICBBbWVuZGVtZW50cyA9IDEgPDwgMixcbiAgRG9zc2llcnNMZWdpc2xhdGlmcyA9IDEgPDwgMyxcbiAgUGhvdG9zID0gMSA8PCA0LFxuICBTY3J1dGlucyA9IDEgPDwgNSxcbiAgUXVlc3Rpb25zID0gMSA8PCA2LFxuICBDb21wdGVzUmVuZHVzU2VhbmNlcyA9IDEgPDwgNyxcbiAgQWxsID0gQWN0ZXVyc0V0T3JnYW5lcyB8XG4gICAgQWdlbmRhcyB8XG4gICAgQW1lbmRlbWVudHMgfFxuICAgIERvc3NpZXJzTGVnaXNsYXRpZnMgfFxuICAgIFBob3RvcyB8XG4gICAgU2NydXRpbnMgfFxuICAgIFF1ZXN0aW9ucyB8XG4gICAgQ29tcHRlc1JlbmR1c1NlYW5jZXMsXG59XG5cbmV4cG9ydCBjb25zdCBkYXRhc2V0czogRGF0YXNldHMgPSB7XG4gIGFjdGV1cnNFdE9yZ2FuZXM6IFtcbiAgICB7XG4gICAgICAvLyBBTU8xMCAoWFZJKVxuICAgICAgLy9cbiAgICAgIC8vIENvbnRpZW50IGxlcyBkw6lwdXTDqXMgYWN0aWZzXG4gICAgICAvLyAqIGF2ZWMgdG91cyBsZXMgbWFuZGF0cyBlbiBjb3Vyc1xuICAgICAgLy8gKiB5IGNvbXByaXMgYXZlYyBsZXVyIHBhcnRpIHBvbGl0aXF1ZSAodHlwZU9yZ2FuZTogXCJQQVJQT0xcIilcbiAgICAgIC8vICogbWFpcyBzYW5zIGxlcyBtYW5kYXRzIGFjaGV2w6lzICh5IGNvbXByaXMgZGFucyBjZXR0ZSBsw6lnaXNsYXR1cmUpXG4gICAgICAvL1xuICAgICAgLy8gT3JnYW5lcyA6XG4gICAgICAvLyAqIENvbnRpZW50IHNldWxlbWVudCBsZXMgb3JnYW5lcyBjb3JyZXNwb25kYW50cyBhdXggbWFuZGF0cyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGxlIHhzaVR5cGUgZGUgbCdvcmdhbmVcbiAgICAgIC8vICogYXZlYyBkZXMgY29tbWlzc2lvbnMgc8OpbmF0b3JpYWxlcyAocGVybWFuZW50ZXMgZXQgc3DDqWNpYWxlcykgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBkZXMgZMOpbMOpZ2F0aW9ucyBzw6luYXRvcmlhbGVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGdyb3VwZXMgc8OpbmF0b3JpYXV4IGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIG1pbmlzdMOocmVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgbGVzIFByw6lzaWRlbmNlcyBkZSBsYSBSw6lwdWJsaXF1ZSAoeSBjb21wcmlzIFNhcmtvenkpXG4gICAgICAvLyAqIGF2ZWMgbGUgQ29uc2VpbCBjb25zdGl0dXRpb25uZWxcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIGVzdCB1biBzb3VzLWVuc2VtYmxlIMOgIHRvdXMgbGVzIG5pdmVhdXggZHUgZmljaGllciBBTU8yMFxuICAgICAgLy8gKHF1aSBlc3QgbHVpIG3Dqm1lIHVuIHNvdXMtZW5zZW1ibGUgZGUgbCdBTU8zMCkuXG4gICAgICAvLyBJbCBuJ2FwcG9ydGUgZG9uYyBhYnNvbHVtZW50IHJpZW4gcGFyIHJhcHBvcnQgw6AgQU1PMjAgb3UgbCdBTU8zMC5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzEwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfWFZJLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJEw6lwdXTDqXMgYWN0aWZzIGV0IG9yZ2FuZXMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2Ftby9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzL0FNTzEwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXMuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzEwIChYVilcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBsZXMgZMOpcHV0w6lzIGFjdGlmc1xuICAgICAgLy8gKiBhdmVjIHRvdXMgbGVzIG1hbmRhdHMgZW4gY291cnNcbiAgICAgIC8vICogeSBjb21wcmlzIGF2ZWMgbGV1ciBwYXJ0aSBwb2xpdGlxdWUgKHR5cGVPcmdhbmU6IFwiUEFSUE9MXCIpXG4gICAgICAvLyAqIG1haXMgc2FucyBsZXMgbWFuZGF0cyBhY2hldsOpcyAoeSBjb21wcmlzIGRhbnMgY2V0dGUgbMOpZ2lzbGF0dXJlKVxuICAgICAgLy9cbiAgICAgIC8vIE9yZ2FuZXMgOlxuICAgICAgLy8gKiBDb250aWVudCBzZXVsZW1lbnQgbGVzIG9yZ2FuZXMgY29ycmVzcG9uZGFudHMgYXV4IG1hbmRhdHMgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBsZSB4c2lUeXBlIGRlIGwnb3JnYW5lXG4gICAgICAvLyAqIGF2ZWMgZGVzIGNvbW1pc3Npb25zIHPDqW5hdG9yaWFsZXMgKHBlcm1hbmVudGVzIGV0IHNww6ljaWFsZXMpIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGTDqWzDqWdhdGlvbnMgc8OpbmF0b3JpYWxlcyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBncm91cGVzIHPDqW5hdG9yaWF1eCBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBtaW5pc3TDqHJlcyBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGxlcyBQcsOpc2lkZW5jZXMgZGUgbGEgUsOpcHVibGlxdWUgKHkgY29tcHJpcyBTYXJrb3p5KVxuICAgICAgLy8gKiBhdmVjIGxlIENvbnNlaWwgY29uc3RpdHV0aW9ubmVsXG4gICAgICAvL1xuICAgICAgLy8gQ2UgZmljaGllciBlc3QgdW4gc291cy1lbnNlbWJsZSDDoCB0b3VzIGxlcyBuaXZlYXV4IGR1IGZpY2hpZXIgQU1PMjBcbiAgICAgIC8vIChxdWkgZXN0IGx1aSBtw6ptZSB1biBzb3VzLWVuc2VtYmxlIGRlIGwnQU1PMzApLlxuICAgICAgLy8gSWwgbidhcHBvcnRlIGRvbmMgYWJzb2x1bWVudCByaWVuIHBhciByYXBwb3J0IMOgIEFNTzIwIG91IGwnQU1PMzAuXG4gICAgICBmaWxlbmFtZTogXCJBTU8xMF9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzX1hWLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiRMOpcHV0w6lzIGFjdGlmcyBldCBvcmdhbmVzIGRlIGxhIFhWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2Ftby9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzL0FNTzEwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzIwIChYVkkpXG4gICAgICAvL1xuICAgICAgLy8gQ29udGllbnQgbGVzIGTDqXB1dMOpcyBkZSBsYSBsw6lnaXNsYXR1cmUsIGFjdGlmcyBvdSBub24gKGludmFsaWTDqXMsIGV0YyksIGxlcyBzw6luYXRldXJzIGFjdHVlbHNcbiAgICAgIC8vIFBvdXIgbGVzIGTDqXB1dMOpcyA6XG4gICAgICAvLyAqIGF2ZWMgdG91cyBsZXVycyBtYW5kYXRzIGRlIGxhIGzDqWdpc2xhdHVyZVxuICAgICAgLy8gKiB5IGNvbXByaXMgbGVzIG1hbmRhdHMgYWNoZXbDqXNcbiAgICAgIC8vICogeSBjb21wcmlzIGxldXJzIHBhcnRpcyBwb2xpdGlxdWVzICAodHlwZU9yZ2FuZTogXCJQQVJQT0xcIilcbiAgICAgIC8vICogbWFpcyBzYW5zIGxlcyBtYW5kYXRzIGRlcyBsw6lnaXNsYXR1cmVzIHByw6ljw6lkZW50ZXMgKHF1aSBzb250IGRhbnMgQU1PNDApXG4gICAgICAvL1xuICAgICAgLy8gQ29udGllbnQgdG91cyBsZXMgb3JnYW5lcyByw6lmw6lyZW5jw6lzIHBhciBsZXMgbWFuZGF0c1xuICAgICAgLy8gKiBhdmVjIGxlIHhzaVR5cGUgZGUgbCdvcmdhbmVcbiAgICAgIC8vICogYXZlYyBkZXMgY29tbWlzc2lvbnMgc8OpbmF0b3JpYWxlcyAocGVybWFuZW50ZXMgZXQgc3DDqWNpYWxlcykgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBkZXMgZMOpbMOpZ2F0aW9ucyBzw6luYXRvcmlhbGVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIGdyb3VwZXMgc8OpbmF0b3JpYXV4IGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgZGVzIG1pbmlzdMOocmVzIGVuIGNvdXJzXG4gICAgICAvLyAqIGF2ZWMgbGVzIFByw6lzaWRlbmNlcyBkZSBsYSBSw6lwdWJsaXF1ZSAoeSBjb21wcmlzIFNhcmtvenkpXG4gICAgICAvLyAqIGF2ZWMgbGUgQ29uc2VpbCBjb25zdGl0dXRpb25uZWxcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIGVzdCB1biBzb3VzLWVuc2VtYmxlIMOgIHRvdXMgbGVzIG5pdmVhdXggZHUgZmljaGllciBBTU8zMC5cbiAgICAgIC8vIElsIG4nYXBwb3J0ZSBkb25jIGFic29sdW1lbnQgcmllbiBwYXIgcmFwcG9ydCDDoCBsJ0FNTzMwLlxuICAgICAgZmlsZW5hbWU6IFwiQU1PMjBfZGVwX3Nlbl9taW5fdG91c19tYW5kYXRzX2V0X29yZ2FuZXNfWFZJLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJBY3RldXJzIGV0IG9yZ2FuZXMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2Ftby9kZXB1dGVzX3NlbmF0ZXVyc19taW5pc3RyZXNfbGVnaXNsYXR1cmUvQU1PMjBfZGVwX3Nlbl9taW5fdG91c19tYW5kYXRzX2V0X29yZ2FuZXMuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzIwIChYVilcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBsZXMgZMOpcHV0w6lzIGRlIGxhIGzDqWdpc2xhdHVyZSwgYWN0aWZzIG91IG5vbiAoaW52YWxpZMOpcywgZXRjKSwgbGVzIHPDqW5hdGV1cnMgYWN0dWVsc1xuICAgICAgLy8gUG91ciBsZXMgZMOpcHV0w6lzIDpcbiAgICAgIC8vICogYXZlYyB0b3VzIGxldXJzIG1hbmRhdHMgZGUgbGEgbMOpZ2lzbGF0dXJlXG4gICAgICAvLyAqIHkgY29tcHJpcyBsZXMgbWFuZGF0cyBhY2hldsOpc1xuICAgICAgLy8gKiB5IGNvbXByaXMgbGV1cnMgcGFydGlzIHBvbGl0aXF1ZXMgICh0eXBlT3JnYW5lOiBcIlBBUlBPTFwiKVxuICAgICAgLy8gKiBtYWlzIHNhbnMgbGVzIG1hbmRhdHMgZGVzIGzDqWdpc2xhdHVyZXMgcHLDqWPDqWRlbnRlcyAocXVpIHNvbnQgZGFucyBBTU80MClcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCB0b3VzIGxlcyBvcmdhbmVzIHLDqWbDqXJlbmPDqXMgcGFyIGxlcyBtYW5kYXRzXG4gICAgICAvLyAqIGF2ZWMgbGUgeHNpVHlwZSBkZSBsJ29yZ2FuZVxuICAgICAgLy8gKiBhdmVjIGRlcyBjb21taXNzaW9ucyBzw6luYXRvcmlhbGVzIChwZXJtYW5lbnRlcyBldCBzcMOpY2lhbGVzKSBlbiBjb3Vyc1xuICAgICAgLy8gKiBhdmVjIGRlcyBkw6lsw6lnYXRpb25zIHPDqW5hdG9yaWFsZXMgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBkZXMgZ3JvdXBlcyBzw6luYXRvcmlhdXggZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBkZXMgbWluaXN0w6hyZXMgZW4gY291cnNcbiAgICAgIC8vICogYXZlYyBsZXMgUHLDqXNpZGVuY2VzIGRlIGxhIFLDqXB1YmxpcXVlICh5IGNvbXByaXMgU2Fya296eSlcbiAgICAgIC8vICogYXZlYyBsZSBDb25zZWlsIGNvbnN0aXR1dGlvbm5lbFxuICAgICAgLy9cbiAgICAgIC8vIENlIGZpY2hpZXIgZXN0IHVuIHNvdXMtZW5zZW1ibGUgw6AgdG91cyBsZXMgbml2ZWF1eCBkdSBmaWNoaWVyIEFNTzMwLlxuICAgICAgLy8gSWwgbidhcHBvcnRlIGRvbmMgYWJzb2x1bWVudCByaWVuIHBhciByYXBwb3J0IMOgIGwnQU1PMzAuXG4gICAgICBmaWxlbmFtZTogXCJBTU8yMF9kZXBfc2VuX21pbl90b3VzX21hbmRhdHNfZXRfb3JnYW5lc19YVi5qc29uXCIsXG4gICAgICBpZ25vcmVGb3JXZWI6IHRydWUsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVpbnplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIkFjdGV1cnMgZXQgb3JnYW5lcyBkZSBsYSBYVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNS9hbW8vZGVwdXRlc19zZW5hdGV1cnNfbWluaXN0cmVzX2xlZ2lzbGF0dXJlL0FNTzIwX2RlcF9zZW5fbWluX3RvdXNfbWFuZGF0c19ldF9vcmdhbmVzX1hWLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAvLyBBTU8yMCAoWElWKVxuICAgICAgLy9cbiAgICAgIC8vIENvbW1lIEFNTzIwIChYVikgbWFpcyBwb3VyIGxhIFhJVsOobWUgbMOpZ2lzbGF0dXJlXG4gICAgICAvLyBUb3VzIGxlcyBhY3RldXJzIHNhdWYgdW4gKFBBNDI5ODkyKSBzb250IHByw6lzZW50cyBlbiBwbHVzIMOgIGpvdXIgZGFucyBBTU8zMC5cbiAgICAgIC8vIENldCBhY3RldXIgUEE0Mjk4OTIgKGFuY2llbm5lIFPDqW5hdHJpY2UpIG4nZXN0IHByw6lzZW50IGRhbnMgYXVjdW4gZGVzIGF1dHJlc1xuICAgICAgLy8gZmljaGllcnMgQU1PLlxuICAgICAgLy8gVG91cyBsZXMgb3JnYW5lcyBzb250IHByw6lzZW50cyBlbiBwbHVzIGNvbXBsZXRzIGRhbnMgQU1PMzAuXG4gICAgICAvL1xuICAgICAgLy8gQ2UgZmljaGllciBlc3QgZG9uYyDDoCB1biBkw6l0YWlsIHByw6p0IChQQTQyOTg5MikgdW4gc291cy1lbnNlbWJsZSBkJ0FNTzMwLlxuICAgICAgLy8gSWwgbidhcHBvcnRlIGRvbmMgcXVhc2ltZW50IHJpZW4gcGFyIHJhcHBvcnQgw6AgbCdBTU8zMC5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzIwX2RlcF9zZW5fbWluX3RvdXNfbWFuZGF0c19ldF9vcmdhbmVzX1hJVi5qc29uXCIsXG4gICAgICBpZ25vcmVGb3JXZWI6IHRydWUsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVhdG9yemUsXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2luZ2xlRmlsZSxcbiAgICAgIHRpdGxlOiBcIkFjdGV1cnMgZXQgb3JnYW5lcyBkZSBsYSBYSVbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTQvYW1vL2RlcHV0ZXNfc2VuYXRldXJzX21pbmlzdHJlc19sZWdpc2xhdHVyZXNfWElWL0FNTzIwX2RlcF9zZW5fbWluX3RvdXNfbWFuZGF0c19ldF9vcmdhbmVzX1hJVi5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgLy8gQU1PMzAgKFhWSSlcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIGNvbnRpZW50IHRvdXMgbGVzIGFjdGV1cnMgZXQgb3JnYW5lcy5cbiAgICAgIC8vIEMnZXN0IHVuIHN1ci1lbnNlbWJsZSBkZXMgZmljaGllcnMgQU1PMjAuXG4gICAgICBmaWxlbmFtZTogXCJBTU8zMF90b3VzX2FjdGV1cnNfdG91c19tYW5kYXRzX3RvdXNfb3JnYW5lc19oaXN0b3JpcXVlLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5BbGwsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6XG4gICAgICAgIFwiSGlzdG9yaXF1ZSBkZSB0b3VzIGxlcyBhY3RldXJzIGV0IG9yZ2FuZXMgZGVwdWlzIGxhIFhJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2Ftby90b3VzX2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX3hpX2xlZ2lzbGF0dXJlL0FNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWUuanNvbi56aXBcIixcbiAgICB9LFxuICAgIC8vIHtcbiAgICAvLyAgIC8vIEFNTzMwIChYVilcbiAgICAvLyAgIC8vXG4gICAgLy8gICAvLyBDZSBmaWNoaWVyIGNvbnRpZW50IHRvdXMgbGVzIGFjdGV1cnMgZXQgb3JnYW5lcy5cbiAgICAvLyAgIC8vIEMnZXN0IHVuIHN1ci1lbnNlbWJsZSBkZXMgZmljaGllcnMgQU1PMjAuXG4gICAgLy8gICBmaWxlbmFtZTogXCJBTU8zMF90b3VzX2FjdGV1cnNfdG91c19tYW5kYXRzX3RvdXNfb3JnYW5lc19oaXN0b3JpcXVlLmpzb25cIixcbiAgICAvLyAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5BbGwsXG4gICAgLy8gICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAvLyAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgLy8gICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAvLyAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAvLyAgICAgfVxuICAgIC8vICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgLy8gICB9LFxuICAgIC8vICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgIC8vICAgdGl0bGU6XG4gICAgLy8gICAgIFwiSGlzdG9yaXF1ZSBkZSB0b3VzIGxlcyBhY3RldXJzIGV0IG9yZ2FuZXMgZGVwdWlzIGxhIFhJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAvLyAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2Ftby90b3VzX2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX3hpX2xlZ2lzbGF0dXJlL0FNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWUuanNvbi56aXBcIixcbiAgICAvLyB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzQwIChYVkkpXG4gICAgICAvL1xuICAgICAgLy8gQ29udGllbnQgbGVzIGTDqXB1dMOpcyBhY3RpZnMgKGxlcyBtw6ptZXMgcXUnQU1PMjApXG4gICAgICAvLyAqIGF2ZWMgcHJlc3F1ZSB0b3VzIGxldXJzIG1hbmRhdHNcbiAgICAgIC8vICogeSBjb21wcmlzIGxlcyBtYW5kYXRzIGFjaGV2w6lzIGV0IGNldXggZGVzIGzDqWdpc2xhdHVyZXMgcHLDqWPDqWRlbnRlc1xuICAgICAgLy8gKiB5IGNvbXByaXMgbGV1cnMgcGFydGlzIHBvbGl0aXF1ZXMgcHLDqWPDqWRlbnRzXG4gICAgICAvLyAqIG1haXMgc2FucyBsZXVyIHBhcnRpIHBvbGl0aXF1ZSBhY3R1ZWwgKHR5cGVPcmdhbmU6IFwiUEFSUE9MXCIpXG4gICAgICAvL1xuICAgICAgLy8gQ29udGllbnQgYmVhdWNvdXAgZCdvcmdhbmVzIHLDqWbDqXJlbmPDqXMsIHkgY29tcHJpcyBjZXV4IGRlcyBsw6lnaXNsYXR1cmVzXG4gICAgICAvLyBwcsOpY8OpZGVudGVzXG4gICAgICAvLyAqIG1haXMgaWwgbWFucXVlIGxlIHhzaVR5cGUgZGVzIG9yZ2FuZXNcbiAgICAgIC8vICogbmUgY29udGllbnQgcGFzIGxlcyBvcmdhbmVzIHPDqW5hdG9yaWF1eFxuICAgICAgLy8gKiBuZSBjb250aWVudCBwYXMgbGVzIG1pbmlzdMOocmVzXG4gICAgICAvLyAqIG5lIGNvbnRpZW50IHBhcyBsYSBQcsOpc2lkZW5jZSBkZSBsYSBSw6lwdWJsaXF1ZVxuICAgICAgLy8gKiBuZSBjb250aWVudCBwYXMgbGUgQ29uc2VpbCBjb25zdGl0dXRpb25uZWxcbiAgICAgIC8vXG4gICAgICAvLyBQb3VyIGxlcyBhY3RldXJzLCBjZSBkw6lww7R0IGVzdCB1biBzb3VzLWVuc2VtYmxlIHN0cmljdCBkZSBBTU8zMCA6XG4gICAgICAvLyBJbCBhIG1vaW5zIGQnYWN0ZXVycyBldCBpbCBzb250IG1vaW5zIGNvbXBsZXRzLlxuICAgICAgLy9cbiAgICAgIC8vIFBvdXIgbGVzIG9yZ2FuZXMgOlxuICAgICAgLy8gUXVhbmQgbCdvcmdhbmUgZXN0IGF1c3NpIHByw6lzZW50IGRhbnMgQU1PMzAsIGlsIHZhdXQgbWlldXggcHJlbmRyZSBjZWx1aVxuICAgICAgLy8gZCdBTU8zMCwgY2FyIGlsIGNvbnRpZW50IGxlIHhzaVR5cGUgKGMnZXN0IGxhIHNldWxlIGRpZmbDqXJlbmNlIHNlbWJsZS10LWkpLlxuICAgICAgLy8gU2lub24sIGlsIGZhdXQgbGUgcHJlbmRyZSBzZXVsZW1lbnQgc2kgb24gZXN0IGludMOpcmVzc8OpIHBhciBsZXMgbMOpZ2lzbGF0dXJlc1xuICAgICAgLy8gcHLDqWPDqWRlbnRlcy5cbiAgICAgIGZpbGVuYW1lOiBcIkFNTzQwX2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfZGl2aXNlc19YVkkuanNvblwiLFxuICAgICAgaWdub3JlRm9yV2ViOiB0cnVlLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlNlaXplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubWtkaXJTeW5jKHRhcmdldERpcilcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwiYWN0ZXVyXCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwiYWN0ZXVyXCIpLFxuICAgICAgICApXG4gICAgICAgIGZzLm1vdmVTeW5jKFxuICAgICAgICAgIHBhdGguam9pbihkYXRhRGlyLCBcIm9yZ2FuZVwiKSxcbiAgICAgICAgICBwYXRoLmpvaW4odGFyZ2V0RGlyLCBcIm9yZ2FuZVwiKSxcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIkTDqXB1dMOpcyBhY3RpZnMgZXQgb3JnYW5lcyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvYW1vL2RlcHV0ZXNfYWN0aWZzX21hbmRhdHNfYWN0aWZzX29yZ2FuZXNfZGl2aXNlcy9BTU80MF9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzX2RpdmlzZXMuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzQwIChYVilcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBsZXMgZMOpcHV0w6lzIGFjdGlmcyAobGVzIG3Dqm1lcyBxdSdBTU8yMClcbiAgICAgIC8vICogYXZlYyBwcmVzcXVlIHRvdXMgbGV1cnMgbWFuZGF0c1xuICAgICAgLy8gKiB5IGNvbXByaXMgbGVzIG1hbmRhdHMgYWNoZXbDqXMgZXQgY2V1eCBkZXMgbMOpZ2lzbGF0dXJlcyBwcsOpY8OpZGVudGVzXG4gICAgICAvLyAqIHkgY29tcHJpcyBsZXVycyBwYXJ0aXMgcG9saXRpcXVlcyBwcsOpY8OpZGVudHNcbiAgICAgIC8vICogbWFpcyBzYW5zIGxldXIgcGFydGkgcG9saXRpcXVlIGFjdHVlbCAodHlwZU9yZ2FuZTogXCJQQVJQT0xcIilcbiAgICAgIC8vXG4gICAgICAvLyBDb250aWVudCBiZWF1Y291cCBkJ29yZ2FuZXMgcsOpZsOpcmVuY8OpcywgeSBjb21wcmlzIGNldXggZGVzIGzDqWdpc2xhdHVyZXNcbiAgICAgIC8vIHByw6ljw6lkZW50ZXNcbiAgICAgIC8vICogbWFpcyBpbCBtYW5xdWUgbGUgeHNpVHlwZSBkZXMgb3JnYW5lc1xuICAgICAgLy8gKiBuZSBjb250aWVudCBwYXMgbGVzIG9yZ2FuZXMgc8OpbmF0b3JpYXV4XG4gICAgICAvLyAqIG5lIGNvbnRpZW50IHBhcyBsZXMgbWluaXN0w6hyZXNcbiAgICAgIC8vICogbmUgY29udGllbnQgcGFzIGxhIFByw6lzaWRlbmNlIGRlIGxhIFLDqXB1YmxpcXVlXG4gICAgICAvLyAqIG5lIGNvbnRpZW50IHBhcyBsZSBDb25zZWlsIGNvbnN0aXR1dGlvbm5lbFxuICAgICAgLy9cbiAgICAgIC8vIFBvdXIgbGVzIGFjdGV1cnMsIGNlIGTDqXDDtHQgZXN0IHVuIHNvdXMtZW5zZW1ibGUgc3RyaWN0IGRlIEFNTzMwIDpcbiAgICAgIC8vIElsIGEgbW9pbnMgZCdhY3RldXJzIGV0IGlsIHNvbnQgbW9pbnMgY29tcGxldHMuXG4gICAgICAvL1xuICAgICAgLy8gUG91ciBsZXMgb3JnYW5lcyA6XG4gICAgICAvLyBRdWFuZCBsJ29yZ2FuZSBlc3QgYXVzc2kgcHLDqXNlbnQgZGFucyBBTU8zMCwgaWwgdmF1dCBtaWV1eCBwcmVuZHJlIGNlbHVpXG4gICAgICAvLyBkJ0FNTzMwLCBjYXIgaWwgY29udGllbnQgbGUgeHNpVHlwZSAoYydlc3QgbGEgc2V1bGUgZGlmZsOpcmVuY2Ugc2VtYmxlLXQtaSkuXG4gICAgICAvLyBTaW5vbiwgaWwgZmF1dCBsZSBwcmVuZHJlIHNldWxlbWVudCBzaSBvbiBlc3QgaW50w6lyZXNzw6kgcGFyIGxlcyBsw6lnaXNsYXR1cmVzXG4gICAgICAvLyBwcsOpY8OpZGVudGVzLlxuICAgICAgZmlsZW5hbWU6IFwiQU1PNDBfZGVwdXRlc19hY3RpZnNfbWFuZGF0c19hY3RpZnNfb3JnYW5lc19kaXZpc2VzX1hWLmpzb25cIixcbiAgICAgIGlnbm9yZUZvcldlYjogdHJ1ZSxcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5ta2RpclN5bmModGFyZ2V0RGlyKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJhY3RldXJcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJhY3RldXJcIiksXG4gICAgICAgIClcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwib3JnYW5lXCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwib3JnYW5lXCIpLFxuICAgICAgICApXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiRMOpcHV0w6lzIGFjdGlmcyBldCBvcmdhbmVzIGRlIGxhIFhWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2Ftby9kZXB1dGVzX2FjdGlmc19tYW5kYXRzX2FjdGlmc19vcmdhbmVzX2RpdmlzZXMvQU1PNDBfZGVwdXRlc19hY3RpZnNfbWFuZGF0c19hY3RpZnNfb3JnYW5lc19kaXZpc2VzX1hWLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICAvLyBBTU81MCAoWFZJKVxuICAgICAgLy9cbiAgICAgIC8vIEF0dGVudGlvbiwgY2UgZmljaGllciBuJ2VzdCBwYXMgbWlzIMOgIGpvdXIgcsOpZ3VsacOocmVtZW50ICFcbiAgICAgIC8vXG4gICAgICAvLyBQb3VyIGxlcyBhY3RldXJzIDpcbiAgICAgIC8vICogYydlc3QgdW4gc291cyBlbnNlbWJsZSBvYnNvbMOodGUgZCdBTU8zMFxuICAgICAgLy8gKiBpbCBtYW5xdWUgbGVzIHhzaVR5cGUgYXV4IG1hbmRhdHNcbiAgICAgIC8vXG4gICAgICAvLyBQb3VyIGxlcyBvcmdhbmVzIDpcbiAgICAgIC8vICogYydlc3QgdW4gc291cyBlbnNlbWJsZSBvYnNvbMOodGUgZCdBTU8zMFxuICAgICAgLy8gKiBpbCBtYW5xdWUgbGVzIHhzaVR5cGVcbiAgICAgIC8vXG4gICAgICAvLyBDZSBmaWNoaWVyIG4nYXBwb3J0ZSBkb25jIGFic29sdW1lbnQgcmllbiBwYXIgcmFwcG9ydCDDoCBsJ0FNTzMwLFxuICAgICAgLy8gZG9udCBpbCBlc3QgdW4gc291cyBlbnNlbWJsZSBvYnNvbMOodGUuXG4gICAgICBmaWxlbmFtZTogXCJBTU81MF9hY3RldXJzX21hbmRhdHNfb3JnYW5lc19kaXZpc2VzX1hWSS5qc29uXCIsXG4gICAgICBpZ25vcmVGb3JXZWI6IHRydWUsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5ta2RpclN5bmModGFyZ2V0RGlyKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJtYW5kYXRcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJtYW5kYXRcIiksXG4gICAgICAgIClcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwiYWN0ZXVyXCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwiYWN0ZXVyXCIpLFxuICAgICAgICApXG4gICAgICAgIGZzLm1vdmVTeW5jKFxuICAgICAgICAgIHBhdGguam9pbihkYXRhRGlyLCBcIm9yZ2FuZVwiKSxcbiAgICAgICAgICBwYXRoLmpvaW4odGFyZ2V0RGlyLCBcIm9yZ2FuZVwiKSxcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOlxuICAgICAgICBcIkFjdGV1cnMsIG1hbmRhdHMgZXQgb3JnYW5lcyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZSAoZmljaGllcnMgc8OpcGFyw6lzLCB5IGNvbXByaXMgbWFuZGF0cylcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2Ftby9hY3RldXJzX21hbmRhdHNfb3JnYW5lc19kaXZpc2VzL0FNTzUwX2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX2RpdmlzZXMuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIC8vIEFNTzUwIChYVilcbiAgICAgIC8vXG4gICAgICAvLyBBdHRlbnRpb24sIGNlIGZpY2hpZXIgbidlc3QgcGFzIG1pcyDDoCBqb3VyIHLDqWd1bGnDqHJlbWVudCAhXG4gICAgICAvL1xuICAgICAgLy8gUG91ciBsZXMgYWN0ZXVycyA6XG4gICAgICAvLyAqIGMnZXN0IHVuIHNvdXMgZW5zZW1ibGUgb2Jzb2zDqHRlIGQnQU1PMzBcbiAgICAgIC8vICogaWwgbWFucXVlIGxlcyB4c2lUeXBlIGF1eCBtYW5kYXRzXG4gICAgICAvL1xuICAgICAgLy8gUG91ciBsZXMgb3JnYW5lcyA6XG4gICAgICAvLyAqIGMnZXN0IHVuIHNvdXMgZW5zZW1ibGUgb2Jzb2zDqHRlIGQnQU1PMzBcbiAgICAgIC8vICogaWwgbWFucXVlIGxlcyB4c2lUeXBlXG4gICAgICAvL1xuICAgICAgLy8gQ2UgZmljaGllciBuJ2FwcG9ydGUgZG9uYyBhYnNvbHVtZW50IHJpZW4gcGFyIHJhcHBvcnQgw6AgbCdBTU8zMCxcbiAgICAgIC8vIGRvbnQgaWwgZXN0IHVuIHNvdXMgZW5zZW1ibGUgb2Jzb2zDqHRlLlxuICAgICAgZmlsZW5hbWU6IFwiQU1PNTBfYWN0ZXVyc19tYW5kYXRzX29yZ2FuZXNfZGl2aXNlc19YVi5qc29uXCIsXG4gICAgICBpZ25vcmVGb3JXZWI6IHRydWUsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVpbnplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubWtkaXJTeW5jKHRhcmdldERpcilcbiAgICAgICAgZnMubW92ZVN5bmMoXG4gICAgICAgICAgcGF0aC5qb2luKGRhdGFEaXIsIFwibWFuZGF0XCIpLFxuICAgICAgICAgIHBhdGguam9pbih0YXJnZXREaXIsIFwibWFuZGF0XCIpLFxuICAgICAgICApXG4gICAgICAgIGZzLm1vdmVTeW5jKFxuICAgICAgICAgIHBhdGguam9pbihkYXRhRGlyLCBcImFjdGV1clwiKSxcbiAgICAgICAgICBwYXRoLmpvaW4odGFyZ2V0RGlyLCBcImFjdGV1clwiKSxcbiAgICAgICAgKVxuICAgICAgICBmcy5tb3ZlU3luYyhcbiAgICAgICAgICBwYXRoLmpvaW4oZGF0YURpciwgXCJvcmdhbmVcIiksXG4gICAgICAgICAgcGF0aC5qb2luKHRhcmdldERpciwgXCJvcmdhbmVcIiksXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTpcbiAgICAgICAgXCJBY3RldXJzLCBtYW5kYXRzIGV0IG9yZ2FuZXMgZGUgbGEgWFbDqG1lIGzDqWdpc2xhdHVyZSAoZmljaGllcnMgc8OpcGFyw6lzLCB5IGNvbXByaXMgbWFuZGF0cylcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE1L2Ftby9hY3RldXJzX21hbmRhdHNfb3JnYW5lc19kaXZpc2VzL0FNTzUwX2FjdGV1cnNfbWFuZGF0c19vcmdhbmVzX2RpdmlzZXNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICBdLFxuICBhZ2VuZGFzOiBbXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiQWdlbmRhX1hWSS5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiQWdlbmRhIGRlIGxhIFhWScOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNi92cC9yZXVuaW9ucy9BZ2VuZGEuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIkFnZW5kYV9YVi5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVpbnplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIkFnZW5kYSBkZSBsYSBYVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNS92cC9yZXVuaW9ucy9BZ2VuZGFfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIkFnZW5kYV9YSVYuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1YXRvcnplLFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNpbmdsZUZpbGUsXG4gICAgICB0aXRsZTogXCJBZ2VuZGEgZGUgbGEgWElWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE0L3ZwL3JldW5pb25zL0FnZW5kYV9YSVYuanNvbi56aXBcIixcbiAgICB9LFxuICBdLFxuICBhbWVuZGVtZW50czogW1xuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIkFtZW5kZW1lbnRzX1hWSS5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiQW1lbmRlbWVudHMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2xvaS9hbWVuZGVtZW50c19kaXZfbGVnaXMvQW1lbmRlbWVudHMuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIkFtZW5kZW1lbnRzX1hWLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5RdWluemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiQW1lbmRlbWVudHMgZGUgbGEgWFbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTUvbG9pL2FtZW5kZW1lbnRzX2xlZ2lzL0FtZW5kZW1lbnRzX1hWLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICAvLyB7XG4gICAgLy8gICBmaWxlbmFtZTogXCJBbWVuZGVtZW50c19YSVYuanNvblwiLFxuICAgIC8vICAgaWdub3JlRm9yV2ViOiB0cnVlLFxuICAgIC8vICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1YXRvcnplLFxuICAgIC8vICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNpbmdsZUZpbGUsXG4gICAgLy8gICB0aXRsZTogXCJBbWVuZGVtZW50cyBkZSBsYSBYSVbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgIC8vICAgdXJsOlxuICAgIC8vICAgICBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTQvbG9pL2FtZW5kZW1lbnRzX2xlZ2lzX1hJVi9BbWVuZGVtZW50c19YSVYuanNvbi56aXBcIixcbiAgICAvLyB9LFxuICBdLFxuICBkb3NzaWVyc0xlZ2lzbGF0aWZzOiBbXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiRG9zc2llcnNfTGVnaXNsYXRpZnNfWFZJLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJEb3NzaWVycyBsw6lnaXNsYXRpZnMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2xvaS9kb3NzaWVyc19sZWdpc2xhdGlmcy9Eb3NzaWVyc19MZWdpc2xhdGlmcy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiRG9zc2llcnNfTGVnaXNsYXRpZnNfWFYuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1aW56ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJEb3NzaWVycyBsw6lnaXNsYXRpZnMgZGUgbGEgWFbDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTUvbG9pL2Rvc3NpZXJzX2xlZ2lzbGF0aWZzL0Rvc3NpZXJzX0xlZ2lzbGF0aWZzX1hWLmpzb24uemlwXCIsXG4gICAgfSxcbiAgICB7XG4gICAgICBmaWxlbmFtZTogXCJEb3NzaWVyc19MZWdpc2xhdGlmc19YSVYuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1YXRvcnplLFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNpbmdsZUZpbGUsXG4gICAgICB0aXRsZTogXCJEb3NzaWVycyBsw6lnaXNsYXRpZnMgZGUgbGEgWElWw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE0L2xvaS9kb3NzaWVyc19sZWdpc2xhdGlmcy9Eb3NzaWVyc19MZWdpc2xhdGlmc19YSVYuanNvbi56aXBcIixcbiAgICB9LFxuICBdLFxuICBzY3J1dGluczogW1xuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIlNjcnV0aW5zX1hWSS5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuU2VpemUsXG4gICAgICByZXBhaXJaaXA6IChkYXRhc2V0OiBEYXRhc2V0LCBkYXRhRGlyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0RGlyID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHRhcmdldERpcikpIHtcbiAgICAgICAgICBmcy5yZW1vdmVTeW5jKHRhcmdldERpcilcbiAgICAgICAgfVxuICAgICAgICBmcy5tb3ZlU3luYyhwYXRoLmpvaW4oZGF0YURpciwgXCJqc29uXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiU2NydXRpbnMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L2xvaS9zY3J1dGlucy9TY3J1dGlucy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiU2NydXRpbnNfWFYuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlF1aW56ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJTY3J1dGlucyBkZSBsYSBYVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNS9sb2kvc2NydXRpbnMvU2NydXRpbnNfWFYuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIlNjcnV0aW5zX1hJVi5qc29uXCIsXG4gICAgICBsZWdpc2xhdHVyZTogTGVnaXNsYXR1cmUuUXVhdG9yemUsXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2luZ2xlRmlsZSxcbiAgICAgIHRpdGxlOiBcIlNjcnV0aW5zIGRlIGxhIFhJVsOobWUgbMOpZ2lzbGF0dXJlXCIsXG4gICAgICB1cmw6IFwiaHR0cDovL2RhdGEuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9zdGF0aWMvb3BlbkRhdGEvcmVwb3NpdG9yeS8xNC9sb2kvc2NydXRpbnMvU2NydXRpbnNfWElWLmpzb24uemlwXCIsXG4gICAgfSxcbiAgXSxcbiAgcXVlc3Rpb25zOiBbXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiUXVlc3Rpb25zX2Vjcml0ZXNfWFZJLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJRdWVzdGlvbnMgw6ljcml0ZXMgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L3F1ZXN0aW9ucy9xdWVzdGlvbnNfZWNyaXRlcy9RdWVzdGlvbnNfZWNyaXRlcy5qc29uLnppcFwiLFxuICAgIH0sXG4gICAge1xuICAgICAgZmlsZW5hbWU6IFwiUXVlc3Rpb25zX2dvdXZlcm5lbWVudF9YVkkuanNvblwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlNlaXplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwianNvblwiKSwgdGFyZ2V0RGlyKVxuICAgICAgfSxcbiAgICAgIHN0cnVjdHVyZTogRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlcyxcbiAgICAgIHRpdGxlOiBcIlF1ZXN0aW9ucyBhdSBnb3V2ZXJuZW1lbnQgZGUgbGEgWFZJw6htZSBsw6lnaXNsYXR1cmVcIixcbiAgICAgIHVybDogXCJodHRwOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L3F1ZXN0aW9ucy9xdWVzdGlvbnNfZ291dmVybmVtZW50L1F1ZXN0aW9uc19nb3V2ZXJuZW1lbnQuanNvbi56aXBcIixcbiAgICB9LFxuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIlF1ZXN0aW9uc19vcmFsZXNfWFZJLmpzb25cIixcbiAgICAgIGxlZ2lzbGF0dXJlOiBMZWdpc2xhdHVyZS5TZWl6ZSxcbiAgICAgIHJlcGFpclppcDogKGRhdGFzZXQ6IERhdGFzZXQsIGRhdGFEaXI6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCB0YXJnZXREaXIgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmModGFyZ2V0RGlyKSkge1xuICAgICAgICAgIGZzLnJlbW92ZVN5bmModGFyZ2V0RGlyKVxuICAgICAgICB9XG4gICAgICAgIGZzLm1vdmVTeW5jKHBhdGguam9pbihkYXRhRGlyLCBcImpzb25cIiksIHRhcmdldERpcilcbiAgICAgIH0sXG4gICAgICBzdHJ1Y3R1cmU6IERhdGFzZXRTdHJ1Y3R1cmUuU2VnbWVudGVkRmlsZXMsXG4gICAgICB0aXRsZTogXCJRdWVzdGlvbnMgb3JhbGVzIHNhbnMgZMOpYmF0cyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHA6Ly9kYXRhLmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvc3RhdGljL29wZW5EYXRhL3JlcG9zaXRvcnkvMTYvcXVlc3Rpb25zL3F1ZXN0aW9uc19vcmFsZXNfc2Fuc19kZWJhdC9RdWVzdGlvbnNfb3JhbGVzX3NhbnNfZGViYXQuanNvbi56aXBcIixcbiAgICB9LFxuICBdLFxuICBjb21wdGVzUmVuZHVzU2VhbmNlczogW1xuICAgIHtcbiAgICAgIGZpbGVuYW1lOiBcIkNvbXB0ZXNfUmVuZHVzX1NlYW5jZXNfWFZJLnhtbFwiLFxuICAgICAgbGVnaXNsYXR1cmU6IExlZ2lzbGF0dXJlLlNlaXplLFxuICAgICAgcmVwYWlyWmlwOiAoZGF0YXNldDogRGF0YXNldCwgZGF0YURpcjogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IHRhcmdldERpciA9IHBhdGguam9pbihkYXRhRGlyLCBkYXRhc2V0LmZpbGVuYW1lKVxuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyh0YXJnZXREaXIpKSB7XG4gICAgICAgICAgZnMucmVtb3ZlU3luYyh0YXJnZXREaXIpXG4gICAgICAgIH1cbiAgICAgICAgZnMubW92ZVN5bmMocGF0aC5qb2luKGRhdGFEaXIsIFwieG1sXCIpLCB0YXJnZXREaXIpXG4gICAgICB9LFxuICAgICAgc3RydWN0dXJlOiBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzLFxuICAgICAgdGl0bGU6IFwiQ29tcHRlcyByZW5kdXMgZGVzIHPDqWFuY2VzIHB1YmxpcXVlcyBkZSBsYSBYVknDqG1lIGzDqWdpc2xhdHVyZVwiLFxuICAgICAgdXJsOiBcImh0dHBzOi8vZGF0YS5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL3N0YXRpYy9vcGVuRGF0YS9yZXBvc2l0b3J5LzE2L3ZwL3N5Y2Vyb25icnV0L3N5c2Vyb24ueG1sLnppcFwiLFxuICAgIH0sXG4gIF0sXG59XG5cbmNvbnN0IGRpcmVjdG9yeTJzY2hlbWE6IGFueSA9IHtcbiAgXCIuKkFnZW5kYV8uKlwiOiBcImFnZW5kYVwiLFxuICBcIi4qU2NydXRpbnNfLipcIjogXCJzY3J1dGluXCIsXG4gIFwiLipRdWVzdGlvbnNfLipcIjogXCJxdWVzdGlvblwiLFxuICBcIi4qQW1lbmRlbWVudHNfLipcIjogXCJhbWVuZGVtZW50XCIsXG4gIFwiLipEb3NzaWVyc19MZWdpc2xhdGlmc18uKi9kb2N1bWVudHNcIjogXCJkb2N1bWVudFwiLFxuICBcIi4qRG9zc2llcnNfTGVnaXNsYXRpZnNfLiovZG9zc2llcnNcIjogXCJkb3NzaWVyXCIsXG4gIFwiLiphY3RldXJzX21hbmRhdHNfb3JnYW5lcy9vcmdhbmVzXCI6IFwib3JnYW5lXCIsXG4gIFwiLiphY3RldXJzX21hbmRhdHNfb3JnYW5lcy9hY3RldXJzXCI6IFwiYWN0ZXVyXCIsXG4gIFwiLipBTU8zMF90b3VzX2FjdGV1cnNfdG91c19tYW5kYXRzX3RvdXNfb3JnYW5lc19oaXN0b3JpcXVlLiovb3JnYW5lc1wiOlxuICAgIFwib3JnYW5lXCIsXG4gIFwiLipBTU8zMF90b3VzX2FjdGV1cnNfdG91c19tYW5kYXRzX3RvdXNfb3JnYW5lc19oaXN0b3JpcXVlLiovYWN0ZXVyc1wiOlxuICAgIFwiYWN0ZXVyXCIsXG4gIFwiLipDb21wdGVzX1JlbmR1c19TZWFuY2VzXy4qXCI6IFwiZGViYXRcIixcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldERhdGFzZXRzKCk6IGFueSB7XG4gIHJldHVybiBbXG4gICAgXCJBZ2VuZGFfWElWXCIsXG4gICAgXCJBZ2VuZGFfWFZcIixcbiAgICBcIkFnZW5kYV9YVklcIixcbiAgICBcIlNjcnV0aW5zX1hJVlwiLFxuICAgIFwiU2NydXRpbnNfWFZcIixcbiAgICBcIlNjcnV0aW5zX1hWSVwiLFxuICAgIFwiUXVlc3Rpb25zX0Vjcml0ZXNfWFZJXCIsXG4gICAgXCJRdWVzdGlvbnNfR291dmVybmVtZW50X1hWSVwiLFxuICAgIFwiQW1lbmRlbWVudHNfWElWXCIsXG4gICAgXCJBbWVuZGVtZW50c19YVlwiLFxuICAgIFwiQW1lbmRlbWVudHNfWFZJXCIsXG4gICAgXCJEb3NzaWVyc19MZWdpc2xhdGlmc19YSVZcIixcbiAgICBcIkRvc3NpZXJzX0xlZ2lzbGF0aWZzX1hWXCIsXG4gICAgXCJEb3NzaWVyc19MZWdpc2xhdGlmc19YVklcIixcbiAgICBcIkFNTzMwX3RvdXNfYWN0ZXVyc190b3VzX21hbmRhdHNfdG91c19vcmdhbmVzX2hpc3RvcmlxdWVcIixcbiAgICBcImFjdGV1cnNfbWFuZGF0c19vcmdhbmVzXCIsXG4gICAgXCJDb21wdGVzX1JlbmR1c19TZWFuY2VzX1hWSVwiLFxuICBdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZERhdGFzZXQoZGlyOiBhbnkpOiBhbnkge1xuICBmb3IgKGNvbnN0IGRhdGFzZXQgb2YgZ2V0RGF0YXNldHMoKSkge1xuICAgIGlmIChkaXIuaW5jbHVkZXMoZGF0YXNldCkpIHJldHVybiB0cnVlXG4gIH1cbiAgcmV0dXJuIGZhbHNlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTY2hlbWFzKCk6IGFueSB7XG4gIHJldHVybiBPYmplY3QudmFsdWVzKGRpcmVjdG9yeTJzY2hlbWEpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYXRhc2V0RGlyZWN0b3J5U2NoZW1hKGRhdGFzZXQ6IHN0cmluZyk6IGFueSB7XG4gIGxldCBkaXJlY3RvcmllczogYW55XG4gIGlmIChkYXRhc2V0LmluY2x1ZGVzKFwiRG9zc2llcnNfTGVnaXNsYXRpZnNfXCIpKSB7XG4gICAgZGlyZWN0b3JpZXMgPSBbYCR7ZGF0YXNldH0vZG9jdW1lbnRzYCwgYCR7ZGF0YXNldH0vZG9zc2llcnNgXVxuICB9IGVsc2UgaWYgKFxuICAgIGRhdGFzZXQuaW5jbHVkZXMoXCJhY3RldXJzX21hbmRhdHNfb3JnYW5lc1wiKSB8fFxuICAgIGRhdGFzZXQuaW5jbHVkZXMoXCJBTU8zMF90b3VzX2FjdGV1cnNfdG91c19tYW5kYXRzX3RvdXNfb3JnYW5lc19oaXN0b3JpcXVlXCIpXG4gICkge1xuICAgIGRpcmVjdG9yaWVzID0gW2Ake2RhdGFzZXR9L29yZ2FuZXNgLCBgJHtkYXRhc2V0fS9hY3RldXJzYF1cbiAgfSBlbHNlIHtcbiAgICBkaXJlY3RvcmllcyA9IFtkYXRhc2V0XVxuICB9XG5cbiAgbGV0IHJlc3VsdHMgPSBbXVxuICBmb3IgKGNvbnN0IGRpcmVjdG9yeSBvZiBkaXJlY3Rvcmllcykge1xuICAgIGZvciAoY29uc3QgcmUgb2YgT2JqZWN0LmtleXMoZGlyZWN0b3J5MnNjaGVtYSkpIHtcbiAgICAgIGlmIChuZXcgUmVnRXhwKHJlKS5leGVjKGRpcmVjdG9yeSkpXG4gICAgICAgIHJlc3VsdHMucHVzaChbYCR7ZGlyZWN0b3J5fS8qKi8qLmpzb25gLCBkaXJlY3Rvcnkyc2NoZW1hW3JlXV0pXG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHRzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaWxlRGF0YXNldFVybChmaWxlbmFtZTogc3RyaW5nKTogW3N0cmluZywgc3RyaW5nXSB8IG51bGwge1xuICBjb25zdCByZSA9IFwiXi4qLyguKilfbmV0dG95ZS8oLiopXCJcbiAgY29uc3QgbWF0Y2ggPSBuZXcgUmVnRXhwKHJlKS5leGVjKGZpbGVuYW1lKVxuICBpZiAobWF0Y2ggPT0gbnVsbCkgcmV0dXJuIG51bGxcbiAgbGV0IFtkYXRhc2V0LCBmaWxlXSA9IFttYXRjaFsxXSwgbWF0Y2hbMl1dXG4gIGlmIChkYXRhc2V0ID09IFwiQU1PMzBfdG91c19hY3RldXJzX3RvdXNfbWFuZGF0c190b3VzX29yZ2FuZXNfaGlzdG9yaXF1ZVwiKVxuICAgIGRhdGFzZXQgPSBcImFjdGV1cnNfbWFuZGF0c19vcmdhbmVzXCJcbiAgcmV0dXJuIFtkYXRhc2V0LCBmaWxlXVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlmZlVwc3RyZWFtKGZpbGVuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBkYXRhc2V0VXJsID0gZmlsZURhdGFzZXRVcmwoZmlsZW5hbWUpXG4gIGlmIChkYXRhc2V0VXJsID09IG51bGwpIHJldHVybiBmaWxlbmFtZVxuICBjb25zdCBbZGF0YXNldCwgZmlsZV0gPSBkYXRhc2V0VXJsXG4gIGNvbnN0IHN1bSA9IGNyZWF0ZUhhc2goXCJzaGExXCIpLnVwZGF0ZShmaWxlKS5kaWdlc3QoXCJoZXhcIikudG9TdHJpbmcoKVxuICByZXR1cm4gYFske2ZpbGV9XShodHRwczovL2dpdC5lbi1yb290Lm9yZy90cmljb3RldXNlcy9kYXRhLnRyaWNvdGV1c2VzLmZyLyR7ZGF0YXNldH0vLS9jb21wYXJlL3Vwc3RyZWFtLi4ubWFzdGVyIyR7c3VtfSlgXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXN0ZXJVcmwoZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGFzZXRVcmwgPSBmaWxlRGF0YXNldFVybChmaWxlbmFtZSlcbiAgaWYgKGRhdGFzZXRVcmwgPT0gbnVsbCkgcmV0dXJuIGZpbGVuYW1lXG4gIGNvbnN0IFtkYXRhc2V0LCBmaWxlXSA9IGRhdGFzZXRVcmxcbiAgcmV0dXJuIGBbJHtmaWxlfV0oaHR0cHM6Ly9naXQuZW4tcm9vdC5vcmcvdHJpY290ZXVzZXMvZGF0YS50cmljb3RldXNlcy5mci8ke2RhdGFzZXR9Ly0vdHJlZS9tYXN0ZXIvJHtmaWxlfSlgXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXJCeUxlZ2lzbGF0dXJlKGRhdGFzZXRzOiBEYXRhc2V0cywgbGVnaXNsYXR1cmU6IGFueSk6IERhdGFzZXRzIHtcbiAgLy8gV2hlbiBhIGdpdmVuIGxlZ2lzbGF0dXJlIGlzIDAsIGl0IGlzIHRoZSBzYW1lIGFzIGdpdmluZyBubyBsZWdpc2xhdHVyZTpcbiAgLy8gSXQgbWVhbnMgXCJldmVyeSBsZWdpc2xhdHVyZXNcIi5cbiAgY29uc3QgbGVnaXNsYXR1cmVzID0gbGVnaXNsYXR1cmU/LnNvbWUoXG4gICAgKGxlZ2lzbGF0dXJlOiBudW1iZXIpID0+IGxlZ2lzbGF0dXJlID09PSAwLFxuICApXG4gICAgPyB1bmRlZmluZWRcbiAgICA6IGxlZ2lzbGF0dXJlXG4gIGlmIChsZWdpc2xhdHVyZXMgIT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IGVuYWJsZWRMZWdpc2xhdHVyZXMgPSBsZWdpc2xhdHVyZXMubWFwKChsZWdpc2xhdHVyZTogbnVtYmVyKSA9PlxuICAgICAgbGVnaXNsYXR1cmUudG9TdHJpbmcoKSxcbiAgICApXG4gICAgZm9yIChsZXQgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGRhdGFzZXRzKSkge1xuICAgICAgZGF0YXNldHNba2V5IGFzIGtleW9mIHR5cGVvZiBkYXRhc2V0c10gPSB2YWx1ZS5maWx0ZXIoXG4gICAgICAgIChkYXRhc2V0OiB7IGxlZ2lzbGF0dXJlOiBhbnkgfSkgPT5cbiAgICAgICAgICBkYXRhc2V0LmxlZ2lzbGF0dXJlID09PSBMZWdpc2xhdHVyZS5BbGwgfHxcbiAgICAgICAgICBlbmFibGVkTGVnaXNsYXR1cmVzLmluY2x1ZGVzKGRhdGFzZXQubGVnaXNsYXR1cmUpLFxuICAgICAgKVxuICAgIH1cbiAgfVxuICByZXR1cm4gZGF0YXNldHM7XG59Il0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxVQUFVLFFBQVEsUUFBUTtBQUNuQyxPQUFPQyxFQUFFLE1BQU0sVUFBVTtBQUN6QixPQUFPQyxJQUFJLE1BQU0sTUFBTTtBQUFBLFNBRWRDLFdBQVc7QUFzQnBCLFdBQVlDLGdCQUFnQiwwQkFBaEJBLGdCQUFnQjtFQUFoQkEsZ0JBQWdCLENBQWhCQSxnQkFBZ0I7RUFBaEJBLGdCQUFnQixDQUFoQkEsZ0JBQWdCO0VBQUEsT0FBaEJBLGdCQUFnQjtBQUFBO0FBSzVCLFdBQVlDLGVBQWUsMEJBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFmQSxlQUFlLENBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFmQSxlQUFlLENBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQWZBLGVBQWUsQ0FBZkEsZUFBZTtFQUFmQSxlQUFlLENBQWZBLGVBQWU7RUFBZkEsZUFBZSxDQUFmQSxlQUFlO0VBQUEsT0FBZkEsZUFBZTtBQUFBO0FBb0IzQixPQUFPLE1BQU1DLFFBQWtCLEdBQUc7RUFDaENDLGdCQUFnQixFQUFFLENBQ2hCO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFD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
|
|
@@ -343,4 +343,4 @@ function walkDocumentAndDivisions(documentOrDivision) {
|
|
|
343
343
|
}
|
|
344
344
|
}, _marked2, null, [[3, 12, 15, 18]]);
|
|
345
345
|
}
|
|
346
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3RyaW5ncyIsInJlcXVpcmUiLCJfYWN0ZXVyc19ldF9vcmdhbmVzIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsImUiLCJ0IiwiciIsIk9iamVjdCIsInByb3RvdHlwZSIsIm4iLCJoYXNPd25Qcm9wZXJ0eSIsIm8iLCJkZWZpbmVQcm9wZXJ0eSIsInZhbHVlIiwiaSIsIlN5bWJvbCIsImEiLCJpdGVyYXRvciIsImMiLCJhc3luY0l0ZXJhdG9yIiwidSIsInRvU3RyaW5nVGFnIiwiZGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwid3JhcCIsIkdlbmVyYXRvciIsImNyZWF0ZSIsIkNvbnRleHQiLCJtYWtlSW52b2tlTWV0aG9kIiwidHJ5Q2F0Y2giLCJ0eXBlIiwiYXJnIiwiY2FsbCIsImgiLCJsIiwiZiIsInMiLCJ5IiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsInAiLCJkIiwiZ2V0UHJvdG90eXBlT2YiLCJ2IiwidmFsdWVzIiwiZyIsImRlZmluZUl0ZXJhdG9yTWV0aG9kcyIsImZvckVhY2giLCJfaW52b2tlIiwiQXN5bmNJdGVyYXRvciIsImludm9rZSIsIl90eXBlb2YiLCJyZXNvbHZlIiwiX19hd2FpdCIsInRoZW4iLCJjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZyIsIkVycm9yIiwiZG9uZSIsIm1ldGhvZCIsImRlbGVnYXRlIiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwiVHlwZUVycm9yIiwicmVzdWx0TmFtZSIsIm5leHQiLCJuZXh0TG9jIiwicHVzaFRyeUVudHJ5IiwidHJ5TG9jIiwiY2F0Y2hMb2MiLCJmaW5hbGx5TG9jIiwiYWZ0ZXJMb2MiLCJ0cnlFbnRyaWVzIiwicHVzaCIsInJlc2V0VHJ5RW50cnkiLCJjb21wbGV0aW9uIiwicmVzZXQiLCJpc05hTiIsImxlbmd0aCIsImRpc3BsYXlOYW1lIiwiaXNHZW5lcmF0b3JGdW5jdGlvbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsIm1hcmsiLCJzZXRQcm90b3R5cGVPZiIsIl9fcHJvdG9fXyIsImF3cmFwIiwiYXN5bmMiLCJQcm9taXNlIiwia2V5cyIsInJldmVyc2UiLCJwb3AiLCJwcmV2IiwiY2hhckF0Iiwic2xpY2UiLCJzdG9wIiwicnZhbCIsImhhbmRsZSIsImNvbXBsZXRlIiwiZmluaXNoIiwiX2NhdGNoIiwiZGVsZWdhdGVZaWVsZCIsIl9tYXJrZWQiLCJ3YWxrQWN0ZXMiLCJfbWFya2VkMiIsIndhbGtEb2N1bWVudEFuZERpdmlzaW9ucyIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJpdGVyIiwiQXJyYXkiLCJmcm9tIiwiaXNBcnJheSIsIl9hcnJheUxpa2VUb0FycmF5IiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJhbGxvd0FycmF5TGlrZSIsIml0IiwiRiIsIl9lIiwibm9ybWFsQ29tcGxldGlvbiIsImRpZEVyciIsImVyciIsInN0ZXAiLCJfZTIiLCJtaW5MZW4iLCJ0b1N0cmluZyIsInRlc3QiLCJsZW4iLCJhcnIyIiwiRmluYWxTdGF0dXMiLCJleHBvcnRzIiwiU3RhdHVzT25seSIsImNvbW1pc3Npb25Gb25kVWlkRnJvbURvc3NpZXIiLCJkb3NzaWVyIiwiYWN0ZXNMZWdpc2xhdGlmcyIsInVuZGVmaW5lZCIsIl9pdGVyYXRvciIsIl9zdGVwIiwiYWN0ZSIsImNvZGVBY3RlIiwibWF0Y2giLCJvcmdhbmVSZWYiLCJzdGF0dXNGcm9tQ29kaWVyTGliZWxsZSIsImxpYmVsbGUiLCJTdWNjZXNzIiwiRmFpbHVyZSIsIkluUHJvZ3Jlc3MiLCJDb2RlVHlwZU9yZ2FuZSIsIkNvbnN0aXR1Iiwic3RhdGVGcm9tQWN0ZVBhdGgiLCJhY3RlUGF0aCIsImxlYWZBY3RlIiwieHNpVHlwZSIsInN0YXR1dEFkb3B0aW9uIiwiY3VycmVudFN0YXR1cyIsImxhYmVsIiwidW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIiLCJzdGF0dXRDb25jbHVzaW9uIiwiZmluYWxTdGF0dXMiLCJwcm9jZWR1cmVQYXJsZW1lbnRhaXJlIiwiY29kZSIsImluY2x1ZGVzIiwiZGVjaXNpb24iLCJ0eXBlRGVjbGFyYXRpb24iLCJ0eXBlTW90aW9uQ2Vuc3VyZSIsIm9yZ2FuZSIsImNvZGVUeXBlIiwidHlwZU1vdGlvbiIsImNhc1NhaXNpbmUiLCJzdGF0ZUZyb21BY3RlcyIsImFjdGVzIiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsInN0YXR1cyIsImNvbmNhdCIsInN0YXRlRnJvbURvc3NpZXIiLCJfaXRlcmF0b3IzIiwiX3N0ZXAzIiwid2Fsa0FjdGVzJCIsIl9jb250ZXh0IiwidDEiLCJkb2N1bWVudE9yRGl2aXNpb24iLCJfZG9jdW1lbnRPckRpdmlzaW9uJGQiLCJfaXRlcmF0b3I0IiwiX3N0ZXA0IiwiZGl2aXNpb24iLCJ3YWxrRG9jdW1lbnRBbmREaXZpc2lvbnMkIiwiX2NvbnRleHQyIiwiZGl2aXNpb25zIl0sInNvdXJjZXMiOlsiLi4vc3JjL2Rvc3NpZXJzX2xlZ2lzbGF0aWZzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyIH0gZnJvbSBcIi4vc3RyaW5nc1wiXG5pbXBvcnQgeyBDb2RlVHlwZU9yZ2FuZSB9IGZyb20gXCIuL3R5cGVzL2FjdGV1cnNfZXRfb3JnYW5lc1wiXG5pbXBvcnQgdHlwZSB7XG4gIERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICBBY3RlTGVnaXNsYXRpZixcbiAgRGl2aXNpb24sXG4gIERvY3VtZW50LFxufSBmcm9tIFwiLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRGaWxlSW5mb3Mge1xuICBmaWxlbmFtZT86IHN0cmluZ1xuICBzaGEyNTY/OiBzdHJpbmdcbiAgdXJsOiBzdHJpbmdcbiAgc3RhdHVzOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgRG9jdW1lbnRGaWxlc0luZGV4ICA9IHtcbiAgaHRtbD86IERvY3VtZW50RmlsZUluZm9zW11cbiAgcGRmPzogRG9jdW1lbnRGaWxlSW5mb3NbXVxuICBcInJhdy1odG1sXCI/OiBEb2N1bWVudEZpbGVJbmZvc1tdXG59XG5cbmV4cG9ydCBlbnVtIEZpbmFsU3RhdHVzIHtcbiAgRmFpbHVyZSA9IFwiRkFJTFVSRVwiLFxuICBTdWNjZXNzID0gXCJTVUNDRVNTXCIsXG59XG5cbmludGVyZmFjZSBTdGF0ZSB7XG4gIGN1cnJlbnRTdGF0dXM6IFN0YXR1c1xuICBmaW5hbFN0YXR1cz86IEZpbmFsU3RhdHVzXG4gIGxhYmVsOiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgU3RhdHVzID0gQ29kZVR5cGVPcmdhbmUgfCBTdGF0dXNPbmx5XG5cbmV4cG9ydCBlbnVtIFN0YXR1c09ubHkge1xuICBGYWlsdXJlID0gXCJGQUlMVVJFXCIsXG4gIEluUHJvZ3Jlc3MgPSBcIklOX1BST0dSRVNTXCIsXG4gIFN1Y2Nlc3MgPSBcIlNVQ0NFU1NcIixcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbW1pc3Npb25Gb25kVWlkRnJvbURvc3NpZXIoXG4gIGRvc3NpZXI6IERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgaWYgKGRvc3NpZXIuYWN0ZXNMZWdpc2xhdGlmcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZm9yIChjb25zdCBhY3RlIG9mIHdhbGtBY3Rlcyhkb3NzaWVyLmFjdGVzTGVnaXNsYXRpZnMpKSB7XG4gICAgICBpZiAoXG4gICAgICAgIChhY3RlLmNvZGVBY3RlIGFzIHVua25vd24gYXMgc3RyaW5nKS5tYXRjaCgvXkFOLiotQ09NLUZPTkQtU0FJU0lFJC8pICE9PVxuICAgICAgICAgIG51bGwgJiZcbiAgICAgICAgYWN0ZS5vcmdhbmVSZWYgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICBhY3RlLm9yZ2FuZVJlZiAhPT0gXCJQTzIxMTQ5NFwiIC8vIENvbW1pc3Npb24gZGVzIGZpbmFuY2VzIGR1IFPDiU5BVCAoPT4gZXJyZXVyKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBhY3RlLm9yZ2FuZVJlZlxuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlOiBzdHJpbmcpOiBTdGF0dXMge1xuICBzd2l0Y2ggKGxpYmVsbGUpIHtcbiAgICBjYXNlIFwiQWNjb3JkXCI6XG4gICAgY2FzZSBcImFkb3B0w6lcIjpcbiAgICBjYXNlIFwiYWRvcHTDqSwgZGFucyBsZXMgY29uZGl0aW9ucyBwcsOpdnVlcyDDoCBsJ2FydGljbGUgNDUsIGFsaW7DqWEgMyxcIiArXG4gICAgICBcIiBkZSBsYSBDb25zdGl0dXRpb25cIjpcbiAgICBjYXNlIFwiYWRvcHTDqWVcIjpcbiAgICBjYXNlIFwiYWRvcHTDqSBzYW5zIG1vZGlmaWNhdGlvblwiOlxuICAgIGNhc2UgXCJhZG9wdMOpZSBzYW5zIG1vZGlmaWNhdGlvblwiOlxuICAgIGNhc2UgXCJDb25mb3JtZVwiOlxuICAgIGNhc2UgXCJjb25zaWTDqXLDqWUgY29tbWUgZMOpZmluaXRpdmUgZW4gYXBwbGljYXRpb24gZGUgbCdhcnRpY2xlIDE1MS03IGR1IFLDqGdsZW1lbnRcIjpcbiAgICBjYXNlIFwiY29uc2lkw6lyw6llIGNvbW1lIGTDqWZpbml0aXZlIGVuIGFwcGxpY2F0aW9uIGRlIGwnYXJ0aWNsZSAxNTEtOSBkdSBSw6hnbGVtZW50XCI6XG4gICAgY2FzZSBcIk1vdGlvbiBhZG9wdMOpKGUpXCI6XG4gICAgICByZXR1cm4gU3RhdHVzT25seS5TdWNjZXNzXG4gICAgY2FzZSBcIkTDqXNhY2NvcmRcIjpcbiAgICBjYXNlIFwiTW90aW9uIHJlamV0w6koZSlcIjpcbiAgICBjYXNlIFwicmVqZXTDqVwiOlxuICAgIGNhc2UgXCJyZWpldMOpZVwiOlxuICAgICAgcmV0dXJuIFN0YXR1c09ubHkuRmFpbHVyZVxuICAgIGNhc2UgXCJhZG9wdMOpIGF2ZWMgbW9kaWZpY2F0aW9uc1wiOlxuICAgIGNhc2UgXCJhZG9wdMOpZSBhdmVjIG1vZGlmaWNhdGlvbnNcIjpcbiAgICBjYXNlIFwiRGUgZHJvaXQgKGFydGljbGUgNjEgYWxpbsOpYSAxIGRlIGxhIENvbnN0aXR1dGlvbilcIjpcbiAgICBjYXNlIFwibW9kaWZpw6lcIjpcbiAgICBjYXNlIFwibW9kaWZpw6llXCI6XG4gICAgY2FzZSBcIk1vdGlvbiBkZSBjZW5zdXJlIDQ5LTJcIjpcbiAgICBjYXNlIFwiUGFydGllbGxlbWVudCBjb25mb3JtZVwiOlxuICAgICAgcmV0dXJuIFN0YXR1c09ubHkuSW5Qcm9ncmVzc1xuICAgIGNhc2UgXCJTb2l4YW50ZSBkw6lwdXTDqXMgYXUgbW9pbnNcIjpcbiAgICBjYXNlIFwiU29peGFudGUgc8OpbmF0ZXVycyBhdSBtb2luc1wiOlxuICAgICAgcmV0dXJuIENvZGVUeXBlT3JnYW5lLkNvbnN0aXR1XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBTdGF0dXNPbmx5LkluUHJvZ3Jlc3NcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RhdGVGcm9tQWN0ZVBhdGgoXG4gIGRvc3NpZXI6IERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICBhY3RlUGF0aDogQWN0ZUxlZ2lzbGF0aWZbXSxcbik6IFN0YXRlIHwgbnVsbCB7XG4gIGNvbnN0IGxlYWZBY3RlID0gYWN0ZVBhdGhbYWN0ZVBhdGgubGVuZ3RoIC0gMV1cbiAgbGV0IGxpYmVsbGUgPSBudWxsXG4gIHN3aXRjaCAobGVhZkFjdGUueHNpVHlwZSkge1xuICAgIGNhc2UgXCJBZG9wdGlvbl9FdXJvcGVfVHlwZVwiOlxuICAgICAgbGliZWxsZSA9IGxlYWZBY3RlLnN0YXR1dEFkb3B0aW9uIS5saWJlbGxlXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlKSxcbiAgICAgICAgbGFiZWw6IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGxpYmVsbGUpLFxuICAgICAgfVxuICAgIGNhc2UgXCJDb25jbHVzaW9uRXRhcGVDQ19UeXBlXCI6XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUuc3RhdHV0Q29uY2x1c2lvbiEubGliZWxsZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1czogc3RhdHVzRnJvbUNvZGllckxpYmVsbGUobGliZWxsZSksXG4gICAgICAgIGxhYmVsOiB1bmNhcGl0YWxpemVGaXJzdExldHRlcihsaWJlbGxlKSxcbiAgICAgIH1cbiAgICBjYXNlIFwiRGVjaXNpb25fVHlwZVwiOiB7XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUuc3RhdHV0Q29uY2x1c2lvbiEubGliZWxsZVxuICAgICAgbGV0IGN1cnJlbnRTdGF0dXMgPSBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlKVxuICAgICAgbGV0IGZpbmFsU3RhdHVzID0gdW5kZWZpbmVkXG4gICAgICBzd2l0Y2ggKGRvc3NpZXIucHJvY2VkdXJlUGFybGVtZW50YWlyZS5jb2RlKSB7XG4gICAgICAgIGNhc2UgXCJQUk9DRURVUkVfUEFSTEVNRU5UQUlSRV8yXCI6XG4gICAgICAgICAgLy8gUHJvcG9zaXRpb24gZGUgbG9pIG9yZGluYWlyZVxuICAgICAgICAgIC8vIE5vdCBzdXJlIGZvciBvdGhlciBjYXNlcyA9PiBUbyBpbXByb3ZlLlxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIFtcInJlamV0w6lcIiwgXCJyZWpldMOpZVwiXS5pbmNsdWRlcyhsaWJlbGxlKSAmJlxuICAgICAgICAgICAgZG9zc2llci5hY3Rlc0xlZ2lzbGF0aWZzICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGRvc3NpZXIuYWN0ZXNMZWdpc2xhdGlmcy5sZW5ndGggPT09IDFcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGZpbmFsU3RhdHVzID0gRmluYWxTdGF0dXMuRmFpbHVyZVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVha1xuICAgICAgICBjYXNlIFwiUFJPQ0VEVVJFX1BBUkxFTUVOVEFJUkVfOFwiOiAvLyBSw6lzb2x1dGlvblxuICAgICAgICBjYXNlIFwiUFJPQ0VEVVJFX1BBUkxFTUVOVEFJUkVfMjJcIjpcbiAgICAgICAgICAvLyBSw6lzb2x1dGlvbiBBcnRpY2xlIDM0LTFcbiAgICAgICAgICBpZiAoY3VycmVudFN0YXR1cyA9PT0gU3RhdHVzT25seS5TdWNjZXNzKSB7XG4gICAgICAgICAgICBmaW5hbFN0YXR1cyA9IEZpbmFsU3RhdHVzLlN1Y2Nlc3NcbiAgICAgICAgICB9IGVsc2UgaWYgKGN1cnJlbnRTdGF0dXMgPT09IFN0YXR1c09ubHkuRmFpbHVyZSkge1xuICAgICAgICAgICAgZmluYWxTdGF0dXMgPSBGaW5hbFN0YXR1cy5GYWlsdXJlXG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXMsXG4gICAgICAgIGZpbmFsU3RhdHVzLFxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgfVxuICAgIGNhc2UgXCJEZWNpc2lvbk1vdGlvbkNlbnN1cmVfVHlwZVwiOlxuICAgICAgbGliZWxsZSA9IGxlYWZBY3RlLmRlY2lzaW9uIS5saWJlbGxlXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlKSxcbiAgICAgICAgZmluYWxTdGF0dXM6XG4gICAgICAgICAgLy8gTm90IHN1cmUgZm9yIG90aGVyIGNhc2VzID0+IFRvIGltcHJvdmUuXG4gICAgICAgICAgLy8gRW5nYWdlbWVudCBkZSBsYSByZXNwb25zYWJpbGl0w6kgZ291dmVybmVtZW50YWxlXG4gICAgICAgICAgZG9zc2llci5wcm9jZWR1cmVQYXJsZW1lbnRhaXJlLmNvZGUgPT09XG4gICAgICAgICAgICBcIlBST0NFRFVSRV9QQVJMRU1FTlRBSVJFXzEzXCIgJiYgbGliZWxsZSA9PT0gXCJNb3Rpb24gcmVqZXTDqShlKVwiXG4gICAgICAgICAgICA/IEZpbmFsU3RhdHVzLkZhaWx1cmVcbiAgICAgICAgICAgIDogRmluYWxTdGF0dXMuU3VjY2VzcywgLy8gVE9ETzogTm90IHN1cmUgb2YgdGhpcyBgdHJ1ZWAgdmFsdWVcbiAgICAgICAgbGFiZWw6IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGxpYmVsbGUpLFxuICAgICAgfVxuICAgIGNhc2UgXCJEZWNpc2lvblJlY2V2YWJpbGl0ZUJ1cmVhdV9UeXBlXCI6XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUuZGVjaXNpb24hLmxpYmVsbGVcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpLFxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgY2FzZSBcIkRlY2xhcmF0aW9uR291dmVybmVtZW50X1R5cGVcIjpcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS50eXBlRGVjbGFyYXRpb24hLmxpYmVsbGVcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpLFxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgY2FzZSBcIkRlcG90TW90aW9uQ2Vuc3VyZV9UeXBlXCI6XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUudHlwZU1vdGlvbkNlbnN1cmUhLmxpYmVsbGVcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpLFxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgY2FzZSBcIkRlcG90UmFwcG9ydF9UeXBlXCI6XG4gICAgICBpZiAoXG4gICAgICAgIFtcbiAgICAgICAgICBcIkRvc3NpZXJDb21taXNzaW9uRW5xdWV0ZV9UeXBlXCIsXG4gICAgICAgICAgXCJEb3NzaWVyTWlzc2lvbkNvbnRyb2xlX1R5cGVcIixcbiAgICAgICAgICBcIkRvc3NpZXJNaXNzaW9uSW5mb3JtYXRpb25fVHlwZVwiLFxuICAgICAgICBdLmluY2x1ZGVzKGRvc3NpZXIueHNpVHlwZSEpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBjdXJyZW50U3RhdHVzOiBhY3RlUGF0aFswXS5vcmdhbmUhLmNvZGVUeXBlLFxuICAgICAgICAgIGZpbmFsU3RhdHVzOiBGaW5hbFN0YXR1cy5TdWNjZXNzLFxuICAgICAgICAgIGxhYmVsOiBcInJhcHBvcnQgZMOpcG9zw6lcIixcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICBjYXNlIFwiTW90aW9uUHJvY2VkdXJlX1R5cGVcIjpcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS50eXBlTW90aW9uIS5saWJlbGxlXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlKSxcbiAgICAgICAgbGFiZWw6IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGxpYmVsbGUpLFxuICAgICAgfVxuICAgIGNhc2UgXCJQcm9tdWxnYXRpb25fVHlwZVwiOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1czogU3RhdHVzT25seS5TdWNjZXNzLFxuICAgICAgICBmaW5hbFN0YXR1czogRmluYWxTdGF0dXMuU3VjY2VzcyxcbiAgICAgICAgbGFiZWw6IFwicHJvbXVsZ3XDqVwiLFxuICAgICAgfVxuICAgIGNhc2UgXCJSZXRyYWl0SW5pdGlhdGl2ZV9UeXBlXCI6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBTdGF0dXNPbmx5LkZhaWx1cmUsXG4gICAgICAgIGZpbmFsU3RhdHVzOiBGaW5hbFN0YXR1cy5GYWlsdXJlLFxuICAgICAgICBsYWJlbDogXCJyZXRpcsOpXCIsXG4gICAgICB9XG4gICAgY2FzZSBcIlNhaXNpbmVDb25zZWlsQ29uc3RpdF9UeXBlXCI6XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUuY2FzU2Fpc2luZSEubGliZWxsZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1czogc3RhdHVzRnJvbUNvZGllckxpYmVsbGUobGliZWxsZSksXG4gICAgICAgIGxhYmVsOiB1bmNhcGl0YWxpemVGaXJzdExldHRlcihsaWJlbGxlKSxcbiAgICAgIH1cbiAgICBkZWZhdWx0OlxuICAgICAgLy8gVGhpcyBhY3RlIGdpdmVzIG5vIHN0YXR1cy5cbiAgICAgIHJldHVybiBudWxsXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlRnJvbUFjdGVzKFxuICBkb3NzaWVyOiBEb3NzaWVyUGFybGVtZW50YWlyZSxcbiAgYWN0ZVBhdGg6IEFjdGVMZWdpc2xhdGlmW10sXG4gIGFjdGVzPzogQWN0ZUxlZ2lzbGF0aWZbXSxcbik6IFN0YXRlIHwgbnVsbCB7XG4gIGlmIChhY3RlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZm9yIChjb25zdCBhY3RlIG9mIFsuLi5hY3Rlc10ucmV2ZXJzZSgpKSB7XG4gICAgICBjb25zdCBzdGF0dXMgPSBhY3RlLmFjdGVzTGVnaXNsYXRpZnNcbiAgICAgICAgPyBzdGF0ZUZyb21BY3Rlcyhkb3NzaWVyLCBbLi4uYWN0ZVBhdGgsIGFjdGVdLCBhY3RlLmFjdGVzTGVnaXNsYXRpZnMpXG4gICAgICAgIDogc3RhdGVGcm9tQWN0ZVBhdGgoZG9zc2llciwgWy4uLmFjdGVQYXRoLCBhY3RlXSlcbiAgICAgIGlmIChzdGF0dXMgIT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIHN0YXR1c1xuICAgICAgfVxuICAgICAgLy8gTm8gc3RhdHVzIGZvdW5kLCBjb250aW51ZSB3aXRoIHByZXZpb3VzIGFjdGUuXG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0ZUZyb21Eb3NzaWVyKGRvc3NpZXI6IERvc3NpZXJQYXJsZW1lbnRhaXJlKTogU3RhdGUge1xuICBjb25zdCBzdGF0dXMgPSBzdGF0ZUZyb21BY3Rlcyhkb3NzaWVyLCBbXSwgZG9zc2llci5hY3Rlc0xlZ2lzbGF0aWZzKVxuICBpZiAoc3RhdHVzICE9PSBudWxsKSB7XG4gICAgcmV0dXJuIHN0YXR1c1xuICB9XG4gIHJldHVybiB7XG4gICAgY3VycmVudFN0YXR1czogU3RhdHVzT25seS5JblByb2dyZXNzLFxuICAgIGxhYmVsOiBcImVuIGNvdXJzXCIsXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uKiB3YWxrQWN0ZXMoXG4gIGFjdGVzOiBBY3RlTGVnaXNsYXRpZltdLFxuKTogR2VuZXJhdG9yPEFjdGVMZWdpc2xhdGlmLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciAoY29uc3QgYWN0ZSBvZiBhY3Rlcykge1xuICAgIHlpZWxkIGFjdGVcbiAgICBpZiAoYWN0ZS5hY3Rlc0xlZ2lzbGF0aWZzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHlpZWxkKiB3YWxrQWN0ZXMoYWN0ZS5hY3Rlc0xlZ2lzbGF0aWZzKVxuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24qIHdhbGtEb2N1bWVudEFuZERpdmlzaW9ucyhcbiAgZG9jdW1lbnRPckRpdmlzaW9uOiBEb2N1bWVudCB8IERpdmlzaW9uLFxuKTogR2VuZXJhdG9yPERvY3VtZW50IHwgRGl2aXNpb24sIHZvaWQsIHVua25vd24+IHtcbiAgeWllbGQgZG9jdW1lbnRPckRpdmlzaW9uXG4gIGZvciAoY29uc3QgZGl2aXNpb24gb2YgZG9jdW1lbnRPckRpdmlzaW9uLmRpdmlzaW9ucyA/PyBbXSkge1xuICAgIHlpZWxkKiB3YWxrRG9jdW1lbnRBbmREaXZpc2lvbnMoZGl2aXNpb24pXG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLG1CQUFBLEdBQUFELE9BQUE7QUFBMkQsU0FBQUUsb0JBQUEsa0JBQTNELHFKQUFBQSxtQkFBQSxZQUFBQSxvQkFBQSxXQUFBQyxDQUFBLFNBQUFDLENBQUEsRUFBQUQsQ0FBQSxPQUFBRSxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsU0FBQSxFQUFBQyxDQUFBLEdBQUFILENBQUEsQ0FBQUksY0FBQSxFQUFBQyxDQUFBLEdBQUFKLE1BQUEsQ0FBQUssY0FBQSxjQUFBUCxDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxJQUFBRCxDQUFBLENBQUFELENBQUEsSUFBQUUsQ0FBQSxDQUFBTyxLQUFBLEtBQUFDLENBQUEsd0JBQUFDLE1BQUEsR0FBQUEsTUFBQSxPQUFBQyxDQUFBLEdBQUFGLENBQUEsQ0FBQUcsUUFBQSxrQkFBQUMsQ0FBQSxHQUFBSixDQUFBLENBQUFLLGFBQUEsdUJBQUFDLENBQUEsR0FBQU4sQ0FBQSxDQUFBTyxXQUFBLDhCQUFBQyxPQUFBakIsQ0FBQSxFQUFBRCxDQUFBLEVBQUFFLENBQUEsV0FBQUMsTUFBQSxDQUFBSyxjQUFBLENBQUFQLENBQUEsRUFBQUQsQ0FBQSxJQUFBUyxLQUFBLEVBQUFQLENBQUEsRUFBQWlCLFVBQUEsTUFBQUMsWUFBQSxNQUFBQyxRQUFBLFNBQUFwQixDQUFBLENBQUFELENBQUEsV0FBQWtCLE1BQUEsbUJBQUFqQixDQUFBLElBQUFpQixNQUFBLFlBQUFBLE9BQUFqQixDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxXQUFBRCxDQUFBLENBQUFELENBQUEsSUFBQUUsQ0FBQSxnQkFBQW9C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
|
|
346
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3RyaW5ncyIsInJlcXVpcmUiLCJfYWN0ZXVyc19ldF9vcmdhbmVzIiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsImUiLCJ0IiwiciIsIk9iamVjdCIsInByb3RvdHlwZSIsIm4iLCJoYXNPd25Qcm9wZXJ0eSIsIm8iLCJkZWZpbmVQcm9wZXJ0eSIsInZhbHVlIiwiaSIsIlN5bWJvbCIsImEiLCJpdGVyYXRvciIsImMiLCJhc3luY0l0ZXJhdG9yIiwidSIsInRvU3RyaW5nVGFnIiwiZGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwid3JhcCIsIkdlbmVyYXRvciIsImNyZWF0ZSIsIkNvbnRleHQiLCJtYWtlSW52b2tlTWV0aG9kIiwidHJ5Q2F0Y2giLCJ0eXBlIiwiYXJnIiwiY2FsbCIsImgiLCJsIiwiZiIsInMiLCJ5IiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsInAiLCJkIiwiZ2V0UHJvdG90eXBlT2YiLCJ2IiwidmFsdWVzIiwiZyIsImRlZmluZUl0ZXJhdG9yTWV0aG9kcyIsImZvckVhY2giLCJfaW52b2tlIiwiQXN5bmNJdGVyYXRvciIsImludm9rZSIsIl90eXBlb2YiLCJyZXNvbHZlIiwiX19hd2FpdCIsInRoZW4iLCJjYWxsSW52b2tlV2l0aE1ldGhvZEFuZEFyZyIsIkVycm9yIiwiZG9uZSIsIm1ldGhvZCIsImRlbGVnYXRlIiwibWF5YmVJbnZva2VEZWxlZ2F0ZSIsInNlbnQiLCJfc2VudCIsImRpc3BhdGNoRXhjZXB0aW9uIiwiYWJydXB0IiwiVHlwZUVycm9yIiwicmVzdWx0TmFtZSIsIm5leHQiLCJuZXh0TG9jIiwicHVzaFRyeUVudHJ5IiwidHJ5TG9jIiwiY2F0Y2hMb2MiLCJmaW5hbGx5TG9jIiwiYWZ0ZXJMb2MiLCJ0cnlFbnRyaWVzIiwicHVzaCIsInJlc2V0VHJ5RW50cnkiLCJjb21wbGV0aW9uIiwicmVzZXQiLCJpc05hTiIsImxlbmd0aCIsImRpc3BsYXlOYW1lIiwiaXNHZW5lcmF0b3JGdW5jdGlvbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsIm1hcmsiLCJzZXRQcm90b3R5cGVPZiIsIl9fcHJvdG9fXyIsImF3cmFwIiwiYXN5bmMiLCJQcm9taXNlIiwia2V5cyIsInJldmVyc2UiLCJwb3AiLCJwcmV2IiwiY2hhckF0Iiwic2xpY2UiLCJzdG9wIiwicnZhbCIsImhhbmRsZSIsImNvbXBsZXRlIiwiZmluaXNoIiwiX2NhdGNoIiwiZGVsZWdhdGVZaWVsZCIsIl9tYXJrZWQiLCJ3YWxrQWN0ZXMiLCJfbWFya2VkMiIsIndhbGtEb2N1bWVudEFuZERpdmlzaW9ucyIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJpdGVyIiwiQXJyYXkiLCJmcm9tIiwiaXNBcnJheSIsIl9hcnJheUxpa2VUb0FycmF5IiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIiLCJhbGxvd0FycmF5TGlrZSIsIml0IiwiRiIsIl9lIiwibm9ybWFsQ29tcGxldGlvbiIsImRpZEVyciIsImVyciIsInN0ZXAiLCJfZTIiLCJtaW5MZW4iLCJ0b1N0cmluZyIsInRlc3QiLCJsZW4iLCJhcnIyIiwiRmluYWxTdGF0dXMiLCJleHBvcnRzIiwiU3RhdHVzT25seSIsImNvbW1pc3Npb25Gb25kVWlkRnJvbURvc3NpZXIiLCJkb3NzaWVyIiwiYWN0ZXNMZWdpc2xhdGlmcyIsInVuZGVmaW5lZCIsIl9pdGVyYXRvciIsIl9zdGVwIiwiYWN0ZSIsImNvZGVBY3RlIiwibWF0Y2giLCJvcmdhbmVSZWYiLCJzdGF0dXNGcm9tQ29kaWVyTGliZWxsZSIsImxpYmVsbGUiLCJTdWNjZXNzIiwiRmFpbHVyZSIsIkluUHJvZ3Jlc3MiLCJDb2RlVHlwZU9yZ2FuZSIsIkNvbnN0aXR1Iiwic3RhdGVGcm9tQWN0ZVBhdGgiLCJhY3RlUGF0aCIsImxlYWZBY3RlIiwieHNpVHlwZSIsInN0YXR1dEFkb3B0aW9uIiwiY3VycmVudFN0YXR1cyIsImxhYmVsIiwidW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIiLCJzdGF0dXRDb25jbHVzaW9uIiwiZmluYWxTdGF0dXMiLCJwcm9jZWR1cmVQYXJsZW1lbnRhaXJlIiwiY29kZSIsImluY2x1ZGVzIiwiZGVjaXNpb24iLCJ0eXBlRGVjbGFyYXRpb24iLCJ0eXBlTW90aW9uQ2Vuc3VyZSIsIm9yZ2FuZSIsImNvZGVUeXBlIiwidHlwZU1vdGlvbiIsImNhc1NhaXNpbmUiLCJzdGF0ZUZyb21BY3RlcyIsImFjdGVzIiwiX2l0ZXJhdG9yMiIsIl9zdGVwMiIsInN0YXR1cyIsImNvbmNhdCIsInN0YXRlRnJvbURvc3NpZXIiLCJfaXRlcmF0b3IzIiwiX3N0ZXAzIiwid2Fsa0FjdGVzJCIsIl9jb250ZXh0IiwidDEiLCJkb2N1bWVudE9yRGl2aXNpb24iLCJfZG9jdW1lbnRPckRpdmlzaW9uJGQiLCJfaXRlcmF0b3I0IiwiX3N0ZXA0IiwiZGl2aXNpb24iLCJ3YWxrRG9jdW1lbnRBbmREaXZpc2lvbnMkIiwiX2NvbnRleHQyIiwiZGl2aXNpb25zIl0sInNvdXJjZXMiOlsiLi4vc3JjL2Rvc3NpZXJzX2xlZ2lzbGF0aWZzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyIH0gZnJvbSBcIi4vc3RyaW5nc1wiXG5pbXBvcnQgeyBDb2RlVHlwZU9yZ2FuZSB9IGZyb20gXCIuL3R5cGVzL2FjdGV1cnNfZXRfb3JnYW5lc1wiXG5pbXBvcnQgdHlwZSB7XG4gIERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICBBY3RlTGVnaXNsYXRpZixcbiAgRGl2aXNpb24sXG4gIERvY3VtZW50LFxufSBmcm9tIFwiLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG5cbmV4cG9ydCBpbnRlcmZhY2UgRG9jdW1lbnRGaWxlSW5mb3Mge1xuICBmaWxlbmFtZT86IHN0cmluZ1xuICBzaGEyNTY/OiBzdHJpbmdcbiAgdXJsOiBzdHJpbmdcbiAgc3RhdHVzOiBudW1iZXJcbn1cblxuZXhwb3J0IHR5cGUgRG9jdW1lbnRGaWxlc0luZGV4ID0ge1xuICBodG1sPzogRG9jdW1lbnRGaWxlSW5mb3NbXVxuICBwZGY/OiBEb2N1bWVudEZpbGVJbmZvc1tdXG4gIFwicmF3LWh0bWxcIj86IERvY3VtZW50RmlsZUluZm9zW11cbn1cblxuZXhwb3J0IGVudW0gRmluYWxTdGF0dXMge1xuICBGYWlsdXJlID0gXCJGQUlMVVJFXCIsXG4gIFN1Y2Nlc3MgPSBcIlNVQ0NFU1NcIixcbn1cblxuaW50ZXJmYWNlIFN0YXRlIHtcbiAgY3VycmVudFN0YXR1czogU3RhdHVzXG4gIGZpbmFsU3RhdHVzPzogRmluYWxTdGF0dXNcbiAgbGFiZWw6IHN0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBTdGF0dXMgPSBDb2RlVHlwZU9yZ2FuZSB8IFN0YXR1c09ubHlcblxuZXhwb3J0IGVudW0gU3RhdHVzT25seSB7XG4gIEZhaWx1cmUgPSBcIkZBSUxVUkVcIixcbiAgSW5Qcm9ncmVzcyA9IFwiSU5fUFJPR1JFU1NcIixcbiAgU3VjY2VzcyA9IFwiU1VDQ0VTU1wiLFxufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tbWlzc2lvbkZvbmRVaWRGcm9tRG9zc2llcihcbiAgZG9zc2llcjogRG9zc2llclBhcmxlbWVudGFpcmUsXG4pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAoZG9zc2llci5hY3Rlc0xlZ2lzbGF0aWZzICE9PSB1bmRlZmluZWQpIHtcbiAgICBmb3IgKGNvbnN0IGFjdGUgb2Ygd2Fsa0FjdGVzKGRvc3NpZXIuYWN0ZXNMZWdpc2xhdGlmcykpIHtcbiAgICAgIGlmIChcbiAgICAgICAgKGFjdGUuY29kZUFjdGUgYXMgdW5rbm93biBhcyBzdHJpbmcpLm1hdGNoKC9eQU4uKi1DT00tRk9ORC1TQUlTSUUkLykgIT09XG4gICAgICAgICAgbnVsbCAmJlxuICAgICAgICBhY3RlLm9yZ2FuZVJlZiAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgIGFjdGUub3JnYW5lUmVmICE9PSBcIlBPMjExNDk0XCIgLy8gQ29tbWlzc2lvbiBkZXMgZmluYW5jZXMgZHUgU8OJTkFUICg9PiBlcnJldXIpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIGFjdGUub3JnYW5lUmVmXG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiB1bmRlZmluZWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGU6IHN0cmluZyk6IFN0YXR1cyB7XG4gIHN3aXRjaCAobGliZWxsZSkge1xuICAgIGNhc2UgXCJBY2NvcmRcIjpcbiAgICBjYXNlIFwiYWRvcHTDqVwiOlxuICAgIGNhc2UgXCJhZG9wdMOpLCBkYW5zIGxlcyBjb25kaXRpb25zIHByw6l2dWVzIMOgIGwnYXJ0aWNsZSA0NSwgYWxpbsOpYSAzLFwiICtcbiAgICAgIFwiIGRlIGxhIENvbnN0aXR1dGlvblwiOlxuICAgIGNhc2UgXCJhZG9wdMOpZVwiOlxuICAgIGNhc2UgXCJhZG9wdMOpIHNhbnMgbW9kaWZpY2F0aW9uXCI6XG4gICAgY2FzZSBcImFkb3B0w6llIHNhbnMgbW9kaWZpY2F0aW9uXCI6XG4gICAgY2FzZSBcIkNvbmZvcm1lXCI6XG4gICAgY2FzZSBcImNvbnNpZMOpcsOpZSBjb21tZSBkw6lmaW5pdGl2ZSBlbiBhcHBsaWNhdGlvbiBkZSBsJ2FydGljbGUgMTUxLTcgZHUgUsOoZ2xlbWVudFwiOlxuICAgIGNhc2UgXCJjb25zaWTDqXLDqWUgY29tbWUgZMOpZmluaXRpdmUgZW4gYXBwbGljYXRpb24gZGUgbCdhcnRpY2xlIDE1MS05IGR1IFLDqGdsZW1lbnRcIjpcbiAgICBjYXNlIFwiTW90aW9uIGFkb3B0w6koZSlcIjpcbiAgICAgIHJldHVybiBTdGF0dXNPbmx5LlN1Y2Nlc3NcbiAgICBjYXNlIFwiRMOpc2FjY29yZFwiOlxuICAgIGNhc2UgXCJNb3Rpb24gcmVqZXTDqShlKVwiOlxuICAgIGNhc2UgXCJyZWpldMOpXCI6XG4gICAgY2FzZSBcInJlamV0w6llXCI6XG4gICAgICByZXR1cm4gU3RhdHVzT25seS5GYWlsdXJlXG4gICAgY2FzZSBcImFkb3B0w6kgYXZlYyBtb2RpZmljYXRpb25zXCI6XG4gICAgY2FzZSBcImFkb3B0w6llIGF2ZWMgbW9kaWZpY2F0aW9uc1wiOlxuICAgIGNhc2UgXCJEZSBkcm9pdCAoYXJ0aWNsZSA2MSBhbGluw6lhIDEgZGUgbGEgQ29uc3RpdHV0aW9uKVwiOlxuICAgIGNhc2UgXCJtb2RpZmnDqVwiOlxuICAgIGNhc2UgXCJtb2RpZmnDqWVcIjpcbiAgICBjYXNlIFwiTW90aW9uIGRlIGNlbnN1cmUgNDktMlwiOlxuICAgIGNhc2UgXCJQYXJ0aWVsbGVtZW50IGNvbmZvcm1lXCI6XG4gICAgICByZXR1cm4gU3RhdHVzT25seS5JblByb2dyZXNzXG4gICAgY2FzZSBcIlNvaXhhbnRlIGTDqXB1dMOpcyBhdSBtb2luc1wiOlxuICAgIGNhc2UgXCJTb2l4YW50ZSBzw6luYXRldXJzIGF1IG1vaW5zXCI6XG4gICAgICByZXR1cm4gQ29kZVR5cGVPcmdhbmUuQ29uc3RpdHVcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIFN0YXR1c09ubHkuSW5Qcm9ncmVzc1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdGF0ZUZyb21BY3RlUGF0aChcbiAgZG9zc2llcjogRG9zc2llclBhcmxlbWVudGFpcmUsXG4gIGFjdGVQYXRoOiBBY3RlTGVnaXNsYXRpZltdLFxuKTogU3RhdGUgfCBudWxsIHtcbiAgY29uc3QgbGVhZkFjdGUgPSBhY3RlUGF0aFthY3RlUGF0aC5sZW5ndGggLSAxXVxuICBsZXQgbGliZWxsZSA9IG51bGxcbiAgc3dpdGNoIChsZWFmQWN0ZS54c2lUeXBlKSB7XG4gICAgY2FzZSBcIkFkb3B0aW9uX0V1cm9wZV9UeXBlXCI6XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUuc3RhdHV0QWRvcHRpb24hLmxpYmVsbGVcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpLFxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgY2FzZSBcIkNvbmNsdXNpb25FdGFwZUNDX1R5cGVcIjpcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS5zdGF0dXRDb25jbHVzaW9uIS5saWJlbGxlXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlKSxcbiAgICAgICAgbGFiZWw6IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGxpYmVsbGUpLFxuICAgICAgfVxuICAgIGNhc2UgXCJEZWNpc2lvbl9UeXBlXCI6IHtcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS5zdGF0dXRDb25jbHVzaW9uIS5saWJlbGxlXG4gICAgICBsZXQgY3VycmVudFN0YXR1cyA9IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpXG4gICAgICBsZXQgZmluYWxTdGF0dXMgPSB1bmRlZmluZWRcbiAgICAgIHN3aXRjaCAoZG9zc2llci5wcm9jZWR1cmVQYXJsZW1lbnRhaXJlLmNvZGUpIHtcbiAgICAgICAgY2FzZSBcIlBST0NFRFVSRV9QQVJMRU1FTlRBSVJFXzJcIjpcbiAgICAgICAgICAvLyBQcm9wb3NpdGlvbiBkZSBsb2kgb3JkaW5haXJlXG4gICAgICAgICAgLy8gTm90IHN1cmUgZm9yIG90aGVyIGNhc2VzID0+IFRvIGltcHJvdmUuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgW1wicmVqZXTDqVwiLCBcInJlamV0w6llXCJdLmluY2x1ZGVzKGxpYmVsbGUpICYmXG4gICAgICAgICAgICBkb3NzaWVyLmFjdGVzTGVnaXNsYXRpZnMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgZG9zc2llci5hY3Rlc0xlZ2lzbGF0aWZzLmxlbmd0aCA9PT0gMVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgZmluYWxTdGF0dXMgPSBGaW5hbFN0YXR1cy5GYWlsdXJlXG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIGNhc2UgXCJQUk9DRURVUkVfUEFSTEVNRU5UQUlSRV84XCI6IC8vIFLDqXNvbHV0aW9uXG4gICAgICAgIGNhc2UgXCJQUk9DRURVUkVfUEFSTEVNRU5UQUlSRV8yMlwiOlxuICAgICAgICAgIC8vIFLDqXNvbHV0aW9uIEFydGljbGUgMzQtMVxuICAgICAgICAgIGlmIChjdXJyZW50U3RhdHVzID09PSBTdGF0dXNPbmx5LlN1Y2Nlc3MpIHtcbiAgICAgICAgICAgIGZpbmFsU3RhdHVzID0gRmluYWxTdGF0dXMuU3VjY2Vzc1xuICAgICAgICAgIH0gZWxzZSBpZiAoY3VycmVudFN0YXR1cyA9PT0gU3RhdHVzT25seS5GYWlsdXJlKSB7XG4gICAgICAgICAgICBmaW5hbFN0YXR1cyA9IEZpbmFsU3RhdHVzLkZhaWx1cmVcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVha1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1cyxcbiAgICAgICAgZmluYWxTdGF0dXMsXG4gICAgICAgIGxhYmVsOiB1bmNhcGl0YWxpemVGaXJzdExldHRlcihsaWJlbGxlKSxcbiAgICAgIH1cbiAgICB9XG4gICAgY2FzZSBcIkRlY2lzaW9uTW90aW9uQ2Vuc3VyZV9UeXBlXCI6XG4gICAgICBsaWJlbGxlID0gbGVhZkFjdGUuZGVjaXNpb24hLmxpYmVsbGVcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpLFxuICAgICAgICBmaW5hbFN0YXR1czpcbiAgICAgICAgICAvLyBOb3Qgc3VyZSBmb3Igb3RoZXIgY2FzZXMgPT4gVG8gaW1wcm92ZS5cbiAgICAgICAgICAvLyBFbmdhZ2VtZW50IGRlIGxhIHJlc3BvbnNhYmlsaXTDqSBnb3V2ZXJuZW1lbnRhbGVcbiAgICAgICAgICBkb3NzaWVyLnByb2NlZHVyZVBhcmxlbWVudGFpcmUuY29kZSA9PT1cbiAgICAgICAgICAgIFwiUFJPQ0VEVVJFX1BBUkxFTUVOVEFJUkVfMTNcIiAmJiBsaWJlbGxlID09PSBcIk1vdGlvbiByZWpldMOpKGUpXCJcbiAgICAgICAgICAgID8gRmluYWxTdGF0dXMuRmFpbHVyZVxuICAgICAgICAgICAgOiBGaW5hbFN0YXR1cy5TdWNjZXNzLCAvLyBUT0RPOiBOb3Qgc3VyZSBvZiB0aGlzIGB0cnVlYCB2YWx1ZVxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgY2FzZSBcIkRlY2lzaW9uUmVjZXZhYmlsaXRlQnVyZWF1X1R5cGVcIjpcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS5kZWNpc2lvbiEubGliZWxsZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1czogc3RhdHVzRnJvbUNvZGllckxpYmVsbGUobGliZWxsZSksXG4gICAgICAgIGxhYmVsOiB1bmNhcGl0YWxpemVGaXJzdExldHRlcihsaWJlbGxlKSxcbiAgICAgIH1cbiAgICBjYXNlIFwiRGVjbGFyYXRpb25Hb3V2ZXJuZW1lbnRfVHlwZVwiOlxuICAgICAgbGliZWxsZSA9IGxlYWZBY3RlLnR5cGVEZWNsYXJhdGlvbiEubGliZWxsZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1czogc3RhdHVzRnJvbUNvZGllckxpYmVsbGUobGliZWxsZSksXG4gICAgICAgIGxhYmVsOiB1bmNhcGl0YWxpemVGaXJzdExldHRlcihsaWJlbGxlKSxcbiAgICAgIH1cbiAgICBjYXNlIFwiRGVwb3RNb3Rpb25DZW5zdXJlX1R5cGVcIjpcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS50eXBlTW90aW9uQ2Vuc3VyZSEubGliZWxsZVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY3VycmVudFN0YXR1czogc3RhdHVzRnJvbUNvZGllckxpYmVsbGUobGliZWxsZSksXG4gICAgICAgIGxhYmVsOiB1bmNhcGl0YWxpemVGaXJzdExldHRlcihsaWJlbGxlKSxcbiAgICAgIH1cbiAgICBjYXNlIFwiRGVwb3RSYXBwb3J0X1R5cGVcIjpcbiAgICAgIGlmIChcbiAgICAgICAgW1xuICAgICAgICAgIFwiRG9zc2llckNvbW1pc3Npb25FbnF1ZXRlX1R5cGVcIixcbiAgICAgICAgICBcIkRvc3NpZXJNaXNzaW9uQ29udHJvbGVfVHlwZVwiLFxuICAgICAgICAgIFwiRG9zc2llck1pc3Npb25JbmZvcm1hdGlvbl9UeXBlXCIsXG4gICAgICAgIF0uaW5jbHVkZXMoZG9zc2llci54c2lUeXBlISlcbiAgICAgICkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGN1cnJlbnRTdGF0dXM6IGFjdGVQYXRoWzBdLm9yZ2FuZSEuY29kZVR5cGUsXG4gICAgICAgICAgZmluYWxTdGF0dXM6IEZpbmFsU3RhdHVzLlN1Y2Nlc3MsXG4gICAgICAgICAgbGFiZWw6IFwicmFwcG9ydCBkw6lwb3PDqVwiLFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIGNhc2UgXCJNb3Rpb25Qcm9jZWR1cmVfVHlwZVwiOlxuICAgICAgbGliZWxsZSA9IGxlYWZBY3RlLnR5cGVNb3Rpb24hLmxpYmVsbGVcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IHN0YXR1c0Zyb21Db2RpZXJMaWJlbGxlKGxpYmVsbGUpLFxuICAgICAgICBsYWJlbDogdW5jYXBpdGFsaXplRmlyc3RMZXR0ZXIobGliZWxsZSksXG4gICAgICB9XG4gICAgY2FzZSBcIlByb211bGdhdGlvbl9UeXBlXCI6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBTdGF0dXNPbmx5LlN1Y2Nlc3MsXG4gICAgICAgIGZpbmFsU3RhdHVzOiBGaW5hbFN0YXR1cy5TdWNjZXNzLFxuICAgICAgICBsYWJlbDogXCJwcm9tdWxndcOpXCIsXG4gICAgICB9XG4gICAgY2FzZSBcIlJldHJhaXRJbml0aWF0aXZlX1R5cGVcIjpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGN1cnJlbnRTdGF0dXM6IFN0YXR1c09ubHkuRmFpbHVyZSxcbiAgICAgICAgZmluYWxTdGF0dXM6IEZpbmFsU3RhdHVzLkZhaWx1cmUsXG4gICAgICAgIGxhYmVsOiBcInJldGlyw6lcIixcbiAgICAgIH1cbiAgICBjYXNlIFwiU2Fpc2luZUNvbnNlaWxDb25zdGl0X1R5cGVcIjpcbiAgICAgIGxpYmVsbGUgPSBsZWFmQWN0ZS5jYXNTYWlzaW5lIS5saWJlbGxlXG4gICAgICByZXR1cm4ge1xuICAgICAgICBjdXJyZW50U3RhdHVzOiBzdGF0dXNGcm9tQ29kaWVyTGliZWxsZShsaWJlbGxlKSxcbiAgICAgICAgbGFiZWw6IHVuY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGxpYmVsbGUpLFxuICAgICAgfVxuICAgIGRlZmF1bHQ6XG4gICAgICAvLyBUaGlzIGFjdGUgZ2l2ZXMgbm8gc3RhdHVzLlxuICAgICAgcmV0dXJuIG51bGxcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gc3RhdGVGcm9tQWN0ZXMoXG4gIGRvc3NpZXI6IERvc3NpZXJQYXJsZW1lbnRhaXJlLFxuICBhY3RlUGF0aDogQWN0ZUxlZ2lzbGF0aWZbXSxcbiAgYWN0ZXM/OiBBY3RlTGVnaXNsYXRpZltdLFxuKTogU3RhdGUgfCBudWxsIHtcbiAgaWYgKGFjdGVzICE9PSB1bmRlZmluZWQpIHtcbiAgICBmb3IgKGNvbnN0IGFjdGUgb2YgWy4uLmFjdGVzXS5yZXZlcnNlKCkpIHtcbiAgICAgIGNvbnN0IHN0YXR1cyA9IGFjdGUuYWN0ZXNMZWdpc2xhdGlmc1xuICAgICAgICA/IHN0YXRlRnJvbUFjdGVzKGRvc3NpZXIsIFsuLi5hY3RlUGF0aCwgYWN0ZV0sIGFjdGUuYWN0ZXNMZWdpc2xhdGlmcylcbiAgICAgICAgOiBzdGF0ZUZyb21BY3RlUGF0aChkb3NzaWVyLCBbLi4uYWN0ZVBhdGgsIGFjdGVdKVxuICAgICAgaWYgKHN0YXR1cyAhPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gc3RhdHVzXG4gICAgICB9XG4gICAgICAvLyBObyBzdGF0dXMgZm91bmQsIGNvbnRpbnVlIHdpdGggcHJldmlvdXMgYWN0ZS5cbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN0YXRlRnJvbURvc3NpZXIoZG9zc2llcjogRG9zc2llclBhcmxlbWVudGFpcmUpOiBTdGF0ZSB7XG4gIGNvbnN0IHN0YXR1cyA9IHN0YXRlRnJvbUFjdGVzKGRvc3NpZXIsIFtdLCBkb3NzaWVyLmFjdGVzTGVnaXNsYXRpZnMpXG4gIGlmIChzdGF0dXMgIT09IG51bGwpIHtcbiAgICByZXR1cm4gc3RhdHVzXG4gIH1cbiAgcmV0dXJuIHtcbiAgICBjdXJyZW50U3RhdHVzOiBTdGF0dXNPbmx5LkluUHJvZ3Jlc3MsXG4gICAgbGFiZWw6IFwiZW4gY291cnNcIixcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24qIHdhbGtBY3RlcyhcbiAgYWN0ZXM6IEFjdGVMZWdpc2xhdGlmW10sXG4pOiBHZW5lcmF0b3I8QWN0ZUxlZ2lzbGF0aWYsIHZvaWQsIHVua25vd24+IHtcbiAgZm9yIChjb25zdCBhY3RlIG9mIGFjdGVzKSB7XG4gICAgeWllbGQgYWN0ZVxuICAgIGlmIChhY3RlLmFjdGVzTGVnaXNsYXRpZnMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgeWllbGQqIHdhbGtBY3RlcyhhY3RlLmFjdGVzTGVnaXNsYXRpZnMpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiogd2Fsa0RvY3VtZW50QW5kRGl2aXNpb25zKFxuICBkb2N1bWVudE9yRGl2aXNpb246IERvY3VtZW50IHwgRGl2aXNpb24sXG4pOiBHZW5lcmF0b3I8RG9jdW1lbnQgfCBEaXZpc2lvbiwgdm9pZCwgdW5rbm93bj4ge1xuICB5aWVsZCBkb2N1bWVudE9yRGl2aXNpb25cbiAgZm9yIChjb25zdCBkaXZpc2lvbiBvZiBkb2N1bWVudE9yRGl2aXNpb24uZGl2aXNpb25zID8/IFtdKSB7XG4gICAgeWllbGQqIHdhbGtEb2N1bWVudEFuZERpdmlzaW9ucyhkaXZpc2lvbilcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsbUJBQUEsR0FBQUQsT0FBQTtBQUEyRCxTQUFBRSxvQkFBQSxrQkFBM0QscUpBQUFBLG1CQUFBLFlBQUFBLG9CQUFBLFdBQUFDLENBQUEsU0FBQUMsQ0FBQSxFQUFBRCxDQUFBLE9BQUFFLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxTQUFBLEVBQUFDLENBQUEsR0FBQUgsQ0FBQSxDQUFBSSxjQUFBLEVBQUFDLENBQUEsR0FBQUosTUFBQSxDQUFBSyxjQUFBLGNBQUFQLENBQUEsRUFBQUQsQ0FBQSxFQUFBRSxDQUFBLElBQUFELENBQUEsQ0FBQUQsQ0FBQSxJQUFBRSxDQUFBLENBQUFPLEtBQUEsS0FBQUMsQ0FBQSx3QkFBQUMsTUFBQSxHQUFBQSxNQUFBLE9BQUFDLENBQUEsR0FBQUYsQ0FBQSxDQUFBRyxRQUFBLGtCQUFBQyxDQUFBLEdBQUFKLENBQUEsQ0FBQUssYUFBQSx1QkFBQUMsQ0FBQSxHQUFBTixDQUFBLENBQUFPLFdBQUEsOEJBQUFDLE9BQUFqQixDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxXQUFBQyxNQUFBLENBQUFLLGNBQUEsQ0FBQVAsQ0FBQSxFQUFBRCxDQUFBLElBQUFTLEtBQUEsRUFBQVAsQ0FBQSxFQUFBaUIsVUFBQSxNQUFBQyxZQUFBLE1BQUFDLFFBQUEsU0FBQXBCLENBQUEsQ0FBQUQsQ0FBQSxXQUFBa0IsTUFBQSxtQkFBQWpCLENBQUEsSUFBQWlCLE1BQUEsWUFBQUEsT0FBQWpCLENBQUEsRUFBQUQsQ0FBQSxFQUFBRSxDQUFBLFdBQUFELENBQUEsQ0FBQUQsQ0FBQSxJQUFBRSxDQUFBLGdCQUFBb0Is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
|