sigesp 1.1.75-20251014 → 1.1.79-20251127
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/esm2020/lib/core/interfaces/Constantes.mjs +14 -1
- package/esm2020/lib/core/interfaces/IPlantillaIntegracion.mjs +2 -0
- package/esm2020/lib/core/interfaces/Nomina.mjs +1 -1
- package/esm2020/lib/core/interfaces/RecursosHumanos.mjs +1 -1
- package/esm2020/lib/core/models/SCG/MPlantillaIntegracion.model.mjs +114 -0
- package/esm2020/lib/core/models/SNO/MDefinicionNomina.model.mjs +8 -1
- package/esm2020/lib/core/models/SNO/MFideicomiso.model.mjs +8 -1
- package/esm2020/lib/sigesp.service.mjs +20 -1
- package/esm2020/public-api.mjs +3 -2
- package/fesm2015/sigesp.mjs +158 -1
- package/fesm2015/sigesp.mjs.map +1 -1
- package/fesm2020/sigesp.mjs +158 -1
- package/fesm2020/sigesp.mjs.map +1 -1
- package/lib/core/interfaces/Constantes.d.ts +6 -0
- package/lib/core/interfaces/IPlantillaIntegracion.d.ts +37 -0
- package/lib/core/interfaces/Nomina.d.ts +3 -0
- package/lib/core/interfaces/RecursosHumanos.d.ts +3 -0
- package/lib/core/models/SCG/MPlantillaIntegracion.model.d.ts +42 -0
- package/lib/core/models/SNO/MDefinicionNomina.model.d.ts +3 -0
- package/lib/core/models/SNO/MFideicomiso.model.d.ts +3 -0
- package/lib/sigesp.service.d.ts +11 -0
- package/package.json +1 -1
- package/public-api.d.ts +3 -1
|
@@ -87,6 +87,9 @@ export class MConfiguracionFideicomiso extends MBasicModel {
|
|
|
87
87
|
this.codigoTipoPersonal = '';
|
|
88
88
|
this.denominacionTipoPersonal = '';
|
|
89
89
|
this.formulaFideicomiso = 'xxx';
|
|
90
|
+
this.cuentaInteres = '';
|
|
91
|
+
this.denominacionCuentaFideicomiso = '';
|
|
92
|
+
this.denominacionCuentainteres = '';
|
|
90
93
|
if (e) {
|
|
91
94
|
this.idEnterprise = +e.id_enterprise;
|
|
92
95
|
this.idEmpresa = +e.id_empresa;
|
|
@@ -102,6 +105,9 @@ export class MConfiguracionFideicomiso extends MBasicModel {
|
|
|
102
105
|
this.denominacionTipoPersonal = e.dentipper;
|
|
103
106
|
this.idFideicomisoConfiguracion = parseInt(e.id_fidconfig);
|
|
104
107
|
this.formulaFideicomiso = e.forfid;
|
|
108
|
+
this.cuentaInteres = e.cueint;
|
|
109
|
+
this.denominacionCuentaFideicomiso = e.cuefid;
|
|
110
|
+
this.denominacionCuentainteres = e.cueint;
|
|
105
111
|
}
|
|
106
112
|
else {
|
|
107
113
|
this.isNew = true;
|
|
@@ -119,6 +125,7 @@ export class MConfiguracionFideicomiso extends MBasicModel {
|
|
|
119
125
|
diabonfinfid: this.diasBonoFinAnio.toString(),
|
|
120
126
|
cuefid: this.cuentaFideicomiso,
|
|
121
127
|
forfid: this.formulaFideicomiso,
|
|
128
|
+
cueint: this.cuentaInteres,
|
|
122
129
|
};
|
|
123
130
|
}
|
|
124
131
|
}
|
|
@@ -403,4 +410,4 @@ export class MFideicomisoPeriodoInteres extends MBasicModel {
|
|
|
403
410
|
}
|
|
404
411
|
}
|
|
405
412
|
}
|
|
406
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTUZpZGVpY29taXNvLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lnZXNwL3NyYy9saWIvY29yZS9tb2RlbHMvU05PL01GaWRlaWNvbWlzby5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsTUFBTSxPQUFPLFlBQWEsU0FBUSxXQUFXO0lBc0J6QyxZQUFZLENBQWU7UUFDdkIsS0FBSyxFQUFFLENBQUM7UUF0QkwsaUJBQVksR0FBUSxDQUFDLENBQUM7UUFDdEIsY0FBUyxHQUFRLENBQUMsQ0FBQztRQUNuQixlQUFVLEdBQVEsQ0FBQyxDQUFDO1FBQ3BCLGtCQUFhLEdBQVEsQ0FBQyxDQUFDO1FBQ3ZCLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUM1QixxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFDM0Isc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBQzVCLHdCQUFtQixHQUFRLENBQUMsQ0FBQztRQUM3Qiw0QkFBdUIsR0FBUSxZQUFZLENBQUM7UUFDNUMsOEJBQXlCLEdBQVEsR0FBRyxDQUFDO1FBQ3JDLHdDQUFtQyxHQUFRLENBQUMsQ0FBQztRQUM3QyxpQ0FBNEIsR0FBUSxZQUFZLENBQUM7UUFDakQsdUNBQWtDLEdBQVEsQ0FBQyxDQUFDO1FBQzVDLG9DQUErQixHQUFRLENBQUMsQ0FBQztRQUN6QyxtQ0FBOEIsR0FBUSxFQUFFLENBQUM7UUFDekMsZ0NBQTJCLEdBQVEsRUFBRSxDQUFDO1FBQ3RDLDhCQUF5QixHQUFRLENBQUMsQ0FBQztRQUNuQyxzQkFBaUIsR0FBUSxDQUFDLENBQUM7UUFDM0IsZ0NBQTJCLEdBQVEsRUFBRSxDQUFDO1FBQ3RDLDBCQUFxQixHQUFRLEVBQUUsQ0FBQztRQUluQyxJQUFHLENBQUMsRUFBQztZQUNGLElBQUksQ0FBQyxZQUFZLEdBQUMsQ0FBQyxDQUFD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RSxDQUFDLENBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEdBQUMsTUFBTSxDQUFBLENBQUM7Z0NBQ2hELElBQUksQ0FBQyxVQUFVLElBQUUsQ0FBQyxDQUFBLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFDLE9BQU8sQ0FBQSxDQUFDO29DQUNqRCxJQUFJLENBQUMsVUFBVSxJQUFFLENBQUMsQ0FBQSxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFBLEVBQUUsQ0FBQztZQUNwRCxJQUFJLENBQUMsVUFBVSxJQUFFLENBQUMsQ0FBQSxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBQyxRQUFRLENBQUEsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLFVBQVUsSUFBRSxDQUFDLENBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEdBQUMsWUFBWSxDQUFBLENBQUM7b0JBQ3RELElBQUksQ0FBQyxVQUFVLElBQUUsRUFBRSxDQUFBLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFDLFNBQVMsQ0FBQSxDQUFDO3dCQUNwRCxJQUFJLENBQUMsVUFBVSxJQUFFLEVBQUUsQ0FBQSxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBQyxXQUFXLENBQUEsQ0FBQzs0QkFDdEQsSUFBSSxDQUFDLFVBQVUsSUFBRSxFQUFFLENBQUEsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLEdBQUMsV0FBVyxDQUFBLENBQUMsQ0FBQSxFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLFlBQVksR0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO1NBQzlCO2FBQUs7WUFDRixJQUFJLENBQUMsS0FBSyxHQUFDLElBQUksQ0FBQztTQUNuQjtJQUNMLENBQUM7Q0FFSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElDYWxjdWxvUHJlc3RhY2lvbiwgSUNvbmZpZ3VyYWNpb25GaWRlaWNvbWlzbywgSUZpZGVpY29taXNvLCBJRmlkZWljb21pc29JbnRlcmVzLCBJRmlkZWljb21pc29QZXJpb2RvLCBJRmlkZWljb21pc29QZXJpb2RvSW50ZXJlcywgSUZpZGVpY29taXNvUGVyaW9kb0ludGVyZXNDYXRhbG9nbywgSVByZXN0YWNpb25lc0FudGlndWVkYWQgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9SZWN1cnNvc0h1bWFub3NcIjtcclxuaW1wb3J0IHsgTUJhc2ljTW9kZWwgfSBmcm9tIFwiLi4vYmFzaWMtbW9kZWwubW9kZWxcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBNRmlkZWljb21pc28gZXh0ZW5kcyBNQmFzaWNNb2RlbCB7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZFBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkZmlkZWljb21pc286bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgY29kaWdvRmlkZWljb21pc286c3RyaW5nPScnOyBcclxuICAgIHB1YmxpYyBmaWNoYUZpZGVpY29taWNvOnN0cmluZz0nJzsgXHJcbiAgICBwdWJsaWMgY3VlbnRhRmlkZWljb21pc286c3RyaW5nPScnOyBcclxuICAgIHB1YmxpYyBpZEN1ZW50YUZpZGVpY29taXNvOm51bWJlcj0wOyBcclxuICAgIHB1YmxpYyBmZWNoYUluZ3Jlc29GaWRlaWNvbWlzbzpzdHJpbmc9JzE5MDAtMDEtMDEnOyBcclxuICAgIHB1YmxpYyBjYXBpdGFsaXphY2lvbkZpZGVpY29taXNvOnN0cmluZz0nTic7XHJcbiAgICBwdWJsaWMgY2FwaXRhbGl6YXJBbnRpZ3VlZGFkQ29tcGxlbWVudGFyaWE6bnVtYmVyPTA7IFxyXG4gICAgcHVibGljIGZlY2hhQ29udGludWlkYWRQcmVzdGFjaW9uZXM6c3RyaW5nPScxOTAwLTAxLTAxJzsgXHJcbiAgICBwdWJsaWMgY29udGFiaWxpemFyUHJlc3RhY2lvbmVzQW50aWd1ZWRhZDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBwb3JjZW50YWplSW50ZXJlc0NhcGl0YWxpemFjaW9uOm51bWJlcj0wO1xyXG4gICAgcHVibGljIHNjZ0N1ZW50YUFudGlndWVkYWRGaWRlaWNvbWlzbzpzdHJpbmc9Jyc7IFxyXG4gICAgcHVibGljIHNjZ2N1ZW50YUludGVyZXNGaWRlaWNvbWlzbzpzdHJpbmc9Jyc7IFxyXG4gICAgcHVibGljIGNhbGN1bGFySXRlcmVzRmlkZWljb21pc286bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRVYmljYWNpb25GaXNpY2E6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgZGVub21pbmFjaW9uVWJpY2FjaW9uRmlzaWNhOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBjb2RpZ29VYmljYWNpb25GaXNpY2E6c3RyaW5nPScnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGU/OklGaWRlaWNvbWlzbyl7ICAgICAgICBcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGlmKGUpe1xyXG4gICAgICAgICAgIHRoaXMuaWRFbnRlcnByaXNlPStlLmlkX2VudGVycHJpc2U7ICBcclxuICAgICAgICAgICAgdGhpcy5pZEVtcHJlc2E9K2UuaWRfZW1wcmVzYcKgXHJcbiAgICAgICAgICAgIHRoaXMuaWRQZXJzb25hbD1wYXJzZUludChlLmlkX3BlcnNvbmFsKVxyXG4gICAgICAgICAgICB0aGlzLmlkZmlkZWljb21pc289cGFyc2VJbnQoZS5pZF9maWRlaWNvbWlzbylcclxuICAgICAgICAgICAgdGhpcy5jb2RpZ29GaWRlaWNvbWlzbz1lLmNvZGZpZFxyXG4gICAgICAgICAgICB0aGlzLmZpY2hhRmlkZWljb21pY289ZS5maWNmaWQ7IFxyXG4gICAgICAgICAgICB0aGlzLmlkQ3VlbnRhRmlkZWljb21pc289cGFyc2VJbnQoZS5pZF9jdGFiYW5wZXIpOyBcclxuICAgICAgICAgICAgdGhpcy5jdWVudGFGaWRlaWNvbWlzbz1lLmN0YWJhbnBlcjtcclxuICAgICAgICAgICAgdGhpcy5mZWNoYUluZ3Jlc29GaWRlaWNvbWlzbz1lLmZlY2luZ2ZpZDsgXHJcbiAgICAgICAgICAgIHRoaXMuY2FwaXRhbGl6YWNpb25GaWRlaWNvbWlzbz1lLmNhcGZpZDtcclxuICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXphckFudGlndWVkYWRDb21wbGVtZW50YXJpYT1wYXJzZUludChlLmNhcGFudGNvbSk7IFxyXG4gICAgICAgICAgICB0aGlzLmZlY2hhQ29udGludWlkYWRQcmVzdGFjaW9uZXM9ZS5mZWNjb25wcmVhbnQ7IFxyXG4gICAgICAgICAgICB0aGlzLmNvbnRhYmlsaXphclByZXN0YWNpb25lc0FudGlndWVkYWQ9cGFyc2VJbnQoZS5jb25wcmVhbnQpXHJcbiAgICAgICAgICAgIHRoaXMucG9yY2VudGFqZUludGVyZXNDYXBpdGFsaXphY2lvbj0rZS5wb3JpbnRjYXA7XHJcbiAgICAgICAgICAgIHRoaXMuc2NnQ3VlbnRhQW50aWd1ZWRhZEZpZGVpY29taXNvPWUuc2NnX2N1ZW50YWZpZDsgXHJcbiAgICAgICAgICAgIHRoaXMuc2NnY3VlbnRhSW50ZXJlc0ZpZGVpY29taXNvPWUuc2NnX2N1ZW50YWludGZpZDsgXHJcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXJJdGVyZXNGaWRlaWNvbWlzbz0rZS5jYWxpbnRmaWRcclxuICAgICAgICAgICAgdGhpcy5pZFViaWNhY2lvbkZpc2ljYT1wYXJzZUludChlLmlkX3ViaWZpcyk7XHJcbiAgICAgICAgICAgIHRoaXMuZGVub21pbmFjaW9uVWJpY2FjaW9uRmlzaWNhPWUuZGVudWJpZmlzO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb1ViaWNhY2lvbkZpc2ljYT1lLmNvZHViaWZpczsgICAgICAgIFxyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGF0YUludGVyZmFjZSgpOklGaWRlaWNvbWlzbyB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWRfZW50ZXJwcmlzZTp0aGlzLmlkRW50ZXJwcmlzZS50b1N0cmluZygpLFxyXG5pZF9lbXByZXNhwqA6dGhpcy5pZEVtcHJlc2EsXHJcbiAgICAgICAgICAgIGlkX3BlcnNvbmFsOnRoaXMuaWRQZXJzb25hbC50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF9maWRlaWNvbWlzbzp0aGlzLmlkZmlkZWljb21pc28udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgY29kZmlkOnRoaXMuY29kaWdvRmlkZWljb21pc28sIFxyXG4gICAgICAgICAgICBmaWNmaWQ6dGhpcy5maWNoYUZpZGVpY29taWNvLCBcclxuICAgICAgICAgICAgaWRfY3RhYmFucGVyOnRoaXMuaWRDdWVudGFGaWRlaWNvbWlzby50b1N0cmluZygpLCBcclxuICAgICAgICAgICAgZmVjaW5nZmlkOnRoaXMuZmVjaGFJbmdyZXNvRmlkZWljb21pc28sIFxyXG4gICAgICAgICAgICBjYXBmaWQ6dGhpcy5jYXBpdGFsaXphY2lvbkZpZGVpY29taXNvLFxyXG4gICAgICAgICAgICBjYXBhbnRjb206dGhpcy5jYXBpdGFsaXphckFudGlndWVkYWRDb21wbGVtZW50YXJpYS50b1N0cmluZygpLCBcclxuICAgICAgICAgICAgZmVjY29ucHJlYW50OnRoaXMuZmVjaGFDb250aW51aWRhZFByZXN0YWNpb25lcywgXHJcbiAgICAgICAgICAgIGNvbnByZWFudDp0aGlzLmNvbnRhYmlsaXphclByZXN0YWNpb25lc0FudGlndWVkYWQudG9TdHJpbmcoKSwgXHJcbiAgICAgICAgICAgIHBvcmludGNhcDordGhpcy5wb3JjZW50YWplSW50ZXJlc0NhcGl0YWxpemFjaW9uLCBcclxuICAgICAgICAgICAgc2NnX2N1ZW50YWZpZDp0aGlzLnNjZ0N1ZW50YUFudGlndWVkYWRGaWRlaWNvbWlzbywgXHJcbiAgICAgICAgICAgIHNjZ19jdWVudGFpbnRmaWQ6dGhpcy5zY2djdWVudGFJbnRlcmVzRmlkZWljb21pc28sIFxyXG4gICAgICAgICAgICBjYWxpbnRmaWQ6K3RoaXMuY2FsY3VsYXJJdGVyZXNGaWRlaWNvbWlzbyxcclxuICAgICAgICAgICAgaWRfdWJpZmlzOnRoaXMuaWRVYmljYWNpb25GaXNpY2EudG9TdHJpbmcoKSxcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNQ29uZmlndXJhY2lvbkZpZGVpY29taXNvIGV4dGVuZHMgTUJhc2ljTW9kZWx7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZEZpZGVpY29taXNvQ29uZmlndXJhY2lvbjpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZERlZGljYWNpb246bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRUaXBvUGVyc29uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYW5pb0N1cnNvRmlkZWljb21pc286c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGRpYUJvbm9WYWNhY2lvbmFsRmlkZWljb21pc286bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgZGlhc0Jvbm9GaW5BbmlvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGN1ZW50YUZpZGVpY29taXNvOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25EZWRpY2FjaW9uOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBjb2RpZ29EZWRpY2FjaW9uOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBjb2RpZ29UaXBvUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGRlbm9taW5hY2lvblRpcG9QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZm9ybXVsYUZpZGVpY29taXNvOnN0cmluZz0neHh4JztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihlPzpJQ29uZmlndXJhY2lvbkZpZGVpY29taXNvKXtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGlmKGUpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pZEVudGVycHJpc2U9K2UuaWRfZW50ZXJwcmlzZTsgIFxyXG4gICAgICAgICAgICB0aGlzLmlkRW1wcmVzYT0rZS5pZF9lbXByZXNhwqA7IFxyXG4gICAgICAgICAgICB0aGlzLmlkRGVkaWNhY2lvbj1wYXJzZUludChlLmlkX2RlZGljYWNpb24pO1xyXG4gICAgICAgICAgICB0aGlzLmlkVGlwb1BlcnNvbmFsPXBhcnNlSW50KGUuaWRfdGlwb3BlcnNvbmFsKTtcclxuICAgICAgICAgICAgdGhpcy5hbmlvQ3Vyc29GaWRlaWNvbWlzbz1lLmFub2N1cmZpZDtcclxuICAgICAgICAgICAgdGhpcy5kaWFCb25vVmFjYWNpb25hbEZpZGVpY29taXNvPXBhcnNlSW50KGUuZGlhYm9udmFjZmlkKTtcclxuICAgICAgICAgICAgdGhpcy5kaWFzQm9ub0ZpbkFuaW89cGFyc2VJbnQoZS5kaWFib25maW5maWQpO1xyXG4gICAgICAgICAgICB0aGlzLmN1ZW50YUZpZGVpY29taXNvPWUuY3VlZmlkO1xyXG4gICAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbkRlZGljYWNpb249ZS5kZW5kZWQ7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvRGVkaWNhY2lvbj1lLmNvZGRlZDtcclxuICAgICAgICAgICAgdGhpcy5jb2RpZ29UaXBvUGVyc29uYWw9ZS5jb2R0aXBwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZGVub21pbmFjaW9uVGlwb1BlcnNvbmFsPWUuZGVudGlwcGVyOyAgICAgXHJcbiAgICAgICAgICAgIHRoaXMuaWRGaWRlaWNvbWlzb0NvbmZpZ3VyYWNpb249cGFyc2VJbnQoZS5pZF9maWRjb25maWcpO1xyXG4gICAgICAgICAgICB0aGlzLmZvcm11bGFGaWRlaWNvbWlzbz1lLmZvcmZpZDtcclxuXHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXc9dHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRhdGFJbnRlcmZhY2UoKTpJQ29uZmlndXJhY2lvbkZpZGVpY29taXNve1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkX2VudGVycHJpc2U6dGhpcy5pZEVudGVycHJpc2UudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgaWRfZW1wcmVzYcKgOnRoaXMuaWRFbXByZXNhLCBcclxuICAgICAgICAgICAgaWRfZmlkY29uZmlnOnRoaXMuaWRGaWRlaWNvbWlzb0NvbmZpZ3VyYWNpb24udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgaWRfZGVkaWNhY2lvbjp0aGlzLmlkRGVkaWNhY2lvbi50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF90aXBvcGVyc29uYWw6dGhpcy5pZFRpcG9QZXJzb25hbC50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBhbm9jdXJmaWQ6dGhpcy5hbmlvQ3Vyc29GaWRlaWNvbWlzbyxcclxuICAgICAgICAgICAgZGlhYm9udmFjZmlkOnRoaXMuZGlhQm9ub1ZhY2FjaW9uYWxGaWRlaWNvbWlzby50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBkaWFib25maW5maWQ6dGhpcy5kaWFzQm9ub0ZpbkFuaW8udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgY3VlZmlkOnRoaXMuY3VlbnRhRmlkZWljb21pc28sICAgICAgXHJcbiAgICAgICAgICAgIGZvcmZpZDp0aGlzLmZvcm11bGFGaWRlaWNvbWlzbywgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1GaWRlaWNvbWlzb0ludGVyZXMgZXh0ZW5kcyBNQmFzaWNNb2RlbHtcclxuICAgICAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDsgXHJcblxyXG4gICAgcHVibGljIGlkSW50ZXJlc0ZpZGVpY29taXNvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIG1lc0ludGVyZXM6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYW5pb0ludGVyZXM6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgbnVtZXJvR2FjZXRhSW50ZXJlczpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZmVjaGFWaWdlbmNpYUdhY2V0YUludGVyZXM6c3RyaW5nPScxOTAwLTAxLTAxJ1xyXG4gICAgcHVibGljIG1vbnRvVGFzYUludGVyZXM6bnVtYmVyPTA7XHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKGU/OklGaWRlaWNvbWlzb0ludGVyZXMpe1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbnRlcnByaXNlPStlLmlkX2VudGVycHJpc2U7ICBcclxuICAgICAgICAgICAgdGhpcy5pZEVtcHJlc2E9K2UuaWRfZW1wcmVzYcKgOyBcclxuICAgICAgICAgICAgdGhpcy5pZEludGVyZXNGaWRlaWNvbWlzbz1wYXJzZUludChlLmlkX2ludGZpZGUpO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9cGFyc2VJbnQoZS5tZXNpbnQpO1xyXG4gICAgICAgICAgICB0aGlzLmFuaW9JbnRlcmVzPXBhcnNlSW50KGUuYW5vaW50KTtcclxuICAgICAgICAgICAgdGhpcy5udW1lcm9HYWNldGFJbnRlcmVzPWUubnJvZ2FjaW50O1xyXG4gICAgICAgICAgICB0aGlzLmZlY2hhVmlnZW5jaWFHYWNldGFJbnRlcmVzPWUuZmVjdmlnZ2FjaW50O1xyXG4gICAgICAgICAgICB0aGlzLm1vbnRvVGFzYUludGVyZXM9K2UubW9udGFzaW50O1xyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGF0YUludGVyZmFjZSgpOklGaWRlaWNvbWlzb0ludGVyZXN7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWRfZW50ZXJwcmlzZTp0aGlzLmlkRW50ZXJwcmlzZS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF9lbXByZXNhwqA6dGhpcy5pZEVtcHJlc2EsXHJcbiAgICAgICAgICAgIGlkX2ludGZpZGU6dGhpcy5pZEludGVyZXNGaWRlaWNvbWlzby50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBtZXNpbnQ6dGhpcy5tZXNJbnRlcmVzLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGFub2ludDp0aGlzLmFuaW9JbnRlcmVzLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIG5yb2dhY2ludDp0aGlzLm51bWVyb0dhY2V0YUludGVyZXMsXHJcbiAgICAgICAgICAgIGZlY3ZpZ2dhY2ludDp0aGlzLmZlY2hhVmlnZW5jaWFHYWNldGFJbnRlcmVzLFxyXG4gICAgICAgICAgICBtb250YXNpbnQ6dGhpcy5tb250b1Rhc2FJbnRlcmVzLnRvU3RyaW5nKCksXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1DYWxjdWxvUHJlc3RhY2lvbiBleHRlbmRzIE1CYXNpY01vZGVse1xyXG4gICAgcHVibGljIGlkRW50ZXJwcmlzZTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZEVtcHJlc2E6bnVtYmVyPTA7IFxyXG4gICAgcHVibGljIG1lczpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgYW5pbzpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgY2VkdWxhRGVzZGU9Jyc7XHJcbiAgICBwdWJsaWMgY2VkdWxhSGFzdGE9Jyc7XHJcbiAgICBwdWJsaWMgbWVzQ2FsY3VsYWRvPScnOyBcclxuICAgIHB1YmxpYyBhbmlvQ2FsY3VsYWRvPScnOyBcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihlOklDYWxjdWxvUHJlc3RhY2lvbj1udWxsKXtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGlmKGUpe1xyXG4gICAgICAgICAgICB0aGlzLmlkRW50ZXJwcmlzZT0rZS5pZF9lbnRlcnByaXNlOyAgXHJcbiAgICAgICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2HCoFxyXG4gICAgICAgICAgICB0aGlzLm1lcz1lLm1lcztcclxuICAgICAgICAgICAgdGhpcy5hbmlvPWUuYW5pbztcclxuICAgICAgICAgICAgdGhpcy5jZWR1bGFEZXNkZT1lLmNlZHVsYV9kZXNkZVxyXG4gICAgICAgICAgICB0aGlzLmNlZHVsYURlc2RlPWUuY2VkdWxhX2hhc3RhOyAgIFxyXG4gICAgICAgICAgICB0aGlzLm1lc0NhbGN1bGFkbz1lLm1lc2NhbDtcclxuICAgICAgICAgICAgdGhpcy5hbmlvQ2FsY3VsYWRvPWUuYW5pb2NhbDtcclxuICAgICAgICB9ZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXc9dHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRhdGFJbnRlcmZhY2UoKTpJQ2FsY3Vsb1ByZXN0YWNpb24ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkX2VudGVycHJpc2U6dGhpcy5pZEVudGVycHJpc2UudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgaWRfZW1wcmVzYcKgOnRoaXMuaWRFbXByZXNhLFxyXG4gICAgICAgICAgICBtZXM6dGhpcy5tZXMsXHJcbiAgICAgICAgICAgIGFuaW86dGhpcy5hbmlvLFxyXG4gICAgICAgICAgICBjZWR1bGFfZGVzZGU6dGhpcy5jZWR1bGFEZXNkZSwgXHJcbiAgICAgICAgICAgIGNlZHVsYV9oYXN0YTp0aGlzLmNlZHVsYUhhc3RhLCBcclxuICAgICAgICAgICAgbWVzY2FsOiB0aGlzLm1lc0NhbGN1bGFkbyxcclxuICAgICAgICAgICAgYW5pb2NhbDp0aGlzLmFuaW9DYWxjdWxhZG8sXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTUZpZGVpY29taXNvUGVyaW9kbyBleHRlbmRzIE1CYXNpY01vZGVsIHtcclxuICAgIHB1YmxpYyBpZEVudGVycHJpc2U6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRFbXByZXNhOm51bWJlcj0wOyBcclxuICAgIHB1YmxpYyBpZFBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkTm9taW5hOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGNvZGlnb05vbWluYTpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgaWRGaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBhbmlvQ3Vyc29QZXJpb2RvOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBtZXNDdXJzb1BlcmlvZG86c3RyaW5nPScnO1xyXG4gICAgcHVibGljIHN1ZWxkb2ludGVyZ3JhbFBlcm9uYWw6bnVtYmVyPTA7XHJcblx0cHVibGljIGJvbm9FeHRyYVBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGJvbm9WYWNhY2lvbmFsUGVyc29uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYm9ub0ZpblBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGFwb3J0ZVBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGRpYUZpZGVpY29taXNvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGRpYUFkaWNpb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBtZXRvZG9QcmVzdGFjaW9uOm51bWJlcj0wO1xyXG5cdHB1YmxpYyBtZXRvZG9BZGljaW9uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYm9ub1ZhY2lvbmFsQWRpY2lvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGJvbm9GaW5BZGljaW9uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgc3VlbGRvSW50ZWdyYWxBZGljaW9uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYXBvcnRlUHJlc3RhY2lvbjpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBhcG9ydGVBZGljaW9uYWxQZXJzb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBjb2RpZ29Vc3VhcmlvOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBpZER0RmlkZWljb21pc29QZXJpb2RvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGNlZHVsYVBlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBub21icmVQZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgYXBlbGxpZG9QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZmVjaGFJbmdyZXNvUGVyc29uYWw6c3RyaW5nPScxOTAwLTAxLTAxJztcclxuICAgIHB1YmxpYyBlc3RhdHVzUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNvZGlnb1BlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25Fc3RhdHVzOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25NZXM6c3RyaW5nPScnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGU6SUZpZGVpY29taXNvUGVyaW9kbz1udWxsKXtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGlmKGUpe1xyXG4gICAgICAgICAgICB0aGlzLmlkRW1wcmVzYT0rZS5pZF9lbXByZXNhO1xyXG4gICAgICAgICAgICB0aGlzLmlkUGVyc29uYWw9K2UuaWRfcGVyc29uYWw7XHJcbiAgICAgICAgICAgIHRoaXMuaWROb21pbmE9K2UuaWRfbm9taW5hO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb05vbWluYT1lLmNvZG5vbTtcclxuICAgICAgICAgICAgdGhpcy5pZEZpZGVpY29taXNvPStlLmlkX2R0X2ZpZGVpcGVyaW9kbztcclxuICAgICAgICAgICAgdGhpcy5hbmlvQ3Vyc29QZXJpb2RvPWUuYW5vY3VycGVyO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz1lLm1lc2N1cnBlcjtcclxuICAgICAgICAgICAgdGhpcy5zdWVsZG9pbnRlcmdyYWxQZXJvbmFsPStlLnN1ZWludHBlcjtcclxuICAgICAgICAgICAgdGhpcy5ib25vRXh0cmFQZXJzb25hbD0rZS5ib25leHRwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYm9ub1ZhY2FjaW9uYWxQZXJzb25hbD0rZS5ib252YWNwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYm9ub0ZpblBlcnNvbmFsPStlLmJvbmZpbnBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcG9ydGVQZXJzb25hbD0rZS5hcG9wZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhRmlkZWljb21pc289K2UuZGlhZmlkO1xyXG4gICAgICAgICAgICB0aGlzLmRpYUFkaWNpb25hbD0rZS5kaWFhZGk7XHJcbiAgICAgICAgICAgIHRoaXMubWV0b2RvUHJlc3RhY2lvbj0rZS5tZXRvZG9wcmU7XHJcbiAgICAgICAgICAgIHRoaXMubWV0b2RvQWRpY2lvbmFsPStlLm1ldG9kb2FkaTtcclxuICAgICAgICAgICAgdGhpcy5ib25vVmFjaW9uYWxBZGljaW9uYWw9K2UuYm9udmFjYWRpcGVyO1xyXG4gICAgICAgICAgICB0aGlzLmJvbm9GaW5BZGljaW9uYWw9K2UuYm9uZmluYWRpcGVyO1xyXG4gICAgICAgICAgICB0aGlzLnN1ZWxkb0ludGVncmFsQWRpY2lvbmFsPStlLnN1ZWludGFkaXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcG9ydGVQcmVzdGFjaW9uPStlLmFwb3ByZXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcG9ydGVBZGljaW9uYWxQZXJzb25hbD0rZS5hcG9hZGlwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvVXN1YXJpbz1lLmNvZHVzdTtcclxuICAgICAgICAgICAgdGhpcy5pZER0RmlkZWljb21pc29QZXJpb2RvPStlLmlkX2R0X2ZpZGVpcGVyaW9kbztcclxuICAgICAgICAgICAgdGhpcy5jZWR1bGFQZXJzb25hbD1lLmNlZHBlcjtcclxuICAgICAgICAgICAgdGhpcy5ub21icmVQZXJzb25hbD1lLm5vbXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcGVsbGlkb1BlcnNvbmFsPWUuYXBlcGVyO1xyXG4gICAgICAgICAgICB0aGlzLmZlY2hhSW5ncmVzb1BlcnNvbmFsPWUuZmVjaW5ncGVyO1xyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD1lLmVzdHBlcjtcclxuICAgICAgICAgICAgdGhpcy5jb2RpZ29QZXJzb25hbD1lLmNvZHBlcjtcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PScwJz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdQUkUtSU5HUkVTTycgOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzEnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0FDVElWTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMic/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nTklOR1VOTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMyc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nRUdSRVNBRE8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzQnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J1JFTU9DScOTTic6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nNSc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nUkVUSVJPJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc2Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdERVNUSVRVQ0nDk04nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzcnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0xJUVVJREFDScOTTic6Jyc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDEnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nRU5FUk8nOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz09JzAyJz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0ZFQlJFTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDMnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nTUFSWk8nOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz09JzA0Jz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0FCUklMJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNDdXJzb1BlcmlvZG89PScwNSc/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdNQVlPJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNDdXJzb1BlcmlvZG89PScwNic/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdKVU5JTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDcnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nSlVMSU8nOicnO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz09JzA4Jz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0FHT1NUTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDknPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nU0VQVElFTUJSRSc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMTAnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nT0NUVUJSRSc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMTEnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nTk9WSUVNQlJFJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNDdXJzb1BlcmlvZG89PScxMic/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdESUNJRU1CUkUnOicnOyAgIFxyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNRmlkZWljb21pc29QZXJpb2RvSW50ZXJlc0NhdGFsb2dvIGV4dGVuZHMgTUJhc2ljTW9kZWx7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgaWRQZXJzb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBjb2RpZ29QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgY2VkdWxhUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIG5vbWJyZVBlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBhcGVsbGlkb1BlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBmZWNoYUluZ3Jlc29QZXJzb25hbDpzdHJpbmc9JzE5MDAtMDEtMDEnO1xyXG4gICAgcHVibGljIGVzdGF0dXNQZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZGVub21pbmFjaW9uRXN0YXR1czpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgaW50ZXJlczpNRmlkZWljb21pc29QZXJpb2RvSW50ZXJlc1tdPVtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGU6SUZpZGVpY29taXNvUGVyaW9kb0ludGVyZXNDYXRhbG9nbz1udWxsKXtcclxuICAgICAgICBzdXBlcigpXHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbnRlcnByaXNlPStlLmlkX2VudGVycHJpc2U7ICBcclxuICAgICAgICAgICAgdGhpcy5pZEVtcHJlc2E9K2UuaWRfZW1wcmVzYTtcclxuICAgICAgICAgICAgdGhpcy5pZFBlcnNvbmFsPStlLmlkX3BlcnNvbmFsO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb1BlcnNvbmFsPWUuY29kcGVyXHJcbiAgICAgICAgICAgIHRoaXMuY2VkdWxhUGVyc29uYWw9ZS5jZWRwZXI7XHJcbiAgICAgICAgICAgIHRoaXMubm9tYnJlUGVyc29uYWw9ZS5ub21wZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYXBlbGxpZG9QZXJzb25hbD1lLmFwZXBlcjtcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9ZS5lc3RwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZmVjaGFJbmdyZXNvUGVyc29uYWw9ZS5mZWNpbmdwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMCc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nUFJFLUlOR1JFU08nIDpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PScxJz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdBQ1RJVk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzInPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J05JTkdVTk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzMnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0VHUkVTQURPJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc0Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdSRU1PQ0nDk04nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzUnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J1JFVElSTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nNic/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nREVTVElUVUNJw5NOJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc3Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdMSVFVSURBQ0nDk04nOicnO1xyXG4gICAgICAgICAgICBpZihlLmludGVyZXNlcyl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmludGVyZXM9ZS5pbnRlcmVzZXMubWFwKGU9PiBuZXcgTUZpZGVpY29taXNvUGVyaW9kb0ludGVyZXMoZSkpOyAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1GaWRlaWNvbWlzb1BlcmlvZG9JbnRlcmVzIGV4dGVuZHMgTUJhc2ljTW9kZWx7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgaWRQZXJzb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZE5vbWluYTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBtZXNJbnRlcmVzOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGFuaW9JbnRlcmVzOnN0cmluZz0nJztcclxuXHRwdWJsaWMgbW9udG9BbnRlcmlvckFjdW11bGFkbzpudW1iZXI9MFxyXG4gICAgcHVibGljIG1vbnRvQW50ZXJpb3I6bnVtYmVyPTBcclxuICAgIHB1YmxpYyBwb3JjZW50YWplSW50ZXJlczpudW1iZXI9MFxyXG4gICAgcHVibGljIG1vbnRvSW50ZXJlczpudW1iZXI9MFxyXG4gICAgcHVibGljIG1vbnRvQ2FwaXRhbDpudW1iZXI9MFxyXG4gICAgcHVibGljIGFudGljaXBvUHJlc3RhbW86bnVtYmVyPTBcclxuICAgIHB1YmxpYyBpZER0RmlkZTpudW1iZXI9MFxyXG4gICAgcHVibGljIGNlZHVsYVBlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBub21icmVQZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgYXBlbGxpZG9QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZmVjaGFJbmdyZXNvUGVyc29uYWw6c3RyaW5nPScxOTAwLTAxLTAxJztcclxuICAgIHB1YmxpYyBlc3RhdHVzUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNvZGlnb1BlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25Fc3RhdHVzOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25NZXM6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNhcGl0YWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgY29kaWdvTm9taW5hOnN0cmluZz0nJztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihlOklGaWRlaWNvbWlzb1BlcmlvZG9JbnRlcmVzPW51bGwpe1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2E7XHJcbiAgICAgICAgICAgIHRoaXMuaWRQZXJzb25hbD0rZS5pZF9wZXJzb25hbDtcclxuICAgICAgICAgICAgdGhpcy5pZE5vbWluYT0rZS5pZF9ub21pbmE7XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz0rZS5tZXNpbnQ7XHJcbiAgICAgICAgICAgIHRoaXMuYW5pb0ludGVyZXM9ZS5hbm9pbnRcclxuICAgICAgICAgICAgdGhpcy5tb250b0FudGVyaW9yQWN1bXVsYWRvPStlLm1vbmFudGFjdTtcclxuICAgICAgICAgICAgdGhpcy5tb250b0FudGVyaW9yPStlLm1vbmFudDtcclxuICAgICAgICAgICAgdGhpcy5wb3JjZW50YWplSW50ZXJlcz0rZS5wb3JpbnQ7XHJcbiAgICAgICAgICAgIHRoaXMubW9udG9JbnRlcmVzPStlLm1vbmludDtcclxuICAgICAgICAgICAgdGhpcy5tb250b0NhcGl0YWw9K2UubW9uY2FwO1xyXG4gICAgICAgICAgICB0aGlzLmFudGljaXBvUHJlc3RhbW89K2UuYW50cHJlO1xyXG4gICAgICAgICAgICB0aGlzLmNhcGl0YWw9K2UuY2FwaXRhbDtcclxuICAgICAgICAgICAgdGhpcy5pZER0RmlkZT0rZS5pZF9kdF9maWRwZXJpbnQ7XHJcbiAgICAgICAgICAgIHRoaXMuY2VkdWxhUGVyc29uYWw9ZS5jZWRwZXI7XHJcbiAgICAgICAgICAgIHRoaXMubm9tYnJlUGVyc29uYWw9ZS5ub21wZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYXBlbGxpZG9QZXJzb25hbD1lLmFwZXBlcjtcclxuICAgICAgICAgICAgdGhpcy5mZWNoYUluZ3Jlc29QZXJzb25hbD1lLmZlY2luZ3BlcjtcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9ZS5lc3RwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvUGVyc29uYWw9ZS5jb2RwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMCc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nUFJFLUlOR1JFU08nIDpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PScxJz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdBQ1RJVk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzInPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J05JTkdVTk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzMnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0VHUkVTQURPJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc0Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdSRU1PQ0nDk04nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzUnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J1JFVElSTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nNic/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nREVTVElUVUNJw5NOJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc3Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdMSVFVSURBQ0nDk04nOicnO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTE/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdFTkVSTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09Mj8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0ZFQlJFTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09Mz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J01BUlpPJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNJbnRlcmVzPT00PyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nQUJSSUwnOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTU/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdNQVlPJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNJbnRlcmVzPT02PyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nSlVOSU8nOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTc/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdKVUxJTyc6Jyc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09OD8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0FHT1NUTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09OT8gdGhpcy5kZW5vbWluYWNpb25NZXM9J1NFUFRJRU1CUkUnOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTEwPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nT0NUVUJSRSc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09MTE/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdOT1ZJRU1CUkUnOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTEyPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nRElDSUVNQlJFJzonJztcclxuICAgICAgICAgICAgdGhpcy5jb2RpZ29Ob21pbmE9ZS5jb2Rub207ICAgXHJcbiAgICAgICAgfWVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmlzTmV3PXRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICBcclxufVxyXG4iXX0=
|
|
413
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTUZpZGVpY29taXNvLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lnZXNwL3NyYy9saWIvY29yZS9tb2RlbHMvU05PL01GaWRlaWNvbWlzby5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsTUFBTSxPQUFPLFlBQWEsU0FBUSxXQUFXO0lBc0J6QyxZQUFZLENBQWU7UUFDdkIsS0FBSyxFQUFFLENBQUM7UUF0QkwsaUJBQVksR0FBUSxDQUFDLENBQUM7UUFDdEIsY0FBUyxHQUFRLENBQUMsQ0FBQztRQUNuQixlQUFVLEdBQVEsQ0FBQyxDQUFDO1FBQ3BCLGtCQUFhLEdBQVEsQ0FBQyxDQUFDO1FBQ3ZCLHNCQUFpQixHQUFRLEVBQUUsQ0FBQztRQUM1QixxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFDM0Isc0JBQWlCLEdBQVEsRUFBRSxDQUFDO1FBQzVCLHdCQUFtQixHQUFRLENBQUMsQ0FBQztRQUM3Qiw0QkFBdUIsR0FBUSxZQUFZLENBQUM7UUFDNUMsOEJBQXlCLEdBQVEsR0FBRyxDQUFDO1FBQ3JDLHdDQUFtQyxHQUFRLENBQUMsQ0FBQztRQUM3QyxpQ0FBNEIsR0FBUSxZQUFZLENBQUM7UUFDakQsdUNBQWtDLEdBQVEsQ0FBQyxDQUFDO1FBQzVDLG9DQUErQixHQUFRLENBQUMsQ0FBQztRQUN6QyxtQ0FBOEIsR0FBUSxFQUFFLENBQUM7UUFDekMsZ0NBQTJCLEdBQVEsRUFBRSxDQUFDO1FBQ3RDLDhCQUF5QixHQUFRLENBQUMsQ0FBQztRQUNuQyxzQkFBaUIsR0FBUSxDQUFDLENBQUM7UUFDM0IsZ0NBQTJCLEdBQVEsRUFBRSxDQUFDO1FBQ3RDLDBCQUFxQixHQUFRLEVBQUUsQ0FBQztRQUluQyxJQUFHLENBQUMsRUFBQztZQUNGLElBQUksQ0FBQyxZQUFZLEdBQUMsQ0FBQyxDQUFD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QyxDQUFBLEVBQUUsQ0FBQztZQUN6RCxJQUFJLENBQUMsWUFBWSxHQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7U0FDOUI7YUFBSztZQUNGLElBQUksQ0FBQyxLQUFLLEdBQUMsSUFBSSxDQUFDO1NBQ25CO0lBQ0wsQ0FBQztDQUVKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNhbGN1bG9QcmVzdGFjaW9uLCBJQ29uZmlndXJhY2lvbkZpZGVpY29taXNvLCBJRmlkZWljb21pc28sIElGaWRlaWNvbWlzb0ludGVyZXMsIElGaWRlaWNvbWlzb1BlcmlvZG8sIElGaWRlaWNvbWlzb1BlcmlvZG9JbnRlcmVzLCBJRmlkZWljb21pc29QZXJpb2RvSW50ZXJlc0NhdGFsb2dvLCBJUHJlc3RhY2lvbmVzQW50aWd1ZWRhZCB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL1JlY3Vyc29zSHVtYW5vc1wiO1xyXG5pbXBvcnQgeyBNQmFzaWNNb2RlbCB9IGZyb20gXCIuLi9iYXNpYy1tb2RlbC5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1GaWRlaWNvbWlzbyBleHRlbmRzIE1CYXNpY01vZGVsIHtcclxuICAgIHB1YmxpYyBpZEVudGVycHJpc2U6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRFbXByZXNhOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkUGVyc29uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRmaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBjb2RpZ29GaWRlaWNvbWlzbzpzdHJpbmc9Jyc7IFxyXG4gICAgcHVibGljIGZpY2hhRmlkZWljb21pY286c3RyaW5nPScnOyBcclxuICAgIHB1YmxpYyBjdWVudGFGaWRlaWNvbWlzbzpzdHJpbmc9Jyc7IFxyXG4gICAgcHVibGljIGlkQ3VlbnRhRmlkZWljb21pc286bnVtYmVyPTA7IFxyXG4gICAgcHVibGljIGZlY2hhSW5ncmVzb0ZpZGVpY29taXNvOnN0cmluZz0nMTkwMC0wMS0wMSc7IFxyXG4gICAgcHVibGljIGNhcGl0YWxpemFjaW9uRmlkZWljb21pc286c3RyaW5nPSdOJztcclxuICAgIHB1YmxpYyBjYXBpdGFsaXphckFudGlndWVkYWRDb21wbGVtZW50YXJpYTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgZmVjaGFDb250aW51aWRhZFByZXN0YWNpb25lczpzdHJpbmc9JzE5MDAtMDEtMDEnOyBcclxuICAgIHB1YmxpYyBjb250YWJpbGl6YXJQcmVzdGFjaW9uZXNBbnRpZ3VlZGFkOm51bWJlcj0wO1xyXG4gICAgcHVibGljIHBvcmNlbnRhamVJbnRlcmVzQ2FwaXRhbGl6YWNpb246bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgc2NnQ3VlbnRhQW50aWd1ZWRhZEZpZGVpY29taXNvOnN0cmluZz0nJzsgXHJcbiAgICBwdWJsaWMgc2NnY3VlbnRhSW50ZXJlc0ZpZGVpY29taXNvOnN0cmluZz0nJzsgXHJcbiAgICBwdWJsaWMgY2FsY3VsYXJJdGVyZXNGaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZFViaWNhY2lvbkZpc2ljYTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25VYmljYWNpb25GaXNpY2E6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNvZGlnb1ViaWNhY2lvbkZpc2ljYTpzdHJpbmc9Jyc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoZT86SUZpZGVpY29taXNvKXsgICAgICAgIFxyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgdGhpcy5pZEVudGVycHJpc2U9K2UuaWRfZW50ZXJwcmlzZTsgIFxyXG4gICAgICAgICAgICB0aGlzLmlkRW1wcmVzYT0rZS5pZF9lbXByZXNhwqBcclxuICAgICAgICAgICAgdGhpcy5pZFBlcnNvbmFsPXBhcnNlSW50KGUuaWRfcGVyc29uYWwpXHJcbiAgICAgICAgICAgIHRoaXMuaWRmaWRlaWNvbWlzbz1wYXJzZUludChlLmlkX2ZpZGVpY29taXNvKVxyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb0ZpZGVpY29taXNvPWUuY29kZmlkXHJcbiAgICAgICAgICAgIHRoaXMuZmljaGFGaWRlaWNvbWljbz1lLmZpY2ZpZDsgXHJcbiAgICAgICAgICAgIHRoaXMuaWRDdWVudGFGaWRlaWNvbWlzbz1wYXJzZUludChlLmlkX2N0YWJhbnBlcik7IFxyXG4gICAgICAgICAgICB0aGlzLmN1ZW50YUZpZGVpY29taXNvPWUuY3RhYmFucGVyO1xyXG4gICAgICAgICAgICB0aGlzLmZlY2hhSW5ncmVzb0ZpZGVpY29taXNvPWUuZmVjaW5nZmlkOyBcclxuICAgICAgICAgICAgdGhpcy5jYXBpdGFsaXphY2lvbkZpZGVpY29taXNvPWUuY2FwZmlkO1xyXG4gICAgICAgICAgICB0aGlzLmNhcGl0YWxpemFyQW50aWd1ZWRhZENvbXBsZW1lbnRhcmlhPXBhcnNlSW50KGUuY2FwYW50Y29tKTsgXHJcbiAgICAgICAgICAgIHRoaXMuZmVjaGFDb250aW51aWRhZFByZXN0YWNpb25lcz1lLmZlY2NvbnByZWFudDsgXHJcbiAgICAgICAgICAgIHRoaXMuY29udGFiaWxpemFyUHJlc3RhY2lvbmVzQW50aWd1ZWRhZD1wYXJzZUludChlLmNvbnByZWFudClcclxuICAgICAgICAgICAgdGhpcy5wb3JjZW50YWplSW50ZXJlc0NhcGl0YWxpemFjaW9uPStlLnBvcmludGNhcDtcclxuICAgICAgICAgICAgdGhpcy5zY2dDdWVudGFBbnRpZ3VlZGFkRmlkZWljb21pc289ZS5zY2dfY3VlbnRhZmlkOyBcclxuICAgICAgICAgICAgdGhpcy5zY2djdWVudGFJbnRlcmVzRmlkZWljb21pc289ZS5zY2dfY3VlbnRhaW50ZmlkOyBcclxuICAgICAgICAgICAgdGhpcy5jYWxjdWxhckl0ZXJlc0ZpZGVpY29taXNvPStlLmNhbGludGZpZFxyXG4gICAgICAgICAgICB0aGlzLmlkVWJpY2FjaW9uRmlzaWNhPXBhcnNlSW50KGUuaWRfdWJpZmlzKTtcclxuICAgICAgICAgICAgdGhpcy5kZW5vbWluYWNpb25VYmljYWNpb25GaXNpY2E9ZS5kZW51YmlmaXM7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvVWJpY2FjaW9uRmlzaWNhPWUuY29kdWJpZmlzOyAgICAgICAgXHJcbiAgICAgICAgfWVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmlzTmV3PXRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkYXRhSW50ZXJmYWNlKCk6SUZpZGVpY29taXNvIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBpZF9lbnRlcnByaXNlOnRoaXMuaWRFbnRlcnByaXNlLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGlkX2VtcHJlc2E6dGhpcy5pZEVtcHJlc2EsXHJcbiAgICAgICAgICAgIGlkX3BlcnNvbmFsOnRoaXMuaWRQZXJzb25hbC50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF9maWRlaWNvbWlzbzp0aGlzLmlkZmlkZWljb21pc28udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgY29kZmlkOnRoaXMuY29kaWdvRmlkZWljb21pc28sIFxyXG4gICAgICAgICAgICBmaWNmaWQ6dGhpcy5maWNoYUZpZGVpY29taWNvLCBcclxuICAgICAgICAgICAgaWRfY3RhYmFucGVyOnRoaXMuaWRDdWVudGFGaWRlaWNvbWlzby50b1N0cmluZygpLCBcclxuICAgICAgICAgICAgZmVjaW5nZmlkOnRoaXMuZmVjaGFJbmdyZXNvRmlkZWljb21pc28sIFxyXG4gICAgICAgICAgICBjYXBmaWQ6dGhpcy5jYXBpdGFsaXphY2lvbkZpZGVpY29taXNvLFxyXG4gICAgICAgICAgICBjYXBhbnRjb206dGhpcy5jYXBpdGFsaXphckFudGlndWVkYWRDb21wbGVtZW50YXJpYS50b1N0cmluZygpLCBcclxuICAgICAgICAgICAgZmVjY29ucHJlYW50OnRoaXMuZmVjaGFDb250aW51aWRhZFByZXN0YWNpb25lcywgXHJcbiAgICAgICAgICAgIGNvbnByZWFudDp0aGlzLmNvbnRhYmlsaXphclByZXN0YWNpb25lc0FudGlndWVkYWQudG9TdHJpbmcoKSwgXHJcbiAgICAgICAgICAgIHBvcmludGNhcDordGhpcy5wb3JjZW50YWplSW50ZXJlc0NhcGl0YWxpemFjaW9uLCBcclxuICAgICAgICAgICAgc2NnX2N1ZW50YWZpZDp0aGlzLnNjZ0N1ZW50YUFudGlndWVkYWRGaWRlaWNvbWlzbywgXHJcbiAgICAgICAgICAgIHNjZ19jdWVudGFpbnRmaWQ6dGhpcy5zY2djdWVudGFJbnRlcmVzRmlkZWljb21pc28sIFxyXG4gICAgICAgICAgICBjYWxpbnRmaWQ6K3RoaXMuY2FsY3VsYXJJdGVyZXNGaWRlaWNvbWlzbyxcclxuICAgICAgICAgICAgaWRfdWJpZmlzOnRoaXMuaWRVYmljYWNpb25GaXNpY2EudG9TdHJpbmcoKSxcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNQ29uZmlndXJhY2lvbkZpZGVpY29taXNvIGV4dGVuZHMgTUJhc2ljTW9kZWx7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZEZpZGVpY29taXNvQ29uZmlndXJhY2lvbjpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZERlZGljYWNpb246bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRUaXBvUGVyc29uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYW5pb0N1cnNvRmlkZWljb21pc286c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGRpYUJvbm9WYWNhY2lvbmFsRmlkZWljb21pc286bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgZGlhc0Jvbm9GaW5BbmlvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGN1ZW50YUZpZGVpY29taXNvOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25EZWRpY2FjaW9uOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBjb2RpZ29EZWRpY2FjaW9uOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBjb2RpZ29UaXBvUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGRlbm9taW5hY2lvblRpcG9QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZm9ybXVsYUZpZGVpY29taXNvOnN0cmluZz0neHh4JztcclxuICAgIHB1YmxpYyBjdWVudGFJbnRlcmVzOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25DdWVudGFGaWRlaWNvbWlzbzpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZGVub21pbmFjaW9uQ3VlbnRhaW50ZXJlczpzdHJpbmc9Jyc7XHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKGU/OklDb25maWd1cmFjaW9uRmlkZWljb21pc28pe1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbnRlcnByaXNlPStlLmlkX2VudGVycHJpc2U7ICBcclxuICAgICAgICAgICAgdGhpcy5pZEVtcHJlc2E9K2UuaWRfZW1wcmVzYcKgOyBcclxuICAgICAgICAgICAgdGhpcy5pZERlZGljYWNpb249cGFyc2VJbnQoZS5pZF9kZWRpY2FjaW9uKTtcclxuICAgICAgICAgICAgdGhpcy5pZFRpcG9QZXJzb25hbD1wYXJzZUludChlLmlkX3RpcG9wZXJzb25hbCk7XHJcbiAgICAgICAgICAgIHRoaXMuYW5pb0N1cnNvRmlkZWljb21pc289ZS5hbm9jdXJmaWQ7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhQm9ub1ZhY2FjaW9uYWxGaWRlaWNvbWlzbz1wYXJzZUludChlLmRpYWJvbnZhY2ZpZCk7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhc0Jvbm9GaW5BbmlvPXBhcnNlSW50KGUuZGlhYm9uZmluZmlkKTtcclxuICAgICAgICAgICAgdGhpcy5jdWVudGFGaWRlaWNvbWlzbz1lLmN1ZWZpZDtcclxuICAgICAgICAgICAgdGhpcy5kZW5vbWluYWNpb25EZWRpY2FjaW9uPWUuZGVuZGVkO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb0RlZGljYWNpb249ZS5jb2RkZWQ7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvVGlwb1BlcnNvbmFsPWUuY29kdGlwcGVyO1xyXG4gICAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvblRpcG9QZXJzb25hbD1lLmRlbnRpcHBlcjsgICAgIFxyXG4gICAgICAgICAgICB0aGlzLmlkRmlkZWljb21pc29Db25maWd1cmFjaW9uPXBhcnNlSW50KGUuaWRfZmlkY29uZmlnKTtcclxuICAgICAgICAgICAgdGhpcy5mb3JtdWxhRmlkZWljb21pc289ZS5mb3JmaWQ7XHJcbiAgICAgICAgICAgIHRoaXMuY3VlbnRhSW50ZXJlcz1lLmN1ZWludFxyXG4gICAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbkN1ZW50YUZpZGVpY29taXNvPWUuY3VlZmlkO1xyXG4gICAgICAgICAgICB0aGlzLmRlbm9taW5hY2lvbkN1ZW50YWludGVyZXM9ZS5jdWVpbnQ7XHJcblxyXG5cclxuICAgICAgICB9ZWxzZXtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGF0YUludGVyZmFjZSgpOklDb25maWd1cmFjaW9uRmlkZWljb21pc297XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWRfZW50ZXJwcmlzZTp0aGlzLmlkRW50ZXJwcmlzZS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF9lbXByZXNhwqA6dGhpcy5pZEVtcHJlc2EsIFxyXG4gICAgICAgICAgICBpZF9maWRjb25maWc6dGhpcy5pZEZpZGVpY29taXNvQ29uZmlndXJhY2lvbi50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF9kZWRpY2FjaW9uOnRoaXMuaWREZWRpY2FjaW9uLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGlkX3RpcG9wZXJzb25hbDp0aGlzLmlkVGlwb1BlcnNvbmFsLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGFub2N1cmZpZDp0aGlzLmFuaW9DdXJzb0ZpZGVpY29taXNvLFxyXG4gICAgICAgICAgICBkaWFib252YWNmaWQ6dGhpcy5kaWFCb25vVmFjYWNpb25hbEZpZGVpY29taXNvLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGRpYWJvbmZpbmZpZDp0aGlzLmRpYXNCb25vRmluQW5pby50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBjdWVmaWQ6dGhpcy5jdWVudGFGaWRlaWNvbWlzbywgICAgICBcclxuICAgICAgICAgICAgZm9yZmlkOnRoaXMuZm9ybXVsYUZpZGVpY29taXNvLCBcclxuICAgICAgICAgICAgY3VlaW50OnRoaXMuY3VlbnRhSW50ZXJlcyxcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTUZpZGVpY29taXNvSW50ZXJlcyBleHRlbmRzIE1CYXNpY01vZGVse1xyXG4gICAgcHVibGljIGlkRW50ZXJwcmlzZTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZEVtcHJlc2E6bnVtYmVyPTA7IFxyXG4gICAgcHVibGljIGlkSW50ZXJlc0ZpZGVpY29taXNvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIG1lc0ludGVyZXM6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYW5pb0ludGVyZXM6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgbnVtZXJvR2FjZXRhSW50ZXJlczpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZmVjaGFWaWdlbmNpYUdhY2V0YUludGVyZXM6c3RyaW5nPScxOTAwLTAxLTAxJ1xyXG4gICAgcHVibGljIG1vbnRvVGFzYUludGVyZXM6bnVtYmVyPTA7XHJcbiAgICBcclxuICAgIGNvbnN0cnVjdG9yKGU/OklGaWRlaWNvbWlzb0ludGVyZXMpe1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbnRlcnByaXNlPStlLmlkX2VudGVycHJpc2U7ICBcclxuICAgICAgICAgICAgdGhpcy5pZEVtcHJlc2E9K2UuaWRfZW1wcmVzYcKgOyBcclxuICAgICAgICAgICAgdGhpcy5pZEludGVyZXNGaWRlaWNvbWlzbz1wYXJzZUludChlLmlkX2ludGZpZGUpO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9cGFyc2VJbnQoZS5tZXNpbnQpO1xyXG4gICAgICAgICAgICB0aGlzLmFuaW9JbnRlcmVzPXBhcnNlSW50KGUuYW5vaW50KTtcclxuICAgICAgICAgICAgdGhpcy5udW1lcm9HYWNldGFJbnRlcmVzPWUubnJvZ2FjaW50O1xyXG4gICAgICAgICAgICB0aGlzLmZlY2hhVmlnZW5jaWFHYWNldGFJbnRlcmVzPWUuZmVjdmlnZ2FjaW50O1xyXG4gICAgICAgICAgICB0aGlzLm1vbnRvVGFzYUludGVyZXM9K2UubW9udGFzaW50O1xyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGF0YUludGVyZmFjZSgpOklGaWRlaWNvbWlzb0ludGVyZXN7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWRfZW50ZXJwcmlzZTp0aGlzLmlkRW50ZXJwcmlzZS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBpZF9lbXByZXNhwqA6dGhpcy5pZEVtcHJlc2EsXHJcbiAgICAgICAgICAgIGlkX2ludGZpZGU6dGhpcy5pZEludGVyZXNGaWRlaWNvbWlzby50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBtZXNpbnQ6dGhpcy5tZXNJbnRlcmVzLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIGFub2ludDp0aGlzLmFuaW9JbnRlcmVzLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgIG5yb2dhY2ludDp0aGlzLm51bWVyb0dhY2V0YUludGVyZXMsXHJcbiAgICAgICAgICAgIGZlY3ZpZ2dhY2ludDp0aGlzLmZlY2hhVmlnZW5jaWFHYWNldGFJbnRlcmVzLFxyXG4gICAgICAgICAgICBtb250YXNpbnQ6dGhpcy5tb250b1Rhc2FJbnRlcmVzLnRvU3RyaW5nKCksXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1DYWxjdWxvUHJlc3RhY2lvbiBleHRlbmRzIE1CYXNpY01vZGVse1xyXG4gICAgcHVibGljIGlkRW50ZXJwcmlzZTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZEVtcHJlc2E6bnVtYmVyPTA7IFxyXG4gICAgcHVibGljIG1lczpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgYW5pbzpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgY2VkdWxhRGVzZGU9Jyc7XHJcbiAgICBwdWJsaWMgY2VkdWxhSGFzdGE9Jyc7XHJcbiAgICBwdWJsaWMgbWVzQ2FsY3VsYWRvPScnOyBcclxuICAgIHB1YmxpYyBhbmlvQ2FsY3VsYWRvPScnOyBcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihlOklDYWxjdWxvUHJlc3RhY2lvbj1udWxsKXtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGlmKGUpe1xyXG4gICAgICAgICAgICB0aGlzLmlkRW50ZXJwcmlzZT0rZS5pZF9lbnRlcnByaXNlOyAgXHJcbiAgICAgICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2HCoFxyXG4gICAgICAgICAgICB0aGlzLm1lcz1lLm1lcztcclxuICAgICAgICAgICAgdGhpcy5hbmlvPWUuYW5pbztcclxuICAgICAgICAgICAgdGhpcy5jZWR1bGFEZXNkZT1lLmNlZHVsYV9kZXNkZVxyXG4gICAgICAgICAgICB0aGlzLmNlZHVsYURlc2RlPWUuY2VkdWxhX2hhc3RhOyAgIFxyXG4gICAgICAgICAgICB0aGlzLm1lc0NhbGN1bGFkbz1lLm1lc2NhbDtcclxuICAgICAgICAgICAgdGhpcy5hbmlvQ2FsY3VsYWRvPWUuYW5pb2NhbDtcclxuICAgICAgICB9ZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXc9dHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRhdGFJbnRlcmZhY2UoKTpJQ2FsY3Vsb1ByZXN0YWNpb24ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkX2VudGVycHJpc2U6dGhpcy5pZEVudGVycHJpc2UudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgaWRfZW1wcmVzYcKgOnRoaXMuaWRFbXByZXNhLFxyXG4gICAgICAgICAgICBtZXM6dGhpcy5tZXMsXHJcbiAgICAgICAgICAgIGFuaW86dGhpcy5hbmlvLFxyXG4gICAgICAgICAgICBjZWR1bGFfZGVzZGU6dGhpcy5jZWR1bGFEZXNkZSwgXHJcbiAgICAgICAgICAgIGNlZHVsYV9oYXN0YTp0aGlzLmNlZHVsYUhhc3RhLCBcclxuICAgICAgICAgICAgbWVzY2FsOiB0aGlzLm1lc0NhbGN1bGFkbyxcclxuICAgICAgICAgICAgYW5pb2NhbDp0aGlzLmFuaW9DYWxjdWxhZG8sXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTUZpZGVpY29taXNvUGVyaW9kbyBleHRlbmRzIE1CYXNpY01vZGVsIHtcclxuICAgIHB1YmxpYyBpZEVudGVycHJpc2U6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgaWRFbXByZXNhOm51bWJlcj0wOyBcclxuICAgIHB1YmxpYyBpZFBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkTm9taW5hOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGNvZGlnb05vbWluYTpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgaWRGaWRlaWNvbWlzbzpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBhbmlvQ3Vyc29QZXJpb2RvOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBtZXNDdXJzb1BlcmlvZG86c3RyaW5nPScnO1xyXG4gICAgcHVibGljIHN1ZWxkb2ludGVyZ3JhbFBlcm9uYWw6bnVtYmVyPTA7XHJcblx0cHVibGljIGJvbm9FeHRyYVBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGJvbm9WYWNhY2lvbmFsUGVyc29uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYm9ub0ZpblBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGFwb3J0ZVBlcnNvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGRpYUZpZGVpY29taXNvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGRpYUFkaWNpb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBtZXRvZG9QcmVzdGFjaW9uOm51bWJlcj0wO1xyXG5cdHB1YmxpYyBtZXRvZG9BZGljaW9uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYm9ub1ZhY2lvbmFsQWRpY2lvbmFsOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGJvbm9GaW5BZGljaW9uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgc3VlbGRvSW50ZWdyYWxBZGljaW9uYWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgYXBvcnRlUHJlc3RhY2lvbjpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBhcG9ydGVBZGljaW9uYWxQZXJzb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBjb2RpZ29Vc3VhcmlvOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBpZER0RmlkZWljb21pc29QZXJpb2RvOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGNlZHVsYVBlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBub21icmVQZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgYXBlbGxpZG9QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZmVjaGFJbmdyZXNvUGVyc29uYWw6c3RyaW5nPScxOTAwLTAxLTAxJztcclxuICAgIHB1YmxpYyBlc3RhdHVzUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNvZGlnb1BlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25Fc3RhdHVzOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25NZXM6c3RyaW5nPScnO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGU6SUZpZGVpY29taXNvUGVyaW9kbz1udWxsKXtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIGlmKGUpe1xyXG4gICAgICAgICAgICB0aGlzLmlkRW1wcmVzYT0rZS5pZF9lbXByZXNhO1xyXG4gICAgICAgICAgICB0aGlzLmlkUGVyc29uYWw9K2UuaWRfcGVyc29uYWw7XHJcbiAgICAgICAgICAgIHRoaXMuaWROb21pbmE9K2UuaWRfbm9taW5hO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb05vbWluYT1lLmNvZG5vbTtcclxuICAgICAgICAgICAgdGhpcy5pZEZpZGVpY29taXNvPStlLmlkX2R0X2ZpZGVpcGVyaW9kbztcclxuICAgICAgICAgICAgdGhpcy5hbmlvQ3Vyc29QZXJpb2RvPWUuYW5vY3VycGVyO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz1lLm1lc2N1cnBlcjtcclxuICAgICAgICAgICAgdGhpcy5zdWVsZG9pbnRlcmdyYWxQZXJvbmFsPStlLnN1ZWludHBlcjtcclxuICAgICAgICAgICAgdGhpcy5ib25vRXh0cmFQZXJzb25hbD0rZS5ib25leHRwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYm9ub1ZhY2FjaW9uYWxQZXJzb25hbD0rZS5ib252YWNwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYm9ub0ZpblBlcnNvbmFsPStlLmJvbmZpbnBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcG9ydGVQZXJzb25hbD0rZS5hcG9wZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZGlhRmlkZWljb21pc289K2UuZGlhZmlkO1xyXG4gICAgICAgICAgICB0aGlzLmRpYUFkaWNpb25hbD0rZS5kaWFhZGk7XHJcbiAgICAgICAgICAgIHRoaXMubWV0b2RvUHJlc3RhY2lvbj0rZS5tZXRvZG9wcmU7XHJcbiAgICAgICAgICAgIHRoaXMubWV0b2RvQWRpY2lvbmFsPStlLm1ldG9kb2FkaTtcclxuICAgICAgICAgICAgdGhpcy5ib25vVmFjaW9uYWxBZGljaW9uYWw9K2UuYm9udmFjYWRpcGVyO1xyXG4gICAgICAgICAgICB0aGlzLmJvbm9GaW5BZGljaW9uYWw9K2UuYm9uZmluYWRpcGVyO1xyXG4gICAgICAgICAgICB0aGlzLnN1ZWxkb0ludGVncmFsQWRpY2lvbmFsPStlLnN1ZWludGFkaXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcG9ydGVQcmVzdGFjaW9uPStlLmFwb3ByZXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcG9ydGVBZGljaW9uYWxQZXJzb25hbD0rZS5hcG9hZGlwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvVXN1YXJpbz1lLmNvZHVzdTtcclxuICAgICAgICAgICAgdGhpcy5pZER0RmlkZWljb21pc29QZXJpb2RvPStlLmlkX2R0X2ZpZGVpcGVyaW9kbztcclxuICAgICAgICAgICAgdGhpcy5jZWR1bGFQZXJzb25hbD1lLmNlZHBlcjtcclxuICAgICAgICAgICAgdGhpcy5ub21icmVQZXJzb25hbD1lLm5vbXBlcjtcclxuICAgICAgICAgICAgdGhpcy5hcGVsbGlkb1BlcnNvbmFsPWUuYXBlcGVyO1xyXG4gICAgICAgICAgICB0aGlzLmZlY2hhSW5ncmVzb1BlcnNvbmFsPWUuZmVjaW5ncGVyO1xyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD1lLmVzdHBlcjtcclxuICAgICAgICAgICAgdGhpcy5jb2RpZ29QZXJzb25hbD1lLmNvZHBlcjtcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PScwJz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdQUkUtSU5HUkVTTycgOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzEnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0FDVElWTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMic/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nTklOR1VOTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMyc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nRUdSRVNBRE8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzQnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J1JFTU9DScOTTic6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nNSc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nUkVUSVJPJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc2Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdERVNUSVRVQ0nDk04nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzcnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0xJUVVJREFDScOTTic6Jyc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDEnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nRU5FUk8nOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz09JzAyJz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0ZFQlJFTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDMnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nTUFSWk8nOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz09JzA0Jz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0FCUklMJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNDdXJzb1BlcmlvZG89PScwNSc/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdNQVlPJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNDdXJzb1BlcmlvZG89PScwNic/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdKVU5JTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDcnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nSlVMSU8nOicnO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0N1cnNvUGVyaW9kbz09JzA4Jz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0FHT1NUTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMDknPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nU0VQVElFTUJSRSc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMTAnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nT0NUVUJSRSc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzQ3Vyc29QZXJpb2RvPT0nMTEnPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nTk9WSUVNQlJFJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNDdXJzb1BlcmlvZG89PScxMic/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdESUNJRU1CUkUnOicnOyAgIFxyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNRmlkZWljb21pc29QZXJpb2RvSW50ZXJlc0NhdGFsb2dvIGV4dGVuZHMgTUJhc2ljTW9kZWx7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgaWRQZXJzb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBjb2RpZ29QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgY2VkdWxhUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIG5vbWJyZVBlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBhcGVsbGlkb1BlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBmZWNoYUluZ3Jlc29QZXJzb25hbDpzdHJpbmc9JzE5MDAtMDEtMDEnO1xyXG4gICAgcHVibGljIGVzdGF0dXNQZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZGVub21pbmFjaW9uRXN0YXR1czpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgaW50ZXJlczpNRmlkZWljb21pc29QZXJpb2RvSW50ZXJlc1tdPVtdO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKGU6SUZpZGVpY29taXNvUGVyaW9kb0ludGVyZXNDYXRhbG9nbz1udWxsKXtcclxuICAgICAgICBzdXBlcigpXHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbnRlcnByaXNlPStlLmlkX2VudGVycHJpc2U7ICBcclxuICAgICAgICAgICAgdGhpcy5pZEVtcHJlc2E9K2UuaWRfZW1wcmVzYTtcclxuICAgICAgICAgICAgdGhpcy5pZFBlcnNvbmFsPStlLmlkX3BlcnNvbmFsO1xyXG4gICAgICAgICAgICB0aGlzLmNvZGlnb1BlcnNvbmFsPWUuY29kcGVyXHJcbiAgICAgICAgICAgIHRoaXMuY2VkdWxhUGVyc29uYWw9ZS5jZWRwZXI7XHJcbiAgICAgICAgICAgIHRoaXMubm9tYnJlUGVyc29uYWw9ZS5ub21wZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYXBlbGxpZG9QZXJzb25hbD1lLmFwZXBlcjtcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9ZS5lc3RwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZmVjaGFJbmdyZXNvUGVyc29uYWw9ZS5mZWNpbmdwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMCc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nUFJFLUlOR1JFU08nIDpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PScxJz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdBQ1RJVk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzInPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J05JTkdVTk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzMnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0VHUkVTQURPJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc0Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdSRU1PQ0nDk04nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzUnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J1JFVElSTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nNic/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nREVTVElUVUNJw5NOJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc3Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdMSVFVSURBQ0nDk04nOicnO1xyXG4gICAgICAgICAgICBpZihlLmludGVyZXNlcyl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmludGVyZXM9ZS5pbnRlcmVzZXMubWFwKGU9PiBuZXcgTUZpZGVpY29taXNvUGVyaW9kb0ludGVyZXMoZSkpOyAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1lbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5pc05ldz10cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1GaWRlaWNvbWlzb1BlcmlvZG9JbnRlcmVzIGV4dGVuZHMgTUJhc2ljTW9kZWx7XHJcbiAgICBwdWJsaWMgaWRFbnRlcnByaXNlOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGlkRW1wcmVzYTpudW1iZXI9MDsgXHJcbiAgICBwdWJsaWMgaWRQZXJzb25hbDpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBpZE5vbWluYTpudW1iZXI9MDtcclxuICAgIHB1YmxpYyBtZXNJbnRlcmVzOm51bWJlcj0wO1xyXG4gICAgcHVibGljIGFuaW9JbnRlcmVzOnN0cmluZz0nJztcclxuXHRwdWJsaWMgbW9udG9BbnRlcmlvckFjdW11bGFkbzpudW1iZXI9MFxyXG4gICAgcHVibGljIG1vbnRvQW50ZXJpb3I6bnVtYmVyPTBcclxuICAgIHB1YmxpYyBwb3JjZW50YWplSW50ZXJlczpudW1iZXI9MFxyXG4gICAgcHVibGljIG1vbnRvSW50ZXJlczpudW1iZXI9MFxyXG4gICAgcHVibGljIG1vbnRvQ2FwaXRhbDpudW1iZXI9MFxyXG4gICAgcHVibGljIGFudGljaXBvUHJlc3RhbW86bnVtYmVyPTBcclxuICAgIHB1YmxpYyBpZER0RmlkZTpudW1iZXI9MFxyXG4gICAgcHVibGljIGNlZHVsYVBlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBub21icmVQZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgYXBlbGxpZG9QZXJzb25hbDpzdHJpbmc9Jyc7XHJcbiAgICBwdWJsaWMgZmVjaGFJbmdyZXNvUGVyc29uYWw6c3RyaW5nPScxOTAwLTAxLTAxJztcclxuICAgIHB1YmxpYyBlc3RhdHVzUGVyc29uYWw6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNvZGlnb1BlcnNvbmFsOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25Fc3RhdHVzOnN0cmluZz0nJztcclxuICAgIHB1YmxpYyBkZW5vbWluYWNpb25NZXM6c3RyaW5nPScnO1xyXG4gICAgcHVibGljIGNhcGl0YWw6bnVtYmVyPTA7XHJcbiAgICBwdWJsaWMgY29kaWdvTm9taW5hOnN0cmluZz0nJztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihlOklGaWRlaWNvbWlzb1BlcmlvZG9JbnRlcmVzPW51bGwpe1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgaWYoZSl7XHJcbiAgICAgICAgICAgIHRoaXMuaWRFbXByZXNhPStlLmlkX2VtcHJlc2E7XHJcbiAgICAgICAgICAgIHRoaXMuaWRQZXJzb25hbD0rZS5pZF9wZXJzb25hbDtcclxuICAgICAgICAgICAgdGhpcy5pZE5vbWluYT0rZS5pZF9ub21pbmE7XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz0rZS5tZXNpbnQ7XHJcbiAgICAgICAgICAgIHRoaXMuYW5pb0ludGVyZXM9ZS5hbm9pbnRcclxuICAgICAgICAgICAgdGhpcy5tb250b0FudGVyaW9yQWN1bXVsYWRvPStlLm1vbmFudGFjdTtcclxuICAgICAgICAgICAgdGhpcy5tb250b0FudGVyaW9yPStlLm1vbmFudDtcclxuICAgICAgICAgICAgdGhpcy5wb3JjZW50YWplSW50ZXJlcz0rZS5wb3JpbnQ7XHJcbiAgICAgICAgICAgIHRoaXMubW9udG9JbnRlcmVzPStlLm1vbmludDtcclxuICAgICAgICAgICAgdGhpcy5tb250b0NhcGl0YWw9K2UubW9uY2FwO1xyXG4gICAgICAgICAgICB0aGlzLmFudGljaXBvUHJlc3RhbW89K2UuYW50cHJlO1xyXG4gICAgICAgICAgICB0aGlzLmNhcGl0YWw9K2UuY2FwaXRhbDtcclxuICAgICAgICAgICAgdGhpcy5pZER0RmlkZT0rZS5pZF9kdF9maWRwZXJpbnQ7XHJcbiAgICAgICAgICAgIHRoaXMuY2VkdWxhUGVyc29uYWw9ZS5jZWRwZXI7XHJcbiAgICAgICAgICAgIHRoaXMubm9tYnJlUGVyc29uYWw9ZS5ub21wZXI7XHJcbiAgICAgICAgICAgIHRoaXMuYXBlbGxpZG9QZXJzb25hbD1lLmFwZXBlcjtcclxuICAgICAgICAgICAgdGhpcy5mZWNoYUluZ3Jlc29QZXJzb25hbD1lLmZlY2luZ3BlcjtcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9ZS5lc3RwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuY29kaWdvUGVyc29uYWw9ZS5jb2RwZXI7XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nMCc/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nUFJFLUlOR1JFU08nIDpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PScxJz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdBQ1RJVk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzInPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J05JTkdVTk8nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzMnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J0VHUkVTQURPJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc0Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdSRU1PQ0nDk04nOlxyXG4gICAgICAgICAgICB0aGlzLmVzdGF0dXNQZXJzb25hbD09JzUnPyB0aGlzLmRlbm9taW5hY2lvbkVzdGF0dXM9J1JFVElSTyc6XHJcbiAgICAgICAgICAgIHRoaXMuZXN0YXR1c1BlcnNvbmFsPT0nNic/IHRoaXMuZGVub21pbmFjaW9uRXN0YXR1cz0nREVTVElUVUNJw5NOJzpcclxuICAgICAgICAgICAgdGhpcy5lc3RhdHVzUGVyc29uYWw9PSc3Jz8gdGhpcy5kZW5vbWluYWNpb25Fc3RhdHVzPSdMSVFVSURBQ0nDk04nOicnO1xyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTE/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdFTkVSTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09Mj8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0ZFQlJFTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09Mz8gdGhpcy5kZW5vbWluYWNpb25NZXM9J01BUlpPJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNJbnRlcmVzPT00PyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nQUJSSUwnOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTU/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdNQVlPJzpcclxuICAgICAgICAgICAgdGhpcy5tZXNJbnRlcmVzPT02PyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nSlVOSU8nOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTc/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdKVUxJTyc6Jyc7XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09OD8gdGhpcy5kZW5vbWluYWNpb25NZXM9J0FHT1NUTyc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09OT8gdGhpcy5kZW5vbWluYWNpb25NZXM9J1NFUFRJRU1CUkUnOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTEwPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nT0NUVUJSRSc6XHJcbiAgICAgICAgICAgIHRoaXMubWVzSW50ZXJlcz09MTE/IHRoaXMuZGVub21pbmFjaW9uTWVzPSdOT1ZJRU1CUkUnOlxyXG4gICAgICAgICAgICB0aGlzLm1lc0ludGVyZXM9PTEyPyB0aGlzLmRlbm9taW5hY2lvbk1lcz0nRElDSUVNQlJFJzonJztcclxuICAgICAgICAgICAgdGhpcy5jb2RpZ29Ob21pbmE9ZS5jb2Rub207ICAgXHJcbiAgICAgICAgfWVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmlzTmV3PXRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICBcclxufVxyXG4iXX0=
|