@captureid/datatypes 1.0.59 → 1.0.60
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/esm2022/lib/enums.mjs +3 -1
- package/esm2022/lib/model/common/calendar-object.mjs +4 -4
- package/fesm2022/captureid-datatypes.mjs +5 -3
- package/fesm2022/captureid-datatypes.mjs.map +1 -1
- package/lib/enums.d.ts +2 -0
- package/lib/model/common/calendar-object.d.ts +3 -3
- package/package.json +1 -1
package/esm2022/lib/enums.mjs
CHANGED
|
@@ -675,6 +675,8 @@ export var PaymentEventType;
|
|
|
675
675
|
(function (PaymentEventType) {
|
|
676
676
|
PaymentEventType[PaymentEventType["EVENT_UNKNOWN"] = 0] = "EVENT_UNKNOWN";
|
|
677
677
|
PaymentEventType[PaymentEventType["EVENT_PAYMENT"] = 1] = "EVENT_PAYMENT";
|
|
678
|
+
PaymentEventType[PaymentEventType["EVENT_ENDOFDAY"] = 2] = "EVENT_ENDOFDAY";
|
|
679
|
+
PaymentEventType[PaymentEventType["EVENT_STATUS"] = 3] = "EVENT_STATUS";
|
|
678
680
|
PaymentEventType[PaymentEventType["EVENT_HEARTBEAT"] = 10] = "EVENT_HEARTBEAT";
|
|
679
681
|
})(PaymentEventType || (PaymentEventType = {}));
|
|
680
682
|
(function (PaymentEventType) {
|
|
@@ -717,4 +719,4 @@ export var PosEventType;
|
|
|
717
719
|
}
|
|
718
720
|
PosEventType.values = values;
|
|
719
721
|
})(PosEventType || (PosEventType = {}));
|
|
720
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYXB0dXJlaWQtZGF0YXR5cGVzL3NyYy9saWIvZW51bXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksUUFxR1g7QUFyR0QsV0FBWSxRQUFRO0lBQ2xCLDZDQUFXLENBQUE7SUFDWCxtREFBYyxDQUFBO0lBQ2QsMkNBQVUsQ0FBQTtJQUNWLHlDQUFTLENBQUE7SUFDVCw2Q0FBVyxDQUFBO0lBQ1gsK0NBQVksQ0FBQTtJQUNaLDZDQUFXLENBQUE7SUFDWCw2Q0FBVyxDQUFBO0lBQ1gseUNBQVMsQ0FBQTtJQUNULHlDQUFTLENBQUE7SUFDVCxvREFBZSxDQUFBO0lBQ2Ysa0VBQXNCLENBQUE7SUFDdEIsd0NBQVMsQ0FBQTtJQUNULDREQUFtQixDQUFBO0lBQ25CLHdEQUFpQixDQUFBO0lBQ2pCLDRDQUFXLENBQUE7SUFDWCxnRUFBcUIsQ0FBQTtJQUNyQixzRUFBd0IsQ0FBQTtJQUN4Qix3Q0FBUyxDQUFBO0lBQ1QsOENBQVksQ0FBQTtJQUNaLGdEQUFhLENBQUE7SUFDYixzREFBZ0IsQ0FBQTtJQUNoQixvREFBZSxDQUFBO0lBQ2YsNENBQVcsQ0FBQTtJQUNYLDhEQUFvQixDQUFBO0lBQ3BCLDhDQUFZLENBQUE7SUFDWixrRUFBc0IsQ0FBQTtJQUN0QixzREFBZ0IsQ0FBQTtJQUNoQiw0Q0FBVyxDQUFBO0lBQ1gsOENBQVksQ0FBQTtJQUNaLDBDQUFVLENBQUE7SUFDVix3REFBaUIsQ0FBQTtJQUNqQiw0Q0FBVyxDQUFBO0lBQ1gsa0RBQWMsQ0FBQTtJQUNkLGdEQUFhLENBQUE7SUFDYiw0REFBbUIsQ0FBQTtJQUNuQiwwQ0FBVSxDQUFBO0lBQ1Ysa0RBQWMsQ0FBQTtJQUNkLDhDQUFZLENBQUE7SUFDWixnREFBYSxDQUFBO0lBQ2IsOENBQVksQ0FBQTtJQUNaLHdEQUFpQixDQUFBO0lBQ2pCLGtEQUFjLENBQUE7SUFD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WSxLQUFaLFlBQVksUUFnQjVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FwdHVyZWlkRGF0YXR5cGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jYXB0dXJlaWQtZGF0YXR5cGVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBWQVQgfSBmcm9tICcuL21vZGVsL2NvbW1vbi90YXhlcyc7XG5leHBvcnQgZW51bSBEYXRhVHlwZSB7XG4gIFVOS05PV04gPSAwLFxuICBOQVZJR0FUSU9OID0gMSxcbiAgU1lTVEVNID0gMixcbiAgTEFCRUwgPSAzLFxuICBORVRXT1JLID0gNCxcbiAgRElTQ09WRVIgPSA1LFxuICBQUklOVEVSID0gNixcbiAgUFJPRklMRSA9IDcsXG4gIENIQVJUID0gOCxcbiAgUVVFVUUgPSA5LFxuICBMQUJFTFBSSU5UID0gMTAsXG4gIFBST0ZJTEUyQ09OVEFJTkVSID0gMTEsXG4gIFVTRVIgPSAxMixcbiAgQVVUSEVOVElDQVRJT04gPSAxMyxcbiAgVVNFUkVYVEVOREVEID0gMTQsXG4gIE1PRFVMRSA9IDE1LFxuICBQUk9EVUNUX0NBVEVHT1JZID0gMTYsXG4gIFBST0RVQ1RfU1VCQ0FURUdPUlkgPSAxNyxcbiAgSVRFTSA9IDE4LFxuICBBRERSRVNTID0gMTksXG4gIExPQ0FUSU9OID0gMjAsXG4gIEFDQ0VTU1BPSU5UID0gMjEsXG4gIFNIRUxGTEFCRUwgPSAyMixcbiAgVkVORE9SID0gMjMsXG4gIFBBWU1FTlRURVJNSU5BTCA9IDI0LFxuICBFU0xQT09MID0gMjUsXG4gIFZFUklGSUNBVElPTlRPS0VOID0gMjYsXG4gIFVTRVJQUk9GSUxFID0gMjcsXG4gIENMSUVOVCA9IDI4LFxuICBMSUNFTlNFID0gMjksXG4gIElNQUdFID0gMzAsXG4gIE1BTlVGQUNUVVJFUiA9IDMxLFxuICBSQVRJTkcgPSAzMixcbiAgUEFDS0FHSU5HID0gMzMsXG4gIENVUlJFTkNZID0gMzQsXG4gIElURU1QUk9QRVJUSUVTID0gMzUsXG4gIFNUT0NLID0gMzYsXG4gIElOVkVOVE9SWSA9IDM3LFxuICBDT1VOVFJZID0gMzgsXG4gIEJVSUxESU5HID0gMzksXG4gIENPTVBBTlkgPSA0MCxcbiAgSVRFTVBST1BFUlRZID0gNDEsXG4gIERJTUVOU0lPTiA9IDQyLFxuICBTSEVMRiA9IDQzLFxuICBQVVJDSEFTRVBSSUNFID0gNDQsXG4gIFNFTExJTkdQUklDRSA9IDQ1LFxuICBGTE9PUiA9IDQ2LFxuICBST09NID0gNDcsXG4gIExFVkVMID0gNDgsXG4gIFNQQUNFID0gNDksXG4gIEJPT0tJTkcgPSA1MCxcbiAgR1BJTyA9IDUxLFxuICBJVEVNREVUQUlMID0gNTIsXG4gIEVTTEFTU09DSUFUSU9OID0gNTMsXG4gIEVTTFVQREFURSA9IDU0LFxuICBNRVNTQUdFID0gNTUsXG4gIEVTTFRFTVBMQVRFID0gNTYsXG4gIElURU1TSE9SVCA9IDU3LFxuICBDQVJUID0gNTgsXG4gIFBBWU1FTlQgPSA1OSxcbiAgTE9HRU5UUlkgPSA2MCxcbiAgU1RBVElTVElDID0gNjEsXG4gIFJPTEUgPSA2MixcbiAgVVNFUkFDQ0VTUyA9IDYzLFxuICBSRVNPVVJDRSA9IDY0LFxuICBNRU5VID0gNjUsXG4gIENPVVBPTiA9IDY2LFxuICBCT04gPSA2NyxcbiAgRU5ET0ZEQVlCT04gPSA2OCxcbiAgUFJPUEVSVFlOQU1FUyA9IDY5LFxuICBDQVRFR09SWU5BTUVTID0gNzAsXG4gIElURU1HUk9VUCA9IDcxLFxuICBWQVQgPSA3MixcbiAgSU1QT1JUID0gNzMsXG4gIFNVUFBMSUVSID0gNzQsXG4gIEZBUSA9IDc1LFxuICBDSEFUID0gNzYsXG4gIEZBUk1JTkdNRVRIT0QgPSA3NyxcbiAgVElDS0VUID0gNzgsXG4gIFRJQ0tFVE1FU1NBR0UgPSA3OSxcbiAgV0VCVEVNUExBVEUgPSA4MCxcbiAgRU1BSUxURU1QTEFURSA9IDgxLFxuICBKT1VSTkFMID0gODIsXG4gIEZJTEVJTVBPUlQgPSA4MyxcbiAgQlVJTERJTkdBQ0NFU1MgPSA4NCxcbiAgVE9QSUMgPSA4NSxcbiAgU1VCU0NSSVBUSU9OID0gODYsXG4gIE5PVElGSUNBVElPTiA9IDg3LFxuICBDQU1QQUlHTiA9IDg4LFxuICBBRFZFUlRJU0VNRU5UID0gODksXG4gIFJFQUxUSU1FU1VCU0NSSVBUSU9OID0gOTAsXG4gIFNUT1JFID0gOTEsXG4gIENBTEVOREFSID0gOTIsXG4gIFRFTkFOVCA9IDkzLFxuICBQQVlNRU5UVEVSTUlOQUxTSE9SVCA9IDk0LFxuICBTVE9SRUlORk9STUFUSU9OID0gOTUsXG4gIFBPU1RFUk1JTkFMID0gOTYsXG4gIE1BTkFHRU1FTlQgPSA5NyxcbiAgQUREUkVTU1RZUEUgPSA5OCxcbiAgQUREUkVTU1RPQ09NUEFOWSA9IDk5LFxufVxuXG5leHBvcnQgZW51bSBCb29raW5nVHlwZSB7XG4gIFVOS05PV04gPSAwLFxuICBJTkNPTUlORyA9IDEsIC8vV2FyZW5laW5nYW5nXG4gIE9VVEdPSU5HID0gMiwgLy9XYXJlbmF1c2dhbmdcblxuICBTVE9SRUFDQ0VTUyA9IDgsIC8vWnVnYW5nIHp1bSBWZXJrYXVmIChUw7xyw7ZmZm5lcilcbiAgU1RPUkVFWElUID0gOSwgLy9WZXJsYXNzZW4gZGVzIEdlc2Now6RmdHMgKFTDvHLDtmZmbmVyKVxuXG4gIFBST01PVElPTiA9IDExLCAvL1dlcmJlYWt0aW9uXG5cbiAgTUFSS0RPV04gPSAyMSwgLy9QcmVpc3JlZHV6aWVydW5nXG4gIE1BUktVUCA9IDIyLCAvL1ByZWlzZXJow7ZodW5nXG5cbiAgU1RPQ0tNT1ZFID0gMzEsIC8vTGFnZXJiZXdlZ3VuZ1xuICBTVE9DS0FERCA9IDMyLCAvL0xhZ2VyenVnYW5nXG4gIFNUT0NLUkVNT1ZFID0gMzMsIC8vTGFnZXJhYmdhbmdcblxuICBTRUxMSU5HQUREID0gNDEsIC8vVmVya2F1ZlxuICBTRUxMSU5HUkVNT1ZFID0gNDIsIC8vU3Rvcm5vXG4gIFNFTExJTkdVUERBVEUgPSA0MywgLy/DhG5kZXJ1bmdcblxuICBTVE9SRVRSQU5TRkVSID0gNTEsIC8vTGFnZXJ0cmFuc2ZlclxuICBSRVNFUlZBVElPTiA9IDUyLCAvL1Jlc2VydmllcnVuZ1xuICBPUkRFUiA9IDUzLCAvL0Jlc3RlbGx1bmdcbiAgUkVUVVJOID0gNTQsIC8vUsO8Y2tzZW5kdW5nXG5cbiAgU1RPQ0tUQUtFID0gNjEsIC8vSW52ZW50dXJcbiAgU1RPQ0tDT1JSRUNUSU9OID0gNjIsIC8vQmVzdGFuZHNrb3JyZWt0dXJcbiAgU1RPQ0tBREpVU1RNRU5UID0gNjMsIC8vQmVzdGFuZHNhbnBhc3N1bmdcbiAgU1RPQ0tDSEVDSyA9IDY0LCAvL0Jlc3RhbmRzcHLDvGZ1bmdcblxuICBEQU1BR0VEID0gNzEsIC8vQmVzY2jDpGRpZ3VuZ1xuICBMT1NUID0gNzIsIC8vVmVybHVzdFxuICBFWFBJUkVEID0gNzMsIC8vVmVyZmFsbFxuXG4gIERFTElWRVJZID0gODEsIC8vTGllZmVydW5nXG4gIFBJQ0tVUCA9IDgyLCAvL0FiaG9sdW5nXG4gIFNISVBQSU5HID0gODMsIC8vVmVyc2FuZFxuXG4gIFNVQlNDUklQVElPTiA9IDkxLCAvL0Fib25uZW1lbnRcbiAgSU5WT0lDRSA9IDkyLCAvL1JlY2hudW5nXG4gIFBBWU1FTlQgPSA5MywgLy9aYWhsdW5nXG4gIFJFRlVORCA9IDk0LCAvL1LDvGNrZXJzdGF0dHVuZ1xuXG4gIERPTkFUSU9OID0gMTAxLCAvL1NwZW5kZVxuXG4gIEdJRlQgPSAxMTEsIC8vR2VzY2hlbmtcbiAgR0lGVENBUkQgPSAxMTIsIC8vR2VzY2hlbmtrYXJ0ZVxuICBHSUZUVk9VQ0hFUiA9IDExMywgLy9HdXRzY2hlaW5cblxuICBTQ0FOID0gMTIxLFxuICBDQVJUQUREID0gMTIyLCAvL1dhcmVua29yYnp1c2NobGFnXG4gIENBUlRSRU1PVkUgPSAxMjMsIC8vV2FyZW5rb3JiYWJ6dWdcbiAgQ0FSVFVQREFURSA9IDEyNCwgLy9XYXJlbmtvcmJhbnBhc3N1bmdcbiAgQ0FSVEZJTkFMSVpFID0gMTI1LCAvL1dhcmVua29yYmFic2NobHVzc1xuICBDQVJUQ0FOQ0VMID0gMTI2LCAvL1dhcmVua29yYnN0b3JuaWVydW5nXG59XG5cbmV4cG9ydCBlbnVtIENhbGVuZGFyVHlwZSB7XG4gIENBTEVOREFSX1VOS05PV04gPSAwLFxuICBDQUxFTkRBUl9DQU1QQUlHTiA9IDEsXG59XG5cbmV4cG9ydCBlbnVtIE9wZXJhdG9ycyB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQU5EID0gMSxcbiAgICBPUiA9IDIsXG59XG5cbmV4cG9ydCBlbnVtIEltYWdlVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQVZBVEFSID0gMSxcbiAgICBJVEVNID0gMixcbiAgICBBRFZFUlRJU0VNRU5UID0gMyxcbiAgICBCVUlMRElORyA9IDQsXG4gICAgQ1VTVE9NID0gNSxcbn1cblxuZXhwb3J0IGVudW0gRGF0YWJhc2VFdmVudFR5cGUge1xuICAgIEVWRU5UX1VOS05PV04gPSAwLFxuICAgIEVWRU5UX0FEREVEID0gMSxcbiAgICBFVkVOVF9VUERBVEVEID0gMixcbiAgICBFVkVOVF9ERUxFVEVEID0gM1xufVxuXG5leHBvcnQgZW51bSBFTWFpbFRlbXBsYXRlVHlwZSB7XG4gICAgV0VMQ09NRSA9IDAsXG4gICAgUkVHQ09ORklSTSA9IDEsXG4gICAgUkVTRVRQQVNTV09SRCA9IDJcbn1cblxuZXhwb3J0IGVudW0gV2ViVGVtcGxhdGVUeXBlIHtcbiAgICBIT01FUEFHRSA9IDAsXG4gICAgV0VMQ09NRVBBR0UgPSAxLFxuICAgIENPTkZJUk1QQUdFID0gMlxufVxuXG5leHBvcnQgZW51bSBQYXltZW50U3RhdGUge1xuICAgIFVOS05PV04gPSAwLFxuICAgIFBFTkRJTkcgPSAxLFxuICAgIENPTVBMRVRFRCA9IDIsXG4gICAgRkFJTEVEID0gMyxcbiAgICBSRUZVTkRFRCA9IDQsXG4gICAgQ0FOQ0VMTEVEID0gNSxcbiAgICBQQVJUSUFMX1JFRlVORCA9IDYsXG4gICAgUEFSVElBTF9QQVlNRU5UID0gNyxcbiAgICBBVVRIT1JJWkVEID0gOCxcbiAgICBERUNMSU5FRCA9IDksXG4gICAgUFJPQ0VTU0lORyA9IDEwLFxufVxuXG5leHBvcnQgZW51bSBQaW5TdGF0ZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgTE9XID0gMSxcbiAgICBISUdIID0gMlxufVxuZXhwb3J0IG5hbWVzcGFjZSBQaW5TdGF0ZSB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gUGluU3RhdGVbc3RyIGFzIGtleW9mIHR5cGVvZiBQaW5TdGF0ZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQaW5TdGF0ZSkpIHtcbiAgICAgICAgICAgIGlmKGlzTmFOKE9iamVjdC52YWx1ZXMoUGluU3RhdGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKFBpblN0YXRlKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhQaW5TdGF0ZSlbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gTW9kdWxlVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQUlfTU9EVUxFID0gMSxcbiAgICBQQVlNRU5UX01PRFVMRSA9IDIsXG4gICAgUkZJRF9NT0RVTEUgPSAzLFxuICAgIEVTTF9NT0RVTEUgPSA0LFxuICAgIERCMl9NT0RVTEUgPSA1LFxuICAgIE1PTkdPREJfTU9EVUxFID0gNixcbiAgICBQT1NUR1JFU19NT0RVTEUgPSA3LFxuICAgIEFVVEhFTlRJQ0FUSU9OX01PRFVMRSA9IDgsXG4gICAgR0FURVdBWV9NT0RVTEUgPSA5LFxuICAgIFBSSU5UX01PRFVMRSA9IDEwLFxuICAgIFJFR0lTVFJZX01PRFVMRSA9IDExLFxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE1vZHVsZVR5cGUge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1vZHVsZVR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBNb2R1bGVUeXBlXSBhcyBudW1iZXI7XG4gICAgfVxuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgICAgIGZvcihjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpW3ZhbHVlXSkgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFJUU3RhdGVFdmVudFR5cGUge1xuICAgIEVWRU5UX1VOS05PV04gPSAwLFxuICAgIEVWRU5UX1NUT1JFID0gMSxcbiAgICBFVkVOVF9VU0VSID0gMlxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFJUU3RhdGVFdmVudFR5cGUge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIFJUU3RhdGVFdmVudFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBSVFN0YXRlRXZlbnRUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhSVFN0YXRlRXZlbnRUeXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKFJUU3RhdGVFdmVudFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFJUU3RhdGVFdmVudFR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUlRTdGF0ZUV2ZW50VHlwZSlbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBSZWdpc3RyYXRpb25TdGF0ZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgUkVRVUVTVEVEID0gMSxcbiAgICBPVFBDT01QTEVURSA9IDIsXG4gICAgQ09ORklSTUVEID0gMyxcbiAgICBBU1NPQ0lBVEVEID0gNCxcbiAgICBDT01QTEVURUQgPSA1XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUmVnaXN0cmF0aW9uU3RhdGUge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFJlZ2lzdHJhdGlvblN0YXRlW3N0ciBhcyBrZXlvZiB0eXBlb2YgUmVnaXN0cmF0aW9uU3RhdGVdIGFzIG51bWJlcjtcbiAgICB9XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICAgICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICAgICAgZm9yKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoUmVnaXN0cmF0aW9uU3RhdGUpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFJlZ2lzdHJhdGlvblN0YXRlKVt2YWx1ZV0gYXMgYW55KSAmJiB0eXBlb2YoT2JqZWN0LnZhbHVlcyhSZWdpc3RyYXRpb25TdGF0ZSlbdmFsdWVdKSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUmVnaXN0cmF0aW9uU3RhdGUpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFByaW50ZXJMYW5ndWFnZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgU0JQTCA9IDEsXG4gICAgU1BPUyA9IDIsXG4gICAgU0NQQ0wgPSAzLFxuICAgIFNaUEwgPSA0LFxuICAgIFNEUEwgPSA1LFxuICAgIFNJUEwgPSA2LFxuICAgIFNUUENMID0gNyxcbiAgICBaUEwgPSA4LFxuICAgIENaUEwgPSA5LFxuICAgIEZJTkdFUlBSSU5UID0gMTAsXG4gICAgRFAgPSAxMSxcbiAgICBTTENTID0gMTJcbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQcmludGVyTGFuZ3VhZ2Uge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFByaW50ZXJMYW5ndWFnZVtzdHIgYXMga2V5b2YgdHlwZW9mIFByaW50ZXJMYW5ndWFnZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQcmludGVyTGFuZ3VhZ2UpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFByaW50ZXJMYW5ndWFnZSlbdmFsdWVdIGFzIGFueSkgJiYgdHlwZW9mKE9iamVjdC52YWx1ZXMoUHJpbnRlckxhbmd1YWdlKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhQcmludGVyTGFuZ3VhZ2UpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFByaW50ZXJNYW51ZmFjdHVyZXIge1xuICAgIFVOS05PV04gPSAwLFxuICAgIENJVElaRU4gPSAxLFxuICAgIEJJWE9MT04gPSAyLFxuICAgIEJST1RIRVIgPSAzLFxuICAgIEVTQ1BPUyA9IDQsXG4gICAgR09PSlBSVCA9IDUsXG4gICAgSE9ORVlXRUxMID0gNixcbiAgICBTQVRPID0gNyxcbiAgICBaRUJSQSA9IDggICAgXG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUHJpbnRlck1hbnVmYWN0dXJlciB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gUHJpbnRlck1hbnVmYWN0dXJlcltzdHIgYXMga2V5b2YgdHlwZW9mIFByaW50ZXJNYW51ZmFjdHVyZXJdIGFzIG51bWJlcjtcbiAgICB9XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICAgICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICAgICAgZm9yKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcikpIHtcbiAgICAgICAgICAgIGlmKGlzTmFOKE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcilbdmFsdWVdIGFzIGFueSkgJiYgdHlwZW9mKE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcilbdmFsdWVdKSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcilbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gVW5pdCB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgTU0gPSAxLFxuICAgIENNID0gMixcbiAgICBNID0gMyxcbiAgICBJTkNIID0gNCxcbiAgICBGT09UID0gNSxcbiAgICBQSUVDRSA9IDYsXG4gICAgS0cgPSA3LFxuICAgIEdSQU1NID0gOCxcbiAgICBNSUxMSUdSQU1NID0gOSwgXG59XG5leHBvcnQgbmFtZXNwYWNlIFVuaXQge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFVuaXRbc3RyIGFzIGtleW9mIHR5cGVvZiBVbml0XSBhcyBudW1iZXI7XG4gICAgfVxuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgICAgIGZvcihjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKFVuaXQpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFVuaXQpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKFVuaXQpW3ZhbHVlXSkgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKFVuaXQpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFNldmVyaXR5IHtcblx0VU5LTk9XTiA9IDAsXG5cdEVNRVJHRU5DWSA9IDEsXG5cdEFMRVJUID0gMixcblx0Q1JJVElDQUwgPSAzLFxuXHRFUlJPUiA9IDQsXG5cdFdBUk5JTkcgPSA1LFxuXHROT1RJQ0UgPSA2LFxuXHRJTkZPUk1BVElPTiA9IDcsXG5cdERFQlVHID0gOCxcbn1cbmV4cG9ydCBuYW1lc3BhY2UgU2V2ZXJpdHkge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFNldmVyaXR5W3N0ciBhcyBrZXlvZiB0eXBlb2YgU2V2ZXJpdHldIGFzIG51bWJlcjtcbiAgICB9XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICAgICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICAgICAgZm9yKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoU2V2ZXJpdHkpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFNldmVyaXR5KVt2YWx1ZV0gYXMgYW55KSAmJiB0eXBlb2YoT2JqZWN0LnZhbHVlcyhTZXZlcml0eSlbdmFsdWVdKSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoU2V2ZXJpdHkpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIE1lc3NhZ2VUeXBlIHtcbiAgICBVTktOT1dOID0gMCxcbiAgICBFUlJPUiA9IDEsXG4gICAgTk9USUZJQ0FUSU9OID0gMixcbiAgICBFWENFUFRJT04gPSAzLFxufVxuZXhwb3J0IG5hbWVzcGFjZSBNZXNzYWdlVHlwZSB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWVzc2FnZVR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBNZXNzYWdlVHlwZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhNZXNzYWdlVHlwZSkpIHtcbiAgICAgICAgICAgIGlmKGlzTmFOKE9iamVjdC52YWx1ZXMoTWVzc2FnZVR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKE1lc3NhZ2VUeXBlKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhNZXNzYWdlVHlwZSlbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gQXR0YWNobWVudFR5cGUge1xuICBVTktOT1dOID0gMCxcbiAgREFUQUZJTEUgPSAxLFxuICBURVhURklMRSA9IDIsXG4gIElNQUdFRklMRSA9IDMsXG4gIEFVRElPRklMRSA9IDQsXG4gIFZJREVPRklMRSA9IDUsXG4gIFBERkZJTEUgPSA2LFxufVxuZXhwb3J0IG5hbWVzcGFjZSBBdHRhY2htZW50VHlwZSB7XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gQXR0YWNobWVudFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBBdHRhY2htZW50VHlwZV0gYXMgbnVtYmVyO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoQXR0YWNobWVudFR5cGUpKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGlzTmFOKE9iamVjdC52YWx1ZXMoQXR0YWNobWVudFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKEF0dGFjaG1lbnRUeXBlKVt2YWx1ZV0gIT09ICdmdW5jdGlvbidcbiAgICAgICkge1xuICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKEF0dGFjaG1lbnRUeXBlKVt2YWx1ZV0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbmV4cG9ydCBlbnVtIFN0YXR1cyB7XG4gICAgU1VDQ0VTUyA9IDAsXG4gICAgRVJST1IgPSAxLFxuICAgIElOQUNUSVZFID0gMixcbiAgICBERUxFVEVEID0gMyxcbiAgICBMT0NLRUQgPSA0LFxuICAgIFVOTE9DS0VEID0gNSxcbiAgICBQRU5ESU5HID0gNixcbiAgICBBQk9SVEVEID0gNyxcbiAgICBUSU1FT1VUID0gOCxcbiAgICBDT05ORUNURUQgPSA5LFxuICAgIFVOS05PV04gPSA5OVxufVxuZXhwb3J0IG5hbWVzcGFjZSBTdGF0dXMge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFN0YXR1c1tzdHIgYXMga2V5b2YgdHlwZW9mIFN0YXR1c10gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFN0YXR1cylbdmFsdWVdIGFzIGFueSkgJiYgdHlwZW9mKE9iamVjdC52YWx1ZXMoU3RhdHVzKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKFN0YXR1cylbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gVGlja2V0U3RhdHVzIHtcbiAgT1BFTiA9IDEsXG4gIENMT1NFID0gMixcbiAgSU5XT1JLID0gMyxcbn1cbmV4cG9ydCBuYW1lc3BhY2UgVGlja2V0U3RhdHVzIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBUaWNrZXRTdGF0dXNbc3RyIGFzIGtleW9mIHR5cGVvZiBUaWNrZXRTdGF0dXNdIGFzIG51bWJlcjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKFRpY2tldFN0YXR1cykpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhUaWNrZXRTdGF0dXMpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFRpY2tldFN0YXR1cylbdmFsdWVdICE9PSAnZnVuY3Rpb24nXG4gICAgICApIHtcbiAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhUaWNrZXRTdGF0dXMpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gVGlja2V0U2VuZGVyVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgVVNFUiA9IDEsXG4gICAgQURNSU4gPSAyLFxufVxuZXhwb3J0IG5hbWVzcGFjZSBUaWNrZXRTZW5kZXJUeXBlIHtcbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBUaWNrZXRTZW5kZXJUeXBlW3N0ciBhcyBrZXlvZiB0eXBlb2YgVGlja2V0U2VuZGVyVHlwZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoVGlja2V0U2VuZGVyVHlwZSkpIHtcbiAgICAgICAgICAgIGlmIChpc05hTihPYmplY3QudmFsdWVzKFRpY2tldFNlbmRlclR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZiBPYmplY3QudmFsdWVzKFRpY2tldFNlbmRlclR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoVGlja2V0U2VuZGVyVHlwZSlbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gSW1wb3J0VHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgVEVSTUlOQUwgPSAxLFxuICAgIEVTTCA9IDIsXG4gICAgRVNMUE9PTCA9IDMsXG59XG5leHBvcnQgbmFtZXNwYWNlIEltcG9ydFR5cGUge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIEltcG9ydFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBJbXBvcnRUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhJbXBvcnRUeXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKEltcG9ydFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKEltcG9ydFR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoSW1wb3J0VHlwZSlbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBGaWxlVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQ1NWID0gMSxcbiAgICBYTFNYID0gMixcbiAgICBYTUwgPSAzLFxuICAgIEpTT04gPSA0LFxuICAgIFBERiA9IDUsXG4gICAgVFhUID0gNixcbiAgICBaSVAgPSA3XG59XG5leHBvcnQgbmFtZXNwYWNlIEZpbGVUeXBlIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBGaWxlVHlwZVtzdHIgYXMga2V5b2YgdHlwZW9mIEZpbGVUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhGaWxlVHlwZSkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhGaWxlVHlwZSlbdmFsdWVdIGFzIGFueSkgJiZcbiAgICAgICAgdHlwZW9mIE9iamVjdC52YWx1ZXMoRmlsZVR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoRmlsZVR5cGUpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gQ291cG9uVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQ09VUE9OID0gMSxcbiAgICBWT1VDSEVSID0gMixcbiAgICBHSUZUID0gMyxcbiAgICBHSUZUX0NBUkQgPSA0LFxuICAgIEdJRlRfVk9VQ0hFUiA9IDUsXG4gICAgRElTQ09VTlQgPSA2LFxufVxuZXhwb3J0IG5hbWVzcGFjZSBDb3Vwb25UeXBlIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBDb3Vwb25UeXBlW3N0ciBhcyBrZXlvZiB0eXBlb2YgQ291cG9uVHlwZV0gYXMgbnVtYmVyO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoQ291cG9uVHlwZSkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhDb3Vwb25UeXBlKVt2YWx1ZV0gYXMgYW55KSAmJlxuICAgICAgICB0eXBlb2YgT2JqZWN0LnZhbHVlcyhDb3Vwb25UeXBlKVt2YWx1ZV0gIT09ICdmdW5jdGlvbidcbiAgICAgICkge1xuICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKENvdXBvblR5cGUpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gUGF5bWVudFN0YXR1cyB7XG4gIFNUQVRVU19VTktOT1dOID0gMCxcbiAgU1RBVFVTX01FU1NBR0UgPSAxLFxuICBTVEFUVVNfREFUQSA9IDIsXG59XG5leHBvcnQgbmFtZXNwYWNlIFBheW1lbnRTdGF0dXMge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIFBheW1lbnRTdGF0dXNbc3RyIGFzIGtleW9mIHR5cGVvZiBQYXltZW50U3RhdHVzXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQYXltZW50U3RhdHVzKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKFBheW1lbnRTdGF0dXMpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFBheW1lbnRTdGF0dXMpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUGF5bWVudFN0YXR1cylbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBQYXltZW50Q29tbWFuZCB7XG4gIENPTU1BTkRfVU5LTk9XTiA9IDAsXG4gIENPTU1BTkRfUEFZID0gMSxcbiAgQ09NTUFORF9VUERBVEVfQ0FSVCA9IDIsXG4gIENPTU1BTkRfUFJFUEFSRV9QQVlNRU5UID0gMyxcbiAgQ09NTUFORF9SRVBPUlQgPSA0LFxuICBDT01NQU5EX1JFUFJJTlQgPSA1LFxuICBDT01NQU5EX1NUQVRVUyA9IDYsXG59XG5leHBvcnQgbmFtZXNwYWNlIFBheW1lbnRDb21tYW5kIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBQYXltZW50Q29tbWFuZFtzdHIgYXMga2V5b2YgdHlwZW9mIFBheW1lbnRDb21tYW5kXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQYXltZW50Q29tbWFuZCkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhQYXltZW50Q29tbWFuZClbdmFsdWVdIGFzIGFueSkgJiZcbiAgICAgICAgdHlwZW9mIE9iamVjdC52YWx1ZXMoUGF5bWVudENvbW1hbmQpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUGF5bWVudENvbW1hbmQpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gUGF5bWVudEV2ZW50VHlwZSB7XG4gICBFVkVOVF9VTktOT1dOID0gMCxcbiAgIEVWRU5UX1BBWU1FTlQgPSAxLFxuICAgRVZFTlRfSEVBUlRCRUFUID0gMTAsXG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUGF5bWVudEV2ZW50VHlwZSB7XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gUGF5bWVudEV2ZW50VHlwZVtzdHIgYXMga2V5b2YgdHlwZW9mIFBheW1lbnRFdmVudFR5cGVdIGFzIG51bWJlcjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKFBheW1lbnRFdmVudFR5cGUpKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGlzTmFOKE9iamVjdC52YWx1ZXMoUGF5bWVudEV2ZW50VHlwZSlbdmFsdWVdIGFzIGFueSkgJiZcbiAgICAgICAgdHlwZW9mIE9iamVjdC52YWx1ZXMoUGF5bWVudEV2ZW50VHlwZSlbdmFsdWVdICE9PSAnZnVuY3Rpb24nXG4gICAgICApIHtcbiAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhQYXltZW50RXZlbnRUeXBlKVt2YWx1ZV0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbmV4cG9ydCBlbnVtIFBvc0V2ZW50VHlwZSB7XG4gIFVOS05PV04gPSAwLFxuICBDSEVDS09VVCA9IDEsXG4gIFBBWU1FTlQgPSAyLFxufVxuZXhwb3J0IG5hbWVzcGFjZSBQb3NFdmVudFR5cGUge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIFBvc0V2ZW50VHlwZVtzdHIgYXMga2V5b2YgdHlwZW9mIFBvc0V2ZW50VHlwZV0gYXMgbnVtYmVyO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoUG9zRXZlbnRUeXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKFBvc0V2ZW50VHlwZSlbdmFsdWVdIGFzIGFueSkgJiZcbiAgICAgICAgdHlwZW9mIE9iamVjdC52YWx1ZXMoUG9zRXZlbnRUeXBlKVt2YWx1ZV0gIT09ICdmdW5jdGlvbidcbiAgICAgICkge1xuICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKFBvc0V2ZW50VHlwZSlbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuIl19
|
|
722
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYXB0dXJlaWQtZGF0YXR5cGVzL3NyYy9saWIvZW51bXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFOLElBQVksUUFxR1g7QUFyR0QsV0FBWSxRQUFRO0lBQ2xCLDZDQUFXLENBQUE7SUFDWCxtREFBYyxDQUFBO0lBQ2QsMkNBQVUsQ0FBQTtJQUNWLHlDQUFTLENBQUE7SUFDVCw2Q0FBVyxDQUFBO0lBQ1gsK0NBQVksQ0FBQTtJQUNaLDZDQUFXLENBQUE7SUFDWCw2Q0FBVyxDQUFBO0lBQ1gseUNBQVMsQ0FBQTtJQUNULHlDQUFTLENBQUE7SUFDVCxvREFBZSxDQUFBO0lBQ2Ysa0VBQXNCLENBQUE7SUFDdEIsd0NBQVMsQ0FBQTtJQUNULDREQUFtQixDQUFBO0lBQ25CLHdEQUFpQixDQUFBO0lBQ2pCLDRDQUFXLENBQUE7SUFDWCxnRUFBcUIsQ0FBQTtJQUNyQixzRUFBd0IsQ0FBQTtJQUN4Qix3Q0FBUyxDQUFBO0lBQ1QsOENBQVksQ0FBQTtJQUNaLGdEQUFhLENBQUE7SUFDYixzREFBZ0IsQ0FBQTtJQUNoQixvREFBZSxDQUFBO0lBQ2YsNENBQVcsQ0FBQTtJQUNYLDhEQUFvQixDQUFBO0lBQ3BCLDhDQUFZLENBQUE7SUFDWixrRUFBc0IsQ0FBQTtJQUN0QixzREFBZ0IsQ0FBQTtJQUNoQiw0Q0FBVyxDQUFBO0lBQ1gsOENBQVksQ0FBQTtJQUNaLDBDQUFVLENBQUE7SUFDVix3REFBaUIsQ0FBQTtJQUNqQiw0Q0FBVyxDQUFBO0lBQ1gsa0RBQWMsQ0FBQTtJQUNkLGdEQUFhLENBQUE7SUFDYiw0REFBbUIsQ0FBQTtJQUNuQiwwQ0FBVSxDQUFBO0lBQ1Ysa0RBQWMsQ0FBQTtJQUNkLDhDQUFZLENBQUE7SUFDWixnREFBYSxDQUFBO0lBQ2IsOENBQVksQ0FBQTtJQUNaLHdEQUFpQixDQUFBO0lBQ2pCLGtEQUFjLENBQUE7SUFD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QkFBTSxTQVdyQixDQUFBO0FBQ0gsQ0FBQyxFQWhCZ0IsWUFBWSxLQUFaLFlBQVksUUFnQjVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FwdHVyZWlkRGF0YXR5cGVzQ29tcG9uZW50IH0gZnJvbSAnLi9jYXB0dXJlaWQtZGF0YXR5cGVzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBWQVQgfSBmcm9tICcuL21vZGVsL2NvbW1vbi90YXhlcyc7XG5leHBvcnQgZW51bSBEYXRhVHlwZSB7XG4gIFVOS05PV04gPSAwLFxuICBOQVZJR0FUSU9OID0gMSxcbiAgU1lTVEVNID0gMixcbiAgTEFCRUwgPSAzLFxuICBORVRXT1JLID0gNCxcbiAgRElTQ09WRVIgPSA1LFxuICBQUklOVEVSID0gNixcbiAgUFJPRklMRSA9IDcsXG4gIENIQVJUID0gOCxcbiAgUVVFVUUgPSA5LFxuICBMQUJFTFBSSU5UID0gMTAsXG4gIFBST0ZJTEUyQ09OVEFJTkVSID0gMTEsXG4gIFVTRVIgPSAxMixcbiAgQVVUSEVOVElDQVRJT04gPSAxMyxcbiAgVVNFUkVYVEVOREVEID0gMTQsXG4gIE1PRFVMRSA9IDE1LFxuICBQUk9EVUNUX0NBVEVHT1JZID0gMTYsXG4gIFBST0RVQ1RfU1VCQ0FURUdPUlkgPSAxNyxcbiAgSVRFTSA9IDE4LFxuICBBRERSRVNTID0gMTksXG4gIExPQ0FUSU9OID0gMjAsXG4gIEFDQ0VTU1BPSU5UID0gMjEsXG4gIFNIRUxGTEFCRUwgPSAyMixcbiAgVkVORE9SID0gMjMsXG4gIFBBWU1FTlRURVJNSU5BTCA9IDI0LFxuICBFU0xQT09MID0gMjUsXG4gIFZFUklGSUNBVElPTlRPS0VOID0gMjYsXG4gIFVTRVJQUk9GSUxFID0gMjcsXG4gIENMSUVOVCA9IDI4LFxuICBMSUNFTlNFID0gMjksXG4gIElNQUdFID0gMzAsXG4gIE1BTlVGQUNUVVJFUiA9IDMxLFxuICBSQVRJTkcgPSAzMixcbiAgUEFDS0FHSU5HID0gMzMsXG4gIENVUlJFTkNZID0gMzQsXG4gIElURU1QUk9QRVJUSUVTID0gMzUsXG4gIFNUT0NLID0gMzYsXG4gIElOVkVOVE9SWSA9IDM3LFxuICBDT1VOVFJZID0gMzgsXG4gIEJVSUxESU5HID0gMzksXG4gIENPTVBBTlkgPSA0MCxcbiAgSVRFTVBST1BFUlRZID0gNDEsXG4gIERJTUVOU0lPTiA9IDQyLFxuICBTSEVMRiA9IDQzLFxuICBQVVJDSEFTRVBSSUNFID0gNDQsXG4gIFNFTExJTkdQUklDRSA9IDQ1LFxuICBGTE9PUiA9IDQ2LFxuICBST09NID0gNDcsXG4gIExFVkVMID0gNDgsXG4gIFNQQUNFID0gNDksXG4gIEJPT0tJTkcgPSA1MCxcbiAgR1BJTyA9IDUxLFxuICBJVEVNREVUQUlMID0gNTIsXG4gIEVTTEFTU09DSUFUSU9OID0gNTMsXG4gIEVTTFVQREFURSA9IDU0LFxuICBNRVNTQUdFID0gNTUsXG4gIEVTTFRFTVBMQVRFID0gNTYsXG4gIElURU1TSE9SVCA9IDU3LFxuICBDQVJUID0gNTgsXG4gIFBBWU1FTlQgPSA1OSxcbiAgTE9HRU5UUlkgPSA2MCxcbiAgU1RBVElTVElDID0gNjEsXG4gIFJPTEUgPSA2MixcbiAgVVNFUkFDQ0VTUyA9IDYzLFxuICBSRVNPVVJDRSA9IDY0LFxuICBNRU5VID0gNjUsXG4gIENPVVBPTiA9IDY2LFxuICBCT04gPSA2NyxcbiAgRU5ET0ZEQVlCT04gPSA2OCxcbiAgUFJPUEVSVFlOQU1FUyA9IDY5LFxuICBDQVRFR09SWU5BTUVTID0gNzAsXG4gIElURU1HUk9VUCA9IDcxLFxuICBWQVQgPSA3MixcbiAgSU1QT1JUID0gNzMsXG4gIFNVUFBMSUVSID0gNzQsXG4gIEZBUSA9IDc1LFxuICBDSEFUID0gNzYsXG4gIEZBUk1JTkdNRVRIT0QgPSA3NyxcbiAgVElDS0VUID0gNzgsXG4gIFRJQ0tFVE1FU1NBR0UgPSA3OSxcbiAgV0VCVEVNUExBVEUgPSA4MCxcbiAgRU1BSUxURU1QTEFURSA9IDgxLFxuICBKT1VSTkFMID0gODIsXG4gIEZJTEVJTVBPUlQgPSA4MyxcbiAgQlVJTERJTkdBQ0NFU1MgPSA4NCxcbiAgVE9QSUMgPSA4NSxcbiAgU1VCU0NSSVBUSU9OID0gODYsXG4gIE5PVElGSUNBVElPTiA9IDg3LFxuICBDQU1QQUlHTiA9IDg4LFxuICBBRFZFUlRJU0VNRU5UID0gODksXG4gIFJFQUxUSU1FU1VCU0NSSVBUSU9OID0gOTAsXG4gIFNUT1JFID0gOTEsXG4gIENBTEVOREFSID0gOTIsXG4gIFRFTkFOVCA9IDkzLFxuICBQQVlNRU5UVEVSTUlOQUxTSE9SVCA9IDk0LFxuICBTVE9SRUlORk9STUFUSU9OID0gOTUsXG4gIFBPU1RFUk1JTkFMID0gOTYsXG4gIE1BTkFHRU1FTlQgPSA5NyxcbiAgQUREUkVTU1RZUEUgPSA5OCxcbiAgQUREUkVTU1RPQ09NUEFOWSA9IDk5LFxufVxuXG5leHBvcnQgZW51bSBCb29raW5nVHlwZSB7XG4gIFVOS05PV04gPSAwLFxuICBJTkNPTUlORyA9IDEsIC8vV2FyZW5laW5nYW5nXG4gIE9VVEdPSU5HID0gMiwgLy9XYXJlbmF1c2dhbmdcblxuICBTVE9SRUFDQ0VTUyA9IDgsIC8vWnVnYW5nIHp1bSBWZXJrYXVmIChUw7xyw7ZmZm5lcilcbiAgU1RPUkVFWElUID0gOSwgLy9WZXJsYXNzZW4gZGVzIEdlc2Now6RmdHMgKFTDvHLDtmZmbmVyKVxuXG4gIFBST01PVElPTiA9IDExLCAvL1dlcmJlYWt0aW9uXG5cbiAgTUFSS0RPV04gPSAyMSwgLy9QcmVpc3JlZHV6aWVydW5nXG4gIE1BUktVUCA9IDIyLCAvL1ByZWlzZXJow7ZodW5nXG5cbiAgU1RPQ0tNT1ZFID0gMzEsIC8vTGFnZXJiZXdlZ3VuZ1xuICBTVE9DS0FERCA9IDMyLCAvL0xhZ2VyenVnYW5nXG4gIFNUT0NLUkVNT1ZFID0gMzMsIC8vTGFnZXJhYmdhbmdcblxuICBTRUxMSU5HQUREID0gNDEsIC8vVmVya2F1ZlxuICBTRUxMSU5HUkVNT1ZFID0gNDIsIC8vU3Rvcm5vXG4gIFNFTExJTkdVUERBVEUgPSA0MywgLy/DhG5kZXJ1bmdcblxuICBTVE9SRVRSQU5TRkVSID0gNTEsIC8vTGFnZXJ0cmFuc2ZlclxuICBSRVNFUlZBVElPTiA9IDUyLCAvL1Jlc2VydmllcnVuZ1xuICBPUkRFUiA9IDUzLCAvL0Jlc3RlbGx1bmdcbiAgUkVUVVJOID0gNTQsIC8vUsO8Y2tzZW5kdW5nXG5cbiAgU1RPQ0tUQUtFID0gNjEsIC8vSW52ZW50dXJcbiAgU1RPQ0tDT1JSRUNUSU9OID0gNjIsIC8vQmVzdGFuZHNrb3JyZWt0dXJcbiAgU1RPQ0tBREpVU1RNRU5UID0gNjMsIC8vQmVzdGFuZHNhbnBhc3N1bmdcbiAgU1RPQ0tDSEVDSyA9IDY0LCAvL0Jlc3RhbmRzcHLDvGZ1bmdcblxuICBEQU1BR0VEID0gNzEsIC8vQmVzY2jDpGRpZ3VuZ1xuICBMT1NUID0gNzIsIC8vVmVybHVzdFxuICBFWFBJUkVEID0gNzMsIC8vVmVyZmFsbFxuXG4gIERFTElWRVJZID0gODEsIC8vTGllZmVydW5nXG4gIFBJQ0tVUCA9IDgyLCAvL0FiaG9sdW5nXG4gIFNISVBQSU5HID0gODMsIC8vVmVyc2FuZFxuXG4gIFNVQlNDUklQVElPTiA9IDkxLCAvL0Fib25uZW1lbnRcbiAgSU5WT0lDRSA9IDkyLCAvL1JlY2hudW5nXG4gIFBBWU1FTlQgPSA5MywgLy9aYWhsdW5nXG4gIFJFRlVORCA9IDk0LCAvL1LDvGNrZXJzdGF0dHVuZ1xuXG4gIERPTkFUSU9OID0gMTAxLCAvL1NwZW5kZVxuXG4gIEdJRlQgPSAxMTEsIC8vR2VzY2hlbmtcbiAgR0lGVENBUkQgPSAxMTIsIC8vR2VzY2hlbmtrYXJ0ZVxuICBHSUZUVk9VQ0hFUiA9IDExMywgLy9HdXRzY2hlaW5cblxuICBTQ0FOID0gMTIxLFxuICBDQVJUQUREID0gMTIyLCAvL1dhcmVua29yYnp1c2NobGFnXG4gIENBUlRSRU1PVkUgPSAxMjMsIC8vV2FyZW5rb3JiYWJ6dWdcbiAgQ0FSVFVQREFURSA9IDEyNCwgLy9XYXJlbmtvcmJhbnBhc3N1bmdcbiAgQ0FSVEZJTkFMSVpFID0gMTI1LCAvL1dhcmVua29yYmFic2NobHVzc1xuICBDQVJUQ0FOQ0VMID0gMTI2LCAvL1dhcmVua29yYnN0b3JuaWVydW5nXG59XG5cbmV4cG9ydCBlbnVtIENhbGVuZGFyVHlwZSB7XG4gIENBTEVOREFSX1VOS05PV04gPSAwLFxuICBDQUxFTkRBUl9DQU1QQUlHTiA9IDEsXG59XG5cbmV4cG9ydCBlbnVtIE9wZXJhdG9ycyB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQU5EID0gMSxcbiAgICBPUiA9IDIsXG59XG5cbmV4cG9ydCBlbnVtIEltYWdlVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQVZBVEFSID0gMSxcbiAgICBJVEVNID0gMixcbiAgICBBRFZFUlRJU0VNRU5UID0gMyxcbiAgICBCVUlMRElORyA9IDQsXG4gICAgQ1VTVE9NID0gNSxcbn1cblxuZXhwb3J0IGVudW0gRGF0YWJhc2VFdmVudFR5cGUge1xuICAgIEVWRU5UX1VOS05PV04gPSAwLFxuICAgIEVWRU5UX0FEREVEID0gMSxcbiAgICBFVkVOVF9VUERBVEVEID0gMixcbiAgICBFVkVOVF9ERUxFVEVEID0gM1xufVxuXG5leHBvcnQgZW51bSBFTWFpbFRlbXBsYXRlVHlwZSB7XG4gICAgV0VMQ09NRSA9IDAsXG4gICAgUkVHQ09ORklSTSA9IDEsXG4gICAgUkVTRVRQQVNTV09SRCA9IDJcbn1cblxuZXhwb3J0IGVudW0gV2ViVGVtcGxhdGVUeXBlIHtcbiAgICBIT01FUEFHRSA9IDAsXG4gICAgV0VMQ09NRVBBR0UgPSAxLFxuICAgIENPTkZJUk1QQUdFID0gMlxufVxuXG5leHBvcnQgZW51bSBQYXltZW50U3RhdGUge1xuICAgIFVOS05PV04gPSAwLFxuICAgIFBFTkRJTkcgPSAxLFxuICAgIENPTVBMRVRFRCA9IDIsXG4gICAgRkFJTEVEID0gMyxcbiAgICBSRUZVTkRFRCA9IDQsXG4gICAgQ0FOQ0VMTEVEID0gNSxcbiAgICBQQVJUSUFMX1JFRlVORCA9IDYsXG4gICAgUEFSVElBTF9QQVlNRU5UID0gNyxcbiAgICBBVVRIT1JJWkVEID0gOCxcbiAgICBERUNMSU5FRCA9IDksXG4gICAgUFJPQ0VTU0lORyA9IDEwLFxufVxuXG5leHBvcnQgZW51bSBQaW5TdGF0ZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgTE9XID0gMSxcbiAgICBISUdIID0gMlxufVxuZXhwb3J0IG5hbWVzcGFjZSBQaW5TdGF0ZSB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gUGluU3RhdGVbc3RyIGFzIGtleW9mIHR5cGVvZiBQaW5TdGF0ZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQaW5TdGF0ZSkpIHtcbiAgICAgICAgICAgIGlmKGlzTmFOKE9iamVjdC52YWx1ZXMoUGluU3RhdGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKFBpblN0YXRlKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhQaW5TdGF0ZSlbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gTW9kdWxlVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQUlfTU9EVUxFID0gMSxcbiAgICBQQVlNRU5UX01PRFVMRSA9IDIsXG4gICAgUkZJRF9NT0RVTEUgPSAzLFxuICAgIEVTTF9NT0RVTEUgPSA0LFxuICAgIERCMl9NT0RVTEUgPSA1LFxuICAgIE1PTkdPREJfTU9EVUxFID0gNixcbiAgICBQT1NUR1JFU19NT0RVTEUgPSA3LFxuICAgIEFVVEhFTlRJQ0FUSU9OX01PRFVMRSA9IDgsXG4gICAgR0FURVdBWV9NT0RVTEUgPSA5LFxuICAgIFBSSU5UX01PRFVMRSA9IDEwLFxuICAgIFJFR0lTVFJZX01PRFVMRSA9IDExLFxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE1vZHVsZVR5cGUge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIE1vZHVsZVR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBNb2R1bGVUeXBlXSBhcyBudW1iZXI7XG4gICAgfVxuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgICAgIGZvcihjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpW3ZhbHVlXSkgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKE1vZHVsZVR5cGUpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFJUU3RhdGVFdmVudFR5cGUge1xuICAgIEVWRU5UX1VOS05PV04gPSAwLFxuICAgIEVWRU5UX1NUT1JFID0gMSxcbiAgICBFVkVOVF9VU0VSID0gMlxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFJUU3RhdGVFdmVudFR5cGUge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIFJUU3RhdGVFdmVudFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBSVFN0YXRlRXZlbnRUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhSVFN0YXRlRXZlbnRUeXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKFJUU3RhdGVFdmVudFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFJUU3RhdGVFdmVudFR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUlRTdGF0ZUV2ZW50VHlwZSlbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBSZWdpc3RyYXRpb25TdGF0ZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgUkVRVUVTVEVEID0gMSxcbiAgICBPVFBDT01QTEVURSA9IDIsXG4gICAgQ09ORklSTUVEID0gMyxcbiAgICBBU1NPQ0lBVEVEID0gNCxcbiAgICBDT01QTEVURUQgPSA1XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUmVnaXN0cmF0aW9uU3RhdGUge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFJlZ2lzdHJhdGlvblN0YXRlW3N0ciBhcyBrZXlvZiB0eXBlb2YgUmVnaXN0cmF0aW9uU3RhdGVdIGFzIG51bWJlcjtcbiAgICB9XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICAgICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICAgICAgZm9yKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoUmVnaXN0cmF0aW9uU3RhdGUpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFJlZ2lzdHJhdGlvblN0YXRlKVt2YWx1ZV0gYXMgYW55KSAmJiB0eXBlb2YoT2JqZWN0LnZhbHVlcyhSZWdpc3RyYXRpb25TdGF0ZSlbdmFsdWVdKSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUmVnaXN0cmF0aW9uU3RhdGUpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFByaW50ZXJMYW5ndWFnZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgU0JQTCA9IDEsXG4gICAgU1BPUyA9IDIsXG4gICAgU0NQQ0wgPSAzLFxuICAgIFNaUEwgPSA0LFxuICAgIFNEUEwgPSA1LFxuICAgIFNJUEwgPSA2LFxuICAgIFNUUENMID0gNyxcbiAgICBaUEwgPSA4LFxuICAgIENaUEwgPSA5LFxuICAgIEZJTkdFUlBSSU5UID0gMTAsXG4gICAgRFAgPSAxMSxcbiAgICBTTENTID0gMTJcbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQcmludGVyTGFuZ3VhZ2Uge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFByaW50ZXJMYW5ndWFnZVtzdHIgYXMga2V5b2YgdHlwZW9mIFByaW50ZXJMYW5ndWFnZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQcmludGVyTGFuZ3VhZ2UpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFByaW50ZXJMYW5ndWFnZSlbdmFsdWVdIGFzIGFueSkgJiYgdHlwZW9mKE9iamVjdC52YWx1ZXMoUHJpbnRlckxhbmd1YWdlKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhQcmludGVyTGFuZ3VhZ2UpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFByaW50ZXJNYW51ZmFjdHVyZXIge1xuICAgIFVOS05PV04gPSAwLFxuICAgIENJVElaRU4gPSAxLFxuICAgIEJJWE9MT04gPSAyLFxuICAgIEJST1RIRVIgPSAzLFxuICAgIEVTQ1BPUyA9IDQsXG4gICAgR09PSlBSVCA9IDUsXG4gICAgSE9ORVlXRUxMID0gNixcbiAgICBTQVRPID0gNyxcbiAgICBaRUJSQSA9IDggICAgXG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUHJpbnRlck1hbnVmYWN0dXJlciB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gUHJpbnRlck1hbnVmYWN0dXJlcltzdHIgYXMga2V5b2YgdHlwZW9mIFByaW50ZXJNYW51ZmFjdHVyZXJdIGFzIG51bWJlcjtcbiAgICB9XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICAgICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICAgICAgZm9yKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcikpIHtcbiAgICAgICAgICAgIGlmKGlzTmFOKE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcilbdmFsdWVdIGFzIGFueSkgJiYgdHlwZW9mKE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcilbdmFsdWVdKSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUHJpbnRlck1hbnVmYWN0dXJlcilbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gVW5pdCB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgTU0gPSAxLFxuICAgIENNID0gMixcbiAgICBNID0gMyxcbiAgICBJTkNIID0gNCxcbiAgICBGT09UID0gNSxcbiAgICBQSUVDRSA9IDYsXG4gICAgS0cgPSA3LFxuICAgIEdSQU1NID0gOCxcbiAgICBNSUxMSUdSQU1NID0gOSwgXG59XG5leHBvcnQgbmFtZXNwYWNlIFVuaXQge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFVuaXRbc3RyIGFzIGtleW9mIHR5cGVvZiBVbml0XSBhcyBudW1iZXI7XG4gICAgfVxuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgICAgIGZvcihjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKFVuaXQpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFVuaXQpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKFVuaXQpW3ZhbHVlXSkgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKFVuaXQpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIFNldmVyaXR5IHtcblx0VU5LTk9XTiA9IDAsXG5cdEVNRVJHRU5DWSA9IDEsXG5cdEFMRVJUID0gMixcblx0Q1JJVElDQUwgPSAzLFxuXHRFUlJPUiA9IDQsXG5cdFdBUk5JTkcgPSA1LFxuXHROT1RJQ0UgPSA2LFxuXHRJTkZPUk1BVElPTiA9IDcsXG5cdERFQlVHID0gOCxcbn1cbmV4cG9ydCBuYW1lc3BhY2UgU2V2ZXJpdHkge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFNldmVyaXR5W3N0ciBhcyBrZXlvZiB0eXBlb2YgU2V2ZXJpdHldIGFzIG51bWJlcjtcbiAgICB9XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICAgICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICAgICAgZm9yKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoU2V2ZXJpdHkpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFNldmVyaXR5KVt2YWx1ZV0gYXMgYW55KSAmJiB0eXBlb2YoT2JqZWN0LnZhbHVlcyhTZXZlcml0eSlbdmFsdWVdKSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoU2V2ZXJpdHkpW3ZhbHVlXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbmV4cG9ydCBlbnVtIE1lc3NhZ2VUeXBlIHtcbiAgICBVTktOT1dOID0gMCxcbiAgICBFUlJPUiA9IDEsXG4gICAgTk9USUZJQ0FUSU9OID0gMixcbiAgICBFWENFUFRJT04gPSAzLFxufVxuZXhwb3J0IG5hbWVzcGFjZSBNZXNzYWdlVHlwZSB7XG4gICAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gTWVzc2FnZVR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBNZXNzYWdlVHlwZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhNZXNzYWdlVHlwZSkpIHtcbiAgICAgICAgICAgIGlmKGlzTmFOKE9iamVjdC52YWx1ZXMoTWVzc2FnZVR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZihPYmplY3QudmFsdWVzKE1lc3NhZ2VUeXBlKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhNZXNzYWdlVHlwZSlbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gQXR0YWNobWVudFR5cGUge1xuICBVTktOT1dOID0gMCxcbiAgREFUQUZJTEUgPSAxLFxuICBURVhURklMRSA9IDIsXG4gIElNQUdFRklMRSA9IDMsXG4gIEFVRElPRklMRSA9IDQsXG4gIFZJREVPRklMRSA9IDUsXG4gIFBERkZJTEUgPSA2LFxufVxuZXhwb3J0IG5hbWVzcGFjZSBBdHRhY2htZW50VHlwZSB7XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gQXR0YWNobWVudFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBBdHRhY2htZW50VHlwZV0gYXMgbnVtYmVyO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoQXR0YWNobWVudFR5cGUpKSB7XG4gICAgICBpZiAoXG4gICAgICAgIGlzTmFOKE9iamVjdC52YWx1ZXMoQXR0YWNobWVudFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKEF0dGFjaG1lbnRUeXBlKVt2YWx1ZV0gIT09ICdmdW5jdGlvbidcbiAgICAgICkge1xuICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKEF0dGFjaG1lbnRUeXBlKVt2YWx1ZV0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzO1xuICB9XG59XG5cbmV4cG9ydCBlbnVtIFN0YXR1cyB7XG4gICAgU1VDQ0VTUyA9IDAsXG4gICAgRVJST1IgPSAxLFxuICAgIElOQUNUSVZFID0gMixcbiAgICBERUxFVEVEID0gMyxcbiAgICBMT0NLRUQgPSA0LFxuICAgIFVOTE9DS0VEID0gNSxcbiAgICBQRU5ESU5HID0gNixcbiAgICBBQk9SVEVEID0gNyxcbiAgICBUSU1FT1VUID0gOCxcbiAgICBDT05ORUNURUQgPSA5LFxuICAgIFVOS05PV04gPSA5OVxufVxuZXhwb3J0IG5hbWVzcGFjZSBTdGF0dXMge1xuICAgIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZU9mKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIFN0YXR1c1tzdHIgYXMga2V5b2YgdHlwZW9mIFN0YXR1c10gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhTdGF0dXMpKSB7XG4gICAgICAgICAgICBpZihpc05hTihPYmplY3QudmFsdWVzKFN0YXR1cylbdmFsdWVdIGFzIGFueSkgJiYgdHlwZW9mKE9iamVjdC52YWx1ZXMoU3RhdHVzKVt2YWx1ZV0pICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKFN0YXR1cylbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gVGlja2V0U3RhdHVzIHtcbiAgT1BFTiA9IDEsXG4gIENMT1NFID0gMixcbiAgSU5XT1JLID0gMyxcbn1cbmV4cG9ydCBuYW1lc3BhY2UgVGlja2V0U3RhdHVzIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBUaWNrZXRTdGF0dXNbc3RyIGFzIGtleW9mIHR5cGVvZiBUaWNrZXRTdGF0dXNdIGFzIG51bWJlcjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKFRpY2tldFN0YXR1cykpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhUaWNrZXRTdGF0dXMpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFRpY2tldFN0YXR1cylbdmFsdWVdICE9PSAnZnVuY3Rpb24nXG4gICAgICApIHtcbiAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhUaWNrZXRTdGF0dXMpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gVGlja2V0U2VuZGVyVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgVVNFUiA9IDEsXG4gICAgQURNSU4gPSAyLFxufVxuZXhwb3J0IG5hbWVzcGFjZSBUaWNrZXRTZW5kZXJUeXBlIHtcbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBUaWNrZXRTZW5kZXJUeXBlW3N0ciBhcyBrZXlvZiB0eXBlb2YgVGlja2V0U2VuZGVyVHlwZV0gYXMgbnVtYmVyO1xuICAgIH1cbiAgICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgICAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgICAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoVGlja2V0U2VuZGVyVHlwZSkpIHtcbiAgICAgICAgICAgIGlmIChpc05hTihPYmplY3QudmFsdWVzKFRpY2tldFNlbmRlclR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmIHR5cGVvZiBPYmplY3QudmFsdWVzKFRpY2tldFNlbmRlclR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoVGlja2V0U2VuZGVyVHlwZSlbdmFsdWVdKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuZXhwb3J0IGVudW0gSW1wb3J0VHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgVEVSTUlOQUwgPSAxLFxuICAgIEVTTCA9IDIsXG4gICAgRVNMUE9PTCA9IDMsXG59XG5leHBvcnQgbmFtZXNwYWNlIEltcG9ydFR5cGUge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIEltcG9ydFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBJbXBvcnRUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhJbXBvcnRUeXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKEltcG9ydFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKEltcG9ydFR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoSW1wb3J0VHlwZSlbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBGaWxlVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQ1NWID0gMSxcbiAgICBYTFNYID0gMixcbiAgICBYTUwgPSAzLFxuICAgIEpTT04gPSA0LFxuICAgIFBERiA9IDUsXG4gICAgVFhUID0gNixcbiAgICBaSVAgPSA3XG59XG5leHBvcnQgbmFtZXNwYWNlIEZpbGVUeXBlIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBGaWxlVHlwZVtzdHIgYXMga2V5b2YgdHlwZW9mIEZpbGVUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhGaWxlVHlwZSkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhGaWxlVHlwZSlbdmFsdWVdIGFzIGFueSkgJiZcbiAgICAgICAgdHlwZW9mIE9iamVjdC52YWx1ZXMoRmlsZVR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoRmlsZVR5cGUpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gQ291cG9uVHlwZSB7XG4gICAgVU5LTk9XTiA9IDAsXG4gICAgQ09VUE9OID0gMSxcbiAgICBWT1VDSEVSID0gMixcbiAgICBHSUZUID0gMyxcbiAgICBHSUZUX0NBUkQgPSA0LFxuICAgIEdJRlRfVk9VQ0hFUiA9IDUsXG4gICAgRElTQ09VTlQgPSA2LFxufVxuZXhwb3J0IG5hbWVzcGFjZSBDb3Vwb25UeXBlIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBDb3Vwb25UeXBlW3N0ciBhcyBrZXlvZiB0eXBlb2YgQ291cG9uVHlwZV0gYXMgbnVtYmVyO1xuICB9XG4gIGV4cG9ydCBmdW5jdGlvbiB2YWx1ZXMoKSB7XG4gICAgbGV0IHJlczogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHZhbHVlIGluIE9iamVjdC52YWx1ZXMoQ291cG9uVHlwZSkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhDb3Vwb25UeXBlKVt2YWx1ZV0gYXMgYW55KSAmJlxuICAgICAgICB0eXBlb2YgT2JqZWN0LnZhbHVlcyhDb3Vwb25UeXBlKVt2YWx1ZV0gIT09ICdmdW5jdGlvbidcbiAgICAgICkge1xuICAgICAgICByZXMucHVzaChPYmplY3QudmFsdWVzKENvdXBvblR5cGUpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gUGF5bWVudFN0YXR1cyB7XG4gIFNUQVRVU19VTktOT1dOID0gMCxcbiAgU1RBVFVTX01FU1NBR0UgPSAxLFxuICBTVEFUVVNfREFUQSA9IDIsXG59XG5leHBvcnQgbmFtZXNwYWNlIFBheW1lbnRTdGF0dXMge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIFBheW1lbnRTdGF0dXNbc3RyIGFzIGtleW9mIHR5cGVvZiBQYXltZW50U3RhdHVzXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQYXltZW50U3RhdHVzKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKFBheW1lbnRTdGF0dXMpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFBheW1lbnRTdGF0dXMpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUGF5bWVudFN0YXR1cylbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBQYXltZW50Q29tbWFuZCB7XG4gIENPTU1BTkRfVU5LTk9XTiA9IDAsXG4gIENPTU1BTkRfUEFZID0gMSxcbiAgQ09NTUFORF9VUERBVEVfQ0FSVCA9IDIsXG4gIENPTU1BTkRfUFJFUEFSRV9QQVlNRU5UID0gMyxcbiAgQ09NTUFORF9SRVBPUlQgPSA0LFxuICBDT01NQU5EX1JFUFJJTlQgPSA1LFxuICBDT01NQU5EX1NUQVRVUyA9IDYsXG59XG5leHBvcnQgbmFtZXNwYWNlIFBheW1lbnRDb21tYW5kIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBQYXltZW50Q29tbWFuZFtzdHIgYXMga2V5b2YgdHlwZW9mIFBheW1lbnRDb21tYW5kXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQYXltZW50Q29tbWFuZCkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhQYXltZW50Q29tbWFuZClbdmFsdWVdIGFzIGFueSkgJiZcbiAgICAgICAgdHlwZW9mIE9iamVjdC52YWx1ZXMoUGF5bWVudENvbW1hbmQpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUGF5bWVudENvbW1hbmQpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cblxuZXhwb3J0IGVudW0gUGF5bWVudEV2ZW50VHlwZSB7XG4gICBFVkVOVF9VTktOT1dOID0gMCxcbiAgIEVWRU5UX1BBWU1FTlQgPSAxLFxuICAgRVZFTlRfRU5ET0ZEQVkgPSAyLFxuICAgRVZFTlRfU1RBVFVTID0gMyxcbiAgIEVWRU5UX0hFQVJUQkVBVCA9IDEwLFxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFBheW1lbnRFdmVudFR5cGUge1xuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVPZihzdHI6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIFBheW1lbnRFdmVudFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBQYXltZW50RXZlbnRUeXBlXSBhcyBudW1iZXI7XG4gIH1cbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlcygpIHtcbiAgICBsZXQgcmVzOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgdmFsdWUgaW4gT2JqZWN0LnZhbHVlcyhQYXltZW50RXZlbnRUeXBlKSkge1xuICAgICAgaWYgKFxuICAgICAgICBpc05hTihPYmplY3QudmFsdWVzKFBheW1lbnRFdmVudFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFBheW1lbnRFdmVudFR5cGUpW3ZhbHVlXSAhPT0gJ2Z1bmN0aW9uJ1xuICAgICAgKSB7XG4gICAgICAgIHJlcy5wdXNoKE9iamVjdC52YWx1ZXMoUGF5bWVudEV2ZW50VHlwZSlbdmFsdWVdKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlcztcbiAgfVxufVxuXG5leHBvcnQgZW51bSBQb3NFdmVudFR5cGUge1xuICBVTktOT1dOID0gMCxcbiAgQ0hFQ0tPVVQgPSAxLFxuICBQQVlNRU5UID0gMixcbn1cbmV4cG9ydCBuYW1lc3BhY2UgUG9zRXZlbnRUeXBlIHtcbiAgZXhwb3J0IGZ1bmN0aW9uIHZhbHVlT2Yoc3RyOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIHJldHVybiBQb3NFdmVudFR5cGVbc3RyIGFzIGtleW9mIHR5cGVvZiBQb3NFdmVudFR5cGVdIGFzIG51bWJlcjtcbiAgfVxuICBleHBvcnQgZnVuY3Rpb24gdmFsdWVzKCkge1xuICAgIGxldCByZXM6IGFueVtdID0gW107XG4gICAgZm9yIChjb25zdCB2YWx1ZSBpbiBPYmplY3QudmFsdWVzKFBvc0V2ZW50VHlwZSkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgaXNOYU4oT2JqZWN0LnZhbHVlcyhQb3NFdmVudFR5cGUpW3ZhbHVlXSBhcyBhbnkpICYmXG4gICAgICAgIHR5cGVvZiBPYmplY3QudmFsdWVzKFBvc0V2ZW50VHlwZSlbdmFsdWVdICE9PSAnZnVuY3Rpb24nXG4gICAgICApIHtcbiAgICAgICAgcmVzLnB1c2goT2JqZWN0LnZhbHVlcyhQb3NFdmVudFR5cGUpW3ZhbHVlXSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -3,13 +3,13 @@ import { DataType } from "../../enums";
|
|
|
3
3
|
import { DataVersion } from "../data-version";
|
|
4
4
|
const version = new DataVersion(1, 0, 0, 0);
|
|
5
5
|
export class CalendarEntry {
|
|
6
|
-
constructor(id, title, type, description,
|
|
6
|
+
constructor(id, title, type, description, startdate, enddate) {
|
|
7
7
|
this.id = id;
|
|
8
8
|
this.title = title;
|
|
9
9
|
this.type = type;
|
|
10
10
|
this.description = description;
|
|
11
|
-
this.
|
|
12
|
-
this.
|
|
11
|
+
this.startdate = startdate;
|
|
12
|
+
this.enddate = enddate;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
export class CalendarObject extends DataObject {
|
|
@@ -21,4 +21,4 @@ export class CalendarObject extends DataObject {
|
|
|
21
21
|
return this.data.length;
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItb2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FwdHVyZWlkLWRhdGF0eXBlcy9zcmMvbGliL21vZGVsL2NvbW1vbi9jYWxlbmRhci1vYmplY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBZ0IsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5QyxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQWdCLENBQUM7QUFVM0QsTUFBTSxPQUFPLGFBQWE7SUFDdEIsWUFDSSxFQUFXLEVBQ1gsS0FBYyxFQUNkLElBQW1CLEVBQ25CLFdBQW9CLEVBQ3BCLFNBQWdCLEVBQ2hCLE9BQWM7UUFFZCxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUcsQ0FBQztRQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBTSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBVSxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBUSxDQUFDO0lBQzVCLENBQUM7Q0FDSjtBQUtELE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBVTtJQUMxQyxZQUFZLElBQXFCO1FBQzdCLEtBQUssQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRVEsYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzVCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFPYmplY3QgfSBmcm9tIFwiLi4vZGF0YS1vYmplY3RcIjtcbmltcG9ydCB7IENhbGVuZGFyVHlwZSwgRGF0YVR5cGUgfSBmcm9tIFwiLi4vLi4vZW51bXNcIjtcbmltcG9ydCB7IERhdGFWZXJzaW9uIH0gZnJvbSBcIi4uL2RhdGEtdmVyc2lvblwiO1xuXG5jb25zdCB2ZXJzaW9uID0gbmV3IERhdGFWZXJzaW9uKDEsIDAsIDAsIDApIGFzIERhdGFWZXJzaW9uO1xuXG5leHBvcnQgaW50ZXJmYWNlIENhbGVuZGFyRW50cnkge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIHRpdGxlOiBzdHJpbmc7XG4gICAgdHlwZTogQ2FsZW5kYXJUeXBlO1xuICAgIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIHN0YXJ0ZGF0ZTogRGF0ZTtcbiAgICBlbmRkYXRlOiBEYXRlO1xufVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyRW50cnkgaW1wbGVtZW50cyBDYWxlbmRhckVudHJ5IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgaWQ/OiBzdHJpbmcsXG4gICAgICAgIHRpdGxlPzogc3RyaW5nLFxuICAgICAgICB0eXBlPzogQ2FsZW5kYXJUeXBlLFxuICAgICAgICBkZXNjcmlwdGlvbj86IHN0cmluZyxcbiAgICAgICAgc3RhcnRkYXRlPzogRGF0ZSxcbiAgICAgICAgZW5kZGF0ZT86IERhdGVcbiAgICApIHtcbiAgICAgICAgdGhpcy5pZCA9IGlkITtcbiAgICAgICAgdGhpcy50aXRsZSA9IHRpdGxlITtcbiAgICAgICAgdGhpcy50eXBlID0gdHlwZSE7XG4gICAgICAgIHRoaXMuZGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbjtcbiAgICAgICAgdGhpcy5zdGFydGRhdGUgPSBzdGFydGRhdGUhO1xuICAgICAgICB0aGlzLmVuZGRhdGUgPSBlbmRkYXRlITtcbiAgICB9ICAgIFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENhbGVuZGFyT2JqZWN0IHtcbiAgZGF0YTogQ2FsZW5kYXJFbnRyeVtdO1xufVxuZXhwb3J0IGNsYXNzIENhbGVuZGFyT2JqZWN0IGV4dGVuZHMgRGF0YU9iamVjdCBpbXBsZW1lbnRzIENhbGVuZGFyT2JqZWN0IHtcbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBDYWxlbmRhckVudHJ5W10pIHtcbiAgICAgICAgc3VwZXIoJycsIERhdGFUeXBlLkNBTEVOREFSLCB2ZXJzaW9uKTtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBnZXRFbnRyeUNvdW50KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGEubGVuZ3RoO1xuICAgIH1cbn0iXX0=
|
|
@@ -690,6 +690,8 @@ var PaymentEventType;
|
|
|
690
690
|
(function (PaymentEventType) {
|
|
691
691
|
PaymentEventType[PaymentEventType["EVENT_UNKNOWN"] = 0] = "EVENT_UNKNOWN";
|
|
692
692
|
PaymentEventType[PaymentEventType["EVENT_PAYMENT"] = 1] = "EVENT_PAYMENT";
|
|
693
|
+
PaymentEventType[PaymentEventType["EVENT_ENDOFDAY"] = 2] = "EVENT_ENDOFDAY";
|
|
694
|
+
PaymentEventType[PaymentEventType["EVENT_STATUS"] = 3] = "EVENT_STATUS";
|
|
693
695
|
PaymentEventType[PaymentEventType["EVENT_HEARTBEAT"] = 10] = "EVENT_HEARTBEAT";
|
|
694
696
|
})(PaymentEventType || (PaymentEventType = {}));
|
|
695
697
|
(function (PaymentEventType) {
|
|
@@ -1608,13 +1610,13 @@ class StoreInformationObject extends DataObject {
|
|
|
1608
1610
|
|
|
1609
1611
|
const version$z = new DataVersion(1, 0, 0, 0);
|
|
1610
1612
|
class CalendarEntry {
|
|
1611
|
-
constructor(id, title, type, description,
|
|
1613
|
+
constructor(id, title, type, description, startdate, enddate) {
|
|
1612
1614
|
this.id = id;
|
|
1613
1615
|
this.title = title;
|
|
1614
1616
|
this.type = type;
|
|
1615
1617
|
this.description = description;
|
|
1616
|
-
this.
|
|
1617
|
-
this.
|
|
1618
|
+
this.startdate = startdate;
|
|
1619
|
+
this.enddate = enddate;
|
|
1618
1620
|
}
|
|
1619
1621
|
}
|
|
1620
1622
|
class CalendarObject extends DataObject {
|