@po-ui/ng-components 16.0.0-next.1 → 16.0.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,6 +11,8 @@ export var PoDynamicFieldType;
11
11
  PoDynamicFieldType["Boolean"] = "boolean";
12
12
  /** Valor numérico que contém casas decimais e milhar. */
13
13
  PoDynamicFieldType["Currency"] = "currency";
14
+ /** Valor numérico que contém casas decimais e milhar. */
15
+ PoDynamicFieldType["Decimal"] = "decimal";
14
16
  /** Valor para data. */
15
17
  PoDynamicFieldType["Date"] = "date";
16
18
  /** Valor para data e hora. */
@@ -24,4 +26,4 @@ export var PoDynamicFieldType;
24
26
  /** Utilizado para fazer uploads de arquivos. */
25
27
  PoDynamicFieldType["Upload"] = "upload";
26
28
  })(PoDynamicFieldType || (PoDynamicFieldType = {}));
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1maWVsZC10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZpZWxkLXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQU4sSUFBWSxrQkF3Qlg7QUF4QkQsV0FBWSxrQkFBa0I7SUFDNUIsc0JBQXNCO0lBQ3RCLHlDQUFtQixDQUFBO0lBRW5CLHlEQUF5RDtJQUN6RCwyQ0FBcUIsQ0FBQTtJQUVyQix1QkFBdUI7SUFDdkIsbUNBQWEsQ0FBQTtJQUViLDhCQUE4QjtJQUM5QiwyQ0FBcUIsQ0FBQTtJQUVyQiwyQ0FBMkM7SUFDM0MsbUNBQWEsQ0FBQTtJQUViLHNCQUFzQjtJQUN0Qix1Q0FBaUIsQ0FBQTtJQUVqQixhQUFhO0lBQ2IsdUNBQWlCLENBQUE7SUFFakIsZ0RBQWdEO0lBQ2hELHVDQUFpQixDQUFBO0FBQ25CLENBQUMsRUF4Qlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQXdCN0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQHVzZWRCeSBQb0R5bmFtaWNGb3JtQ29tcG9uZW50XHJcbiAqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKlxyXG4gKiBFbnVtIHBhcmEgZGVmaW5pw6fDo28gZG8gdGlwbyBkZSBjYW1wbyBxdWUgc2Vyw6EgY3JpYWRvIGRpbmFtaWNhbWVudGUuXHJcbiAqL1xyXG5leHBvcnQgZW51bSBQb0R5bmFtaWNGaWVsZFR5cGUge1xyXG4gIC8qKiBWYWxvciBib29sZWFuby4gKi9cclxuICBCb29sZWFuID0gJ2Jvb2xlYW4nLFxyXG5cclxuICAvKiogVmFsb3IgbnVtw6lyaWNvIHF1ZSBjb250w6ltIGNhc2FzIGRlY2ltYWlzIGUgbWlsaGFyLiAqL1xyXG4gIEN1cnJlbmN5ID0gJ2N1cnJlbmN5JyxcclxuXHJcbiAgLyoqIFZhbG9yIHBhcmEgZGF0YS4gKi9cclxuICBEYXRlID0gJ2RhdGUnLFxyXG5cclxuICAvKiogVmFsb3IgcGFyYSBkYXRhIGUgaG9yYS4gKi9cclxuICBEYXRlVGltZSA9ICdkYXRldGltZScsXHJcblxyXG4gIC8qKiBVdGlsaXphZG8gcGFyYSBpbmZvcm1hci9leGliaXIgaG9yYS4gKi9cclxuICBUaW1lID0gJ3RpbWUnLFxyXG5cclxuICAvKiogVmFsb3IgbnVtw6lyaWNvLiAqL1xyXG4gIE51bWJlciA9ICdudW1iZXInLFxyXG5cclxuICAvKiogVGV4dG8uICovXHJcbiAgU3RyaW5nID0gJ3N0cmluZycsXHJcblxyXG4gIC8qKiBVdGlsaXphZG8gcGFyYSBmYXplciB1cGxvYWRzIGRlIGFycXVpdm9zLiAqL1xyXG4gIFVwbG9hZCA9ICd1cGxvYWQnXHJcbn1cclxuIl19
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1maWVsZC10eXBlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZpZWxkLXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQU4sSUFBWSxrQkEyQlg7QUEzQkQsV0FBWSxrQkFBa0I7SUFDNUIsc0JBQXNCO0lBQ3RCLHlDQUFtQixDQUFBO0lBRW5CLHlEQUF5RDtJQUN6RCwyQ0FBcUIsQ0FBQTtJQUVyQix5REFBeUQ7SUFDekQseUNBQW1CLENBQUE7SUFFbkIsdUJBQXVCO0lBQ3ZCLG1DQUFhLENBQUE7SUFFYiw4QkFBOEI7SUFDOUIsMkNBQXFCLENBQUE7SUFFckIsMkNBQTJDO0lBQzNDLG1DQUFhLENBQUE7SUFFYixzQkFBc0I7SUFDdEIsdUNBQWlCLENBQUE7SUFFakIsYUFBYTtJQUNiLHVDQUFpQixDQUFBO0lBRWpCLGdEQUFnRDtJQUNoRCx1Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBM0JXLGtCQUFrQixLQUFsQixrQkFBa0IsUUEyQjdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEB1c2VkQnkgUG9EeW5hbWljRm9ybUNvbXBvbmVudFxyXG4gKlxyXG4gKiBAZGVzY3JpcHRpb25cclxuICpcclxuICogRW51bSBwYXJhIGRlZmluacOnw6NvIGRvIHRpcG8gZGUgY2FtcG8gcXVlIHNlcsOhIGNyaWFkbyBkaW5hbWljYW1lbnRlLlxyXG4gKi9cclxuZXhwb3J0IGVudW0gUG9EeW5hbWljRmllbGRUeXBlIHtcclxuICAvKiogVmFsb3IgYm9vbGVhbm8uICovXHJcbiAgQm9vbGVhbiA9ICdib29sZWFuJyxcclxuXHJcbiAgLyoqIFZhbG9yIG51bcOpcmljbyBxdWUgY29udMOpbSBjYXNhcyBkZWNpbWFpcyBlIG1pbGhhci4gKi9cclxuICBDdXJyZW5jeSA9ICdjdXJyZW5jeScsXHJcblxyXG4gIC8qKiBWYWxvciBudW3DqXJpY28gcXVlIGNvbnTDqW0gY2FzYXMgZGVjaW1haXMgZSBtaWxoYXIuICovXHJcbiAgRGVjaW1hbCA9ICdkZWNpbWFsJyxcclxuXHJcbiAgLyoqIFZhbG9yIHBhcmEgZGF0YS4gKi9cclxuICBEYXRlID0gJ2RhdGUnLFxyXG5cclxuICAvKiogVmFsb3IgcGFyYSBkYXRhIGUgaG9yYS4gKi9cclxuICBEYXRlVGltZSA9ICdkYXRldGltZScsXHJcblxyXG4gIC8qKiBVdGlsaXphZG8gcGFyYSBpbmZvcm1hci9leGliaXIgaG9yYS4gKi9cclxuICBUaW1lID0gJ3RpbWUnLFxyXG5cclxuICAvKiogVmFsb3IgbnVtw6lyaWNvLiAqL1xyXG4gIE51bWJlciA9ICdudW1iZXInLFxyXG5cclxuICAvKiogVGV4dG8uICovXHJcbiAgU3RyaW5nID0gJ3N0cmluZycsXHJcblxyXG4gIC8qKiBVdGlsaXphZG8gcGFyYSBmYXplciB1cGxvYWRzIGRlIGFycXVpdm9zLiAqL1xyXG4gIFVwbG9hZCA9ICd1cGxvYWQnXHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1maWVsZC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZpZWxkLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9EeW5hbWljRmllbGRUeXBlIH0gZnJvbSAnLi9wby1keW5hbWljLWZpZWxkLXR5cGUuZW51bSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBvRHluYW1pY0ZpZWxkIHtcclxuICAvKiogSWRlbnRpZmljYWRvciAqL1xyXG4gIGtleT86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBOb21lIGRlIHJlZmVyw6puY2lhIGRvIGNhbXBvLiAqL1xyXG4gIHByb3BlcnR5OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFLDs3R1bG8gZG8gY2FtcG8gZXhpYmlkby5cclxuICAgKlxyXG4gICAqIENhc28gbsOjbyBzZWphIGluZm9ybWFkbywgc2Vyw6EgdXRpbGl6YWRvIGNvbW8gYGxhYmVsYCBvIHZhbG9yIGRhIHByb3ByaWVkYWRlIGBwcm9wZXJ0eWAgY29tIGEgcHJpbWVpcmEgbGV0cmEgZW0gbWFpw7pzY3Vsby5cclxuICAgKi9cclxuICBsYWJlbD86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSDDqSBnZW5lcmljYSwgYXBsaWNhIG8gdmFsb3IgZW0gdG9kb3Mgb3MgdGFtYW5ob3MgZGUgdGVsYXMuXHJcbiAgICovXHJcbiAgZ3JpZENvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZGUgZXhpYmnDp8OjbyBkbyBjYW1wbyBlbSB0ZWxhcyBtZW5vcmVzIChzbSkuXHJcbiAgICpcclxuICAgKiBEZXZlIHNlciB1c2FkbyBvIHNpc3RlbWEgZGUgKipncmlkKiogZG8gUE8gKDEgLi4uIDEyIGNvbHVuYXMpLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHNvYnJlc2NyZXZlIG8gdmFsb3IgZGVmaW5pZG8gcGFyYSBvIHRhbWFuaG8gZGVsYSBuYSBgZ3JpZENvbHVtbnNgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDEyYFxyXG4gICAqL1xyXG4gIGdyaWRTbUNvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZGUgZXhpYmnDp8OjbyBkbyBjYW1wbyBlbSB0ZWxhcyBtw6lkaWFzIChtZCkuXHJcbiAgICpcclxuICAgKiBEZXZlIHNlciB1c2FkbyBvIHNpc3RlbWEgZGUgKipncmlkKiogZG8gUE8gKDEgLi4uIDEyIGNvbHVuYXMpLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHNvYnJlc2NyZXZlIG8gdmFsb3IgZGVmaW5pZG8gcGFyYSBvIHRhbWFuaG8gZGVsYSBuYSBgZ3JpZENvbHVtbnNgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDZgXHJcbiAgICovXHJcbiAgZ3JpZE1kQ29sdW1ucz86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzIGdyYW5kZXMgKGxnKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTIgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc29icmVzY3JldmUgbyB2YWxvciBkZWZpbmlkbyBwYXJhIG8gdGFtYW5obyBkZWxhIG5hIGBncmlkQ29sdW1uc2AuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBgNGBcclxuICAgKi9cclxuICBncmlkTGdDb2x1bW5zPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBUYW1hbmhvIGRlIGV4aWJpw6fDo28gZG8gY2FtcG8gZW0gdGVsYXMgZXh0cmEgZ3JhbmRlcyAoeGwpLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBzb2JyZXNjcmV2ZSBvIHZhbG9yIGRlZmluaWRvIHBhcmEgbyB0YW1hbmhvIGRlbGEgbmEgYGdyaWRDb2x1bW5zYC5cclxuICAgKlxyXG4gICAqIEBkZWZhdWx0IGAzYFxyXG4gICAqL1xyXG4gIGdyaWRYbENvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZG8gZXNwYcOnbyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSDDqSBnZW7DqXJpY2EsIGFwbGljYSBvIHZhbG9yIGVtIHRvZG9zIG9zIHRhbWFuaG9zIGRlIHRlbGFzLlxyXG4gICAqL1xyXG4gIG9mZnNldENvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZG8gZXNwYcOnbyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzIG1lbm9yZXMgKHNtKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTIgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc29icmVzY3JldmUgbyB2YWxvciBkZWZpbmlkbyBwYXJhIG8gdGFtYW5obyBkZWxhIG5hIGBvZmZzZXRDb2x1bW5zYC5cclxuICAgKlxyXG4gICAqL1xyXG4gIG9mZnNldFNtQ29sdW1ucz86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dvIGRlIGV4aWJpw6fDo28gZG8gY2FtcG8gZW0gdGVsYXMgbcOpZGlhcyAobWQpLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBzb2JyZXNjcmV2ZSBvIHZhbG9yIGRlZmluaWRvIHBhcmEgbyB0YW1hbmhvIGRlbGEgbmEgYG9mZnNldENvbHVtbnNgLlxyXG4gICAqXHJcbiAgICovXHJcbiAgb2Zmc2V0TWRDb2x1bW5zPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBUYW1hbmhvIGRvIGVzcGHDp28gZGUgZXhpYmnDp8OjbyBkbyBjYW1wbyBlbSB0ZWxhcyBncmFuZGVzIChsZykuXHJcbiAgICpcclxuICAgKiBEZXZlIHNlciB1c2FkbyBvIHNpc3RlbWEgZGUgKipncmlkKiogZG8gUE8gKDEgLi4uIDEyIGNvbHVuYXMpLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHNvYnJlc2NyZXZlIG8gdmFsb3IgZGVmaW5pZG8gcGFyYSBvIHRhbWFuaG8gZGVsYSBuYSBgb2Zmc2V0Q29sdW1uc2AuXHJcbiAgICpcclxuICAgKi9cclxuICBvZmZzZXRMZ0NvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZG8gZXNwYcOnbyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzIGV4dHJhIGdyYW5kZXMgKHhsKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTIgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc29icmVzY3JldmUgbyB2YWxvciBkZWZpbmlkbyBwYXJhIG8gdGFtYW5obyBkZWxhIG5hIGBvZmZzZXRDb2x1bW5zYC5cclxuICAgKlxyXG4gICAqL1xyXG4gIG9mZnNldFhsQ29sdW1ucz86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIG1lbm9yZXMgKHNtKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZFNtUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIG3DqWRpYXMgKG1kKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZE1kUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIGdyYW5kZXMgKGxnKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZExnUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIGV4dHJhIGdyYW5kZXMgKHhsKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZFhsUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIG8gY2FtcG8gc2Vyw6Egdmlzw612ZWwuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcclxuICAgKi9cclxuICB2aXNpYmxlPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIEV4aWJpcsOhIHVtIGRpdmlzb3IgYWNpbWEsIHV0aWxpemFuZG8gbyBzZXUgY29udGV1ZG8gY29tbyB0w610dWxvLiAqL1xyXG4gIGRpdmlkZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRpcG8gZG8gdmFsb3IgY2FtcG8uXHJcbiAgICpcclxuICAgKiBWYWxvcmVzIHbDoWxpZG9zOlxyXG4gICAqXHJcbiAgICogLSBgYm9vbGVhbmA6IFZhbG9yZXMgKmJvb2xlYW5vcyouXHJcbiAgICogLSBgY3VycmVuY3lgOiBWYWxvcmVzIG1vbmV0w6FyaW9zLlxyXG4gICAqIC0gYGRhdGVgOiBWYWxvcmVzIGRlIGRhdGFzLlxyXG4gICAqICArIEFjZWl0YSBvcyB0aXBvcyAqKnN0cmluZyoqIGUgKipEYXRlKiogcGFkcsOjbyBkbyBKYXZhc2NyaXB0LFxyXG4gICAqICBwb3IgZXhlbXBsbzogYCcyMDE3LTExLTI4J2Agb3UgYG5ldyBEYXRlKDIwMTcsIDEwLCAyOClgLlxyXG4gICAqIC0gYGRhdGVUaW1lYDogVmFsb3IgZGUgZGF0YSBjb20gaG9yw6FyaW8uXHJcbiAgICogICsgQWNlaXRhIG8gdGlwbyBfc3RyaW5nXyBubyBmb3JtYXRvICoqSVNPLTg2MDEqKiBleHRlbmRpZG8gKioneXl5eS1tbS1kZFRoaDptbTpzcyt8LWhoOm1tJyoqXHJcbiAgICogZSBvIHRpcG8gKipEYXRlKiogcGFkcsOjbyBkbyBKYXZhc2NyaXB0LCBwb3IgZXhlbXBsbzogYCcyMDE3LTExLTI4VDAwOjAwOjAwLTAyOjAwJ2Agb3UgYG5ldyBEYXRlKDIwMTcsIDEwLCAyOClgLlxyXG4gICAqIC0gYG51bWJlcmA6IFZhbG9yZXMgbnVtw6lyaWNvcy5cclxuICAgKiAtIGBzdHJpbmdgOiBUZXh0b3MuXHJcbiAgICogLSBgdGltZWA6IFZhbG9yIGRvIGhvcsOhcmlvLlxyXG4gICAqICArIEFjZWl0YSBvIHRpcG8gKipzdHJpbmcqKiBub3MgZm9ybWF0b3MgKionSEg6bW06c3MnKiogb3UgKionSEg6bW06c3MuZmZmZmZmJyoqLCBwb3IgZXhlbXBsbzogYCcyMzoxMjo0NSdgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYHN0cmluZ2BcclxuICAgKi9cclxuICB0eXBlPzogc3RyaW5nIHwgUG9EeW5hbWljRmllbGRUeXBlO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1maWVsZC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZpZWxkLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9EeW5hbWljRmllbGRUeXBlIH0gZnJvbSAnLi9wby1keW5hbWljLWZpZWxkLXR5cGUuZW51bSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFBvRHluYW1pY0ZpZWxkIHtcclxuICAvKiogSWRlbnRpZmljYWRvciAqL1xyXG4gIGtleT86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBOb21lIGRlIHJlZmVyw6puY2lhIGRvIGNhbXBvLiAqL1xyXG4gIHByb3BlcnR5OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFLDs3R1bG8gZG8gY2FtcG8gZXhpYmlkby5cclxuICAgKlxyXG4gICAqIENhc28gbsOjbyBzZWphIGluZm9ybWFkbywgc2Vyw6EgdXRpbGl6YWRvIGNvbW8gYGxhYmVsYCBvIHZhbG9yIGRhIHByb3ByaWVkYWRlIGBwcm9wZXJ0eWAgY29tIGEgcHJpbWVpcmEgbGV0cmEgZW0gbWFpw7pzY3Vsby5cclxuICAgKi9cclxuICBsYWJlbD86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSDDqSBnZW5lcmljYSwgYXBsaWNhIG8gdmFsb3IgZW0gdG9kb3Mgb3MgdGFtYW5ob3MgZGUgdGVsYXMuXHJcbiAgICovXHJcbiAgZ3JpZENvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZGUgZXhpYmnDp8OjbyBkbyBjYW1wbyBlbSB0ZWxhcyBtZW5vcmVzIChzbSkuXHJcbiAgICpcclxuICAgKiBEZXZlIHNlciB1c2FkbyBvIHNpc3RlbWEgZGUgKipncmlkKiogZG8gUE8gKDEgLi4uIDEyIGNvbHVuYXMpLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHNvYnJlc2NyZXZlIG8gdmFsb3IgZGVmaW5pZG8gcGFyYSBvIHRhbWFuaG8gZGVsYSBuYSBgZ3JpZENvbHVtbnNgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDEyYFxyXG4gICAqL1xyXG4gIGdyaWRTbUNvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZGUgZXhpYmnDp8OjbyBkbyBjYW1wbyBlbSB0ZWxhcyBtw6lkaWFzIChtZCkuXHJcbiAgICpcclxuICAgKiBEZXZlIHNlciB1c2FkbyBvIHNpc3RlbWEgZGUgKipncmlkKiogZG8gUE8gKDEgLi4uIDEyIGNvbHVuYXMpLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHNvYnJlc2NyZXZlIG8gdmFsb3IgZGVmaW5pZG8gcGFyYSBvIHRhbWFuaG8gZGVsYSBuYSBgZ3JpZENvbHVtbnNgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDZgXHJcbiAgICovXHJcbiAgZ3JpZE1kQ29sdW1ucz86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzIGdyYW5kZXMgKGxnKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTIgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc29icmVzY3JldmUgbyB2YWxvciBkZWZpbmlkbyBwYXJhIG8gdGFtYW5obyBkZWxhIG5hIGBncmlkQ29sdW1uc2AuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBgNGBcclxuICAgKi9cclxuICBncmlkTGdDb2x1bW5zPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBUYW1hbmhvIGRlIGV4aWJpw6fDo28gZG8gY2FtcG8gZW0gdGVsYXMgZXh0cmEgZ3JhbmRlcyAoeGwpLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBzb2JyZXNjcmV2ZSBvIHZhbG9yIGRlZmluaWRvIHBhcmEgbyB0YW1hbmhvIGRlbGEgbmEgYGdyaWRDb2x1bW5zYC5cclxuICAgKlxyXG4gICAqIEBkZWZhdWx0IGAzYFxyXG4gICAqL1xyXG4gIGdyaWRYbENvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZG8gZXNwYcOnbyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSDDqSBnZW7DqXJpY2EsIGFwbGljYSBvIHZhbG9yIGVtIHRvZG9zIG9zIHRhbWFuaG9zIGRlIHRlbGFzLlxyXG4gICAqL1xyXG4gIG9mZnNldENvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZG8gZXNwYcOnbyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzIG1lbm9yZXMgKHNtKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTIgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc29icmVzY3JldmUgbyB2YWxvciBkZWZpbmlkbyBwYXJhIG8gdGFtYW5obyBkZWxhIG5hIGBvZmZzZXRDb2x1bW5zYC5cclxuICAgKlxyXG4gICAqL1xyXG4gIG9mZnNldFNtQ29sdW1ucz86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dvIGRlIGV4aWJpw6fDo28gZG8gY2FtcG8gZW0gdGVsYXMgbcOpZGlhcyAobWQpLlxyXG4gICAqXHJcbiAgICogRGV2ZSBzZXIgdXNhZG8gbyBzaXN0ZW1hIGRlICoqZ3JpZCoqIGRvIFBPICgxIC4uLiAxMiBjb2x1bmFzKS5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBzb2JyZXNjcmV2ZSBvIHZhbG9yIGRlZmluaWRvIHBhcmEgbyB0YW1hbmhvIGRlbGEgbmEgYG9mZnNldENvbHVtbnNgLlxyXG4gICAqXHJcbiAgICovXHJcbiAgb2Zmc2V0TWRDb2x1bW5zPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBUYW1hbmhvIGRvIGVzcGHDp28gZGUgZXhpYmnDp8OjbyBkbyBjYW1wbyBlbSB0ZWxhcyBncmFuZGVzIChsZykuXHJcbiAgICpcclxuICAgKiBEZXZlIHNlciB1c2FkbyBvIHNpc3RlbWEgZGUgKipncmlkKiogZG8gUE8gKDEgLi4uIDEyIGNvbHVuYXMpLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHNvYnJlc2NyZXZlIG8gdmFsb3IgZGVmaW5pZG8gcGFyYSBvIHRhbWFuaG8gZGVsYSBuYSBgb2Zmc2V0Q29sdW1uc2AuXHJcbiAgICpcclxuICAgKi9cclxuICBvZmZzZXRMZ0NvbHVtbnM/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gZG8gZXNwYcOnbyBkZSBleGliacOnw6NvIGRvIGNhbXBvIGVtIHRlbGFzIGV4dHJhIGdyYW5kZXMgKHhsKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTIgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc29icmVzY3JldmUgbyB2YWxvciBkZWZpbmlkbyBwYXJhIG8gdGFtYW5obyBkZWxhIG5hIGBvZmZzZXRDb2x1bW5zYC5cclxuICAgKlxyXG4gICAqL1xyXG4gIG9mZnNldFhsQ29sdW1ucz86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIG1lbm9yZXMgKHNtKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZFNtUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIG3DqWRpYXMgKG1kKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZE1kUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIGdyYW5kZXMgKGxnKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZExnUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBkbyBlc3Bhw6dhbWVudG8gYXDDs3MgbyBjYW1wbyBhbnRlcyBkYSBleGliacOnw6NvIGRvIHByw7N4aW1vIGNhbXBvIGVtIHRlbGFzIGV4dHJhIGdyYW5kZXMgKHhsKS5cclxuICAgKlxyXG4gICAqIERldmUgc2VyIHVzYWRvIG8gc2lzdGVtYSBkZSAqKmdyaWQqKiBkbyBQTyAoMSAuLi4gMTEgY29sdW5hcykuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgbsOjbyBmdW5jaW9uYSBjb20gYSBwcm9wcmllZGFkZSBgZ3JpZENvbHVtbnNgLiBEZXZlLXNlIGVzcGVjaWZpY2FyIG8gdGFtYW5obyBkYSB0ZWxhLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYDBgXHJcbiAgICovXHJcbiAgZ3JpZFhsUHVsbD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIG8gY2FtcG8gc2Vyw6Egdmlzw612ZWwuXHJcbiAgICpcclxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcclxuICAgKi9cclxuICB2aXNpYmxlPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIEV4aWJpcsOhIHVtIGRpdmlzb3IgYWNpbWEsIHV0aWxpemFuZG8gbyBzZXUgY29udGV1ZG8gY29tbyB0w610dWxvLiAqL1xyXG4gIGRpdmlkZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRpcG8gZG8gdmFsb3IgY2FtcG8uXHJcbiAgICpcclxuICAgKiBWYWxvcmVzIHbDoWxpZG9zOlxyXG4gICAqXHJcbiAgICogLSBgYm9vbGVhbmA6IFZhbG9yZXMgKmJvb2xlYW5vcyouXHJcbiAgICogLSBgY3VycmVuY3lgOiBWYWxvcmVzIG1vbmV0w6FyaW9zLlxyXG4gICAqIC0gYGRlY2ltYWxgOiBWYWxvcmVzIGRlY2ltYWlzLlxyXG4gICAqIC0gYGRhdGVgOiBWYWxvcmVzIGRlIGRhdGFzLlxyXG4gICAqICArIEFjZWl0YSBvcyB0aXBvcyAqKnN0cmluZyoqIGUgKipEYXRlKiogcGFkcsOjbyBkbyBKYXZhc2NyaXB0LFxyXG4gICAqICBwb3IgZXhlbXBsbzogYCcyMDE3LTExLTI4J2Agb3UgYG5ldyBEYXRlKDIwMTcsIDEwLCAyOClgLlxyXG4gICAqIC0gYGRhdGVUaW1lYDogVmFsb3IgZGUgZGF0YSBjb20gaG9yw6FyaW8uXHJcbiAgICogICsgQWNlaXRhIG8gdGlwbyBfc3RyaW5nXyBubyBmb3JtYXRvICoqSVNPLTg2MDEqKiBleHRlbmRpZG8gKioneXl5eS1tbS1kZFRoaDptbTpzcyt8LWhoOm1tJyoqXHJcbiAgICogZSBvIHRpcG8gKipEYXRlKiogcGFkcsOjbyBkbyBKYXZhc2NyaXB0LCBwb3IgZXhlbXBsbzogYCcyMDE3LTExLTI4VDAwOjAwOjAwLTAyOjAwJ2Agb3UgYG5ldyBEYXRlKDIwMTcsIDEwLCAyOClgLlxyXG4gICAqIC0gYG51bWJlcmA6IFZhbG9yZXMgbnVtw6lyaWNvcy5cclxuICAgKiAtIGBzdHJpbmdgOiBUZXh0b3MuXHJcbiAgICogLSBgdGltZWA6IFZhbG9yIGRvIGhvcsOhcmlvLlxyXG4gICAqICArIEFjZWl0YSBvIHRpcG8gKipzdHJpbmcqKiBub3MgZm9ybWF0b3MgKionSEg6bW06c3MnKiogb3UgKionSEg6bW06c3MuZmZmZmZmJyoqLCBwb3IgZXhlbXBsbzogYCcyMzoxMjo0NSdgLlxyXG4gICAqXHJcbiAgICogQGRlZmF1bHQgYHN0cmluZ2BcclxuICAgKi9cclxuICB0eXBlPzogc3RyaW5nIHwgUG9EeW5hbWljRmllbGRUeXBlO1xyXG59XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFBvQ2hlY2tib3hHcm91cE9wdGlvbixcclxuICBQb0NvbWJvRmlsdGVyLFxyXG4gIFBvQ29tYm9MaXRlcmFscyxcclxuICBQb0RhdGVwaWNrZXJJc29Gb3JtYXQsXHJcbiAgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyxcclxuICBQb0xvb2t1cEZpbHRlcixcclxuICBQb0xvb2t1cExpdGVyYWxzLFxyXG4gIFBvTXVsdGlzZWxlY3RGaWx0ZXJNb2RlLFxyXG4gIFBvTXVsdGlzZWxlY3RMaXRlcmFscyxcclxuICBQb1N3aXRjaExhYmVsUG9zaXRpb24sXHJcbiAgUG9VcGxvYWRMaXRlcmFscyxcclxuICBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnNcclxufSBmcm9tICcuLi8uLi9wby1maWVsZCc7XHJcbmltcG9ydCB7IFBvTG9va3VwQWR2YW5jZWRGaWx0ZXIgfSBmcm9tICcuLi8uLi9wby1maWVsZC9wby1sb29rdXAvaW50ZXJmYWNlcy9wby1sb29rdXAtYWR2YW5jZWQtZmlsdGVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvTG9va3VwQ29sdW1uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBQb011bHRpc2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tbXVsdGlzZWxlY3QvcG8tbXVsdGlzZWxlY3Qtb3B0aW9uLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRm9yY2VPcHRpb25Db21wb25lbnRFbnVtIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1maWVsZC1mb3JjZS1jb21wb25lbnQuZW51bSc7XHJcblxyXG5pbXBvcnQgeyBQb0R5bmFtaWNGaWVsZCB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZmllbGQuaW50ZXJmYWNlJztcclxuXHJcbi8qKlxyXG4gKiBAdXNlZEJ5IFBvRHluYW1pY0Zvcm1Db21wb25lbnQsIFBvQWR2YW5jZWRGaWx0ZXJDb21wb25lbnQsIFBvUGFnZUR5bmFtaWNTZWFyY2hDb21wb25lbnRcclxuICpcclxuICogQGRvY3NFeHRlbmRzIFBvRHluYW1pY0ZpZWxkXHJcbiAqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKlxyXG4gKiBJbnRlcmZhY2UgcGFyYSBkZWZpbmnDp8OjbyBkYXMgcHJvcHJpZWRhZGVzIGRvcyBjYW1wb3MgZGUgZW50cmFkYSBxdWUgc2Vyw6NvIGNyaWFkb3MgZGluYW1pY2FtZW50ZS5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUG9EeW5hbWljRm9ybUZpZWxkIGV4dGVuZHMgUG9EeW5hbWljRmllbGQge1xyXG4gIC8qKlxyXG4gICAqIERlZmluZSBhcyBjb2x1bmFzIHBhcmEgdXRpbGl6YcOnw6NvIGRhIGJ1c2NhIGF2YW7Dp2FkYS4gVXNhZGEgc29tZW50ZSBlbSBjb25qdW50byBjb20gYSBwcm9wcmllZGFkZSBgc2VhcmNoU2VydmljZWAsXHJcbiAgICogZXNzYSBwcm9wcmllZGFkZSBkZXZlIHJlY2ViZXIgdW0gYXJyYXkgZGUgb2JqZXRvcyBxdWUgaW1wbGVtZW50YW0gYSBpbnRlcmZhY2UgW2BQb0xvb2t1cENvbHVtbmBdKC9kb2N1bWVudGF0aW9uL3BvLWxvb2t1cCkuXHJcbiAgICpcclxuICAgKiA+IENhc28gc2VqYW0gaW5mb3JtYWRhcyBjb2x1bmFzLCBkZXZlLXNlIG9icmlnYXRvcmlhbWVudGUgY29udGVyIGNvbHVuYXMgZGVmaW5pZGFzIGNvbW8gKmxhYmVsKiBlICp2YWx1ZSogcGFyYSB2YWxvcmVzXHJcbiAgICogZGUgdGVsYSBlIGRvIG1vZGVsIHJlc3BlY3RpdmFtZW50ZS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1yYWRpby1ncm91cGAsIGBwby1sb29rdXBgLCBgcG8tY2hlY2tib3gtZ3JvdXBgLlxyXG4gICAqL1xyXG4gIGNvbHVtbnM/OiBBcnJheTxQb0xvb2t1cENvbHVtbj4gfCBudW1iZXI7XHJcblxyXG4gIC8qKiBEZWZpbmUgYSBvYnJpZ2F0b3JpZWRhZGUgZG8gY2FtcG8uICovXHJcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvcGNpb25hbCBzZXLDoSBleGliaWRhLlxyXG4gICAqXHJcbiAgICogPiBBIGluZGljYcOnw6NvIG7Do28gc2Vyw6EgZXhpYmlkYSwgc2U6XHJcbiAgICogLSBPIGNhbXBvIGZvciBgcmVxdWlyZWRgLCBvdTtcclxuICAgKiAtIE7Do28gcG9zc3VpciBgaGVscGAgZSBgbGFiZWxgLlxyXG4gICAqL1xyXG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGUgb3DDp8O1ZXMgcXVlIHNlcsOjbyBleGliaWRvcyBlbSB1bSBjb21wb25lbnRlLCBwb2RlbmRvIHNlbGVjaW9uYXIgdW1hIG9ww6fDo28uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tc2VsZWN0YCwgYHBvLXJhZGlvLWdyb3VwYCwgYHBvLWNoZWNrYm94LWdyb3VwYCwgYHBvLW11bHRpc2VsZWN0YC5cclxuICAgKiAqL1xyXG4gIG9wdGlvbnM/OlxyXG4gICAgfCBBcnJheTxzdHJpbmc+XHJcbiAgICB8IEFycmF5PFBvU2VsZWN0T3B0aW9uPlxyXG4gICAgfCBBcnJheTxQb011bHRpc2VsZWN0T3B0aW9uPlxyXG4gICAgfCBBcnJheTxQb0NoZWNrYm94R3JvdXBPcHRpb24+XHJcbiAgICB8IEFycmF5PGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgcXVlIG8gdXN1w6FyaW8gZmHDp2EgbcO6bHRpcGxhIHNlbGXDp8OjbyBkZW50cm8gZGEgbGlzdGEgZGUgb3DDp8O1ZXMuXHJcbiAgICovXHJcbiAgb3B0aW9uc011bHRpPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogIFNlcnZpw6dvIHF1ZSBzZXLDoSB1dGlsaXphZG8gcGFyYSBidXNjYXIgb3MgaXRlbnMgZSBwcmVlbmNoZXIgYSBsaXN0YSBkZSBvcMOnw7VlcyBkaW5hbWljYW1lbnRlLlxyXG4gICAqICBQb2RlIHNlciBpbmZvcm1hZGEgdW1hIFVSTCBvdSB1bWEgaW5zdGFuY2lhIGRvIHNlcnZpw6dvIGJhc2VhZG8gZW0gUG9Db21ib0ZpbHRlci5cclxuICAgKiAgKipJbXBvcnRhbnRlKipcclxuICAgKiAgPiBQYXJhIHF1ZSBmdW5jaW9uZSBjb3JyZXRhbWVudGUsIMOpIGltcG9ydGFudGUgcXVlIG8gc2VydmnDp28gc2lnYSBvXHJcbiAgICogIFtndWlhIGRlIEFQSSBkbyBQTyBVSV0oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpKS5cclxuICAgKi9cclxuICBvcHRpb25zU2VydmljZT86IHN0cmluZyB8IFBvQ29tYm9GaWx0ZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZpw6dvIHF1ZSBzZXLDoSB1dGlsaXphZG8gcGFyYSByZWFsaXphciBhIGJ1c2NhIGF2YW7Dp2FkYS4gUG9kZSBzZXIgdXRpbGl6YWRvIGVtIGNvbmp1bnRvIGNvbSBhIHByb3ByaWVkYWRlIGBjb2x1bW5zYC5cclxuICAgKiBQb2RlIHNlciBzZXIgaW5mb3JtYWRhIHVtYSBVUkwgb3UgdW1hIGluc3RhbmNpYSBkbyBzZXJ2acOnbyBiYXNlYWRvIGVtIFBvTG9va3VwRmlsdGVyLlxyXG4gICAqICoqSW1wb3J0YW50ZToqKlxyXG4gICAqID4gQ2FzbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIGBvcHRpb25zU2VydmljZWAgZXN0YSBwcm9wcmllZGFkZSBzZXLDoSBpZ25vcmFkYS5cclxuICAgKiA+IFBhcmEgcXVlIGZ1bmNpb25lIGNvcnJldGFtZW50ZSwgw6kgaW1wb3J0YW50ZSBxdWUgbyBzZXJ2acOnbyBzaWdhIG9cclxuICAgKiBbZ3VpYSBkZSBBUEkgZG8gUE8gVUldKGh0dHBzOi8vcG8tdWkuaW8vZ3VpZGVzL2FwaSkuXHJcbiAgICovXHJcbiAgc2VhcmNoU2VydmljZT86IHN0cmluZyB8IFBvTG9va3VwRmlsdGVyO1xyXG5cclxuICAvKipcclxuICAgKiBNw6FzY2FyYSBwYXJhIG8gY2FtcG8uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLlxyXG4gICAqID4gdGFtYsOpbSDDqSBhdHJpYnXDrWRvIGFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHR5cGU6IHRpbWVgLlxyXG4gICAqL1xyXG4gIG1hc2s/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBxdWUgbyB2YWxvciBkbyBjb21wb25lbnRlIHNlcsOhIGNvbmZvcm1lIGVzcGVjaWZpY2FkbyBuYSBtYXNjw6FyYS4gTyB2YWxvciBwYWRyw6NvIMOpIGBmYWxzZWAuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLlxyXG4gICAqID4gdGFtYsOpbSDDqSBhdHJpYnXDrWRvIGFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHR5cGU6IHRpbWVgLlxyXG4gICAqICovXHJcbiAgbWFza0Zvcm1hdE1vZGVsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIERlZmluZSBvIMOtY29uZSBxdWUgc2Vyw6EgZXhpYmlkbyBubyBpbsOtY2lvIGRvIGNhbXBvLlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBzw7MgcG9kZSBzZXIgdXRpbGl6YWRvIG5vcyBjYW1wb3M6XHJcbiAgICogLSBJbnB1dDtcclxuICAgKiAtIE51bWJlcjtcclxuICAgKiAtIERlY2ltYWw7XHJcbiAgICogLSBDb21ibztcclxuICAgKiAtIFBhc3N3b3JkO1xyXG4gICAqXHJcbiAgICogPiBWZWphIGEgZGlzcG9uaWJpbGlkYWRlIGRlIMOtY29uZXMgZW0gW2JpYmxpb3RlY2EgZGUgw61jb25lc10oZ3VpZGVzL2ljb25zKS5cclxuICAgKi9cclxuICBpY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dm9pZD47XHJcblxyXG4gIC8qKiAgUXVhbnRpZGFkZSBtw6F4aW1hIGRlIGNhc2FzIGRlY2ltYWlzLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHPDsyBwb2RlIHNlciB1dGlsaXphZGEgcXVhbmRvIG8gYHR5cGVgIGZvciAqY3VycmVuY3kqLlxyXG4gICAqL1xyXG4gIGRlY2ltYWxzTGVuZ3RoPzogbnVtYmVyO1xyXG5cclxuICAvKiogUXVhbnRpZGFkZSBtw6F4aW1hIGRlIGTDrWdpdG9zIGFudGVzIGRvIHNlcGFyYWRvciBkZWNpbWFsLiBPIHZhbG9yIG3DoXhpbW8gcGVybWl0aWRvIMOpIDEzXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkYSBxdWFuZG8gbyBgdHlwZWAgZm9yICpjdXJyZW5jeSouXHJcbiAgICovXHJcbiAgdGhvdXNhbmRNYXhsZW5ndGg/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZ2V4IHBhcmEgdmFsaWRhw6fDo28gZG8gY2FtcG8uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLCBgcG8tcGFzc3dvcmRgLlxyXG4gICAqICovXHJcbiAgcGF0dGVybj86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogVGFtYW5obyBtw61uaW1vIGRlIGNhcmFjdGVyZXMuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgLlxyXG4gICAqICovXHJcbiAgbWluTGVuZ3RoPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBUYW1hbmhvIG3DoXhpbW8gZGUgY2FyYWN0ZXJlcy5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby10ZXh0YXJlYWAsIGBwby1wYXNzd29yZGAuXHJcbiAgICovXHJcbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xyXG5cclxuICAvKiogRGVzYWJpbGl0YSBvIGNhbXBvIGNhc28gaW5mb3JtYXIgbyB2YWxvciAqdHJ1ZSouICovXHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG5cclxuICAvKiogVGV4dG8gZGUgYWp1ZGEuICovXHJcbiAgaGVscD86IHN0cmluZztcclxuXHJcbiAgLyoqIFRleHRvIGV4aWJpZG8gcXVhbmRvIG8gdmFsb3IgZG8gY29tcG9uZW50ZSBmb3IgKnRydWUqLiAqL1xyXG4gIGJvb2xlYW5UcnVlPzogc3RyaW5nO1xyXG5cclxuICAvKiogVGV4dG8gZXhpYmlkbyBxdWFuZG8gbyB2YWxvciBkbyBjb21wb25lbnRlIGZvciAqZmFsc2UqLiAqL1xyXG4gIGJvb2xlYW5GYWxzZT86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIG8gYG1vZGVsYCByZWNlYmVyw6EgbyB2YWxvciBmb3JtYXRhZG8gcGVsYXMgcHJvcHJpZWRhZGVzIGBwLWxhYmVsLW9uYCBlIGBwLWxhYmVsLW9mZmAgb3VcclxuICAgKiBhcGVuYXMgbyB2YWxvciBwdXJvIChzZW0gZm9ybWF0YcOnw6NvKS5cclxuICAgKlxyXG4gICAqIE8gdmFsb3IgcGFkcsOjbyDDqTogYGZhbHNlYC5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBlc3TDoSBkaXNwb25pdmVsICBhcGVuYXMgcGFyYSBvIGBzd2ljdGhgLlxyXG4gICAqL1xyXG4gIGZvcm1hdE1vZGVsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogVmFsb3IgbcOheGltbyBhIHNlciBpbmZvcm1hZG8gbm8gY29tcG9uZW50ZSwgcG9kZW5kbyBzZXIgdXRpbGl6YWRvIHF1YW5kbyBvIHRpcG8gZGUgZGFkbyBwb3IgKm51bWJlciosICpkYXRlKiBvdSAqZGF0ZVRpbWUqLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGBcclxuICAgKiAqL1xyXG4gIG1heFZhbHVlPzogc3RyaW5nIHwgbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBWYWxvciBtw61uaW1vIGEgc2VyIGluZm9ybWFkbyBubyBjb21wb25lbnRlLCBwb2RlbmRvIHNlciB1dGlsaXphZG8gcXVhbmRvIG8gdGlwbyBkZSBkYWRvIHBvciAqbnVtYmVyKiwgKmRhdGUqIG91ICpkYXRlVGltZSouXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1kYXRlcGlja2VyLXJhbmdlYCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYFxyXG4gICAqL1xyXG4gIG1pblZhbHVlPzogc3RyaW5nIHwgbnVtYmVyO1xyXG5cclxuICAvKiogUXVhbnRpZGFkZSBkZSBsaW5oYXMgZXhpYmlkYXMgbm8gYHBvLXRleHRhcmVhYC4gKi9cclxuICByb3dzPzogbnVtYmVyO1xyXG5cclxuICAvKiogRXNjb25kZSBhIGluZm9ybWHDp8OjbyBlc3RpbG8gKnBhc3N3b3JkKiwgcG9kZSBzZXIgdXRpbGl6YWRvIHF1YW5kbyBvIHRpcG8gZGUgZGFkbyBmb3IgKnN0cmluZyouICovXHJcbiAgc2VjcmV0PzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRnVuw6fDo28gb3Ugc2VydmnDp28gcGFyYSB2YWxpZGFyIGFzICoqbXVkYW7Dp2FzIGRvIGNhbXBvKiouXHJcbiAgICpcclxuICAgKiAqIEEgcHJvcHJpZWRhZGUgYWNlaXRhIG9zIHNlZ3VpbnRlcyB0aXBvczpcclxuICAgKiAtICoqU3RyaW5nKio6IEVuZHBvaW50IHVzYWRvIHBlbG8gY29tcG9uZW50ZSBwYXJhIHJlcXVpc2nDp8OjbyB2aWEgYFBPU1RgLlxyXG4gICAqIC0gKipGdW5jdGlvbioqOiBNw6l0b2RvIHF1ZSBzZXLDoSBleGVjdXRhZG8uXHJcbiAgICpcclxuICAgKiBBbyBzZXIgZXhlY3V0YWRvLCBpcsOhIHJlY2ViZXIgY29tbyBwYXLDom1ldHJvIHVtIG9iamV0byBjb20gbyBub21lIGRhIHByb3ByaWVkYWRlXHJcbiAgICogYWx0ZXJhZGEgZSBvIG5vdm8gdmFsb3IsIGNvbmZvcm1lIGEgaW50ZXJmYWNlIGBQb0R5bmFtaWNGb3JtRmllbGRDaGFuZ2VkYDpcclxuICAgKlxyXG4gICAqIGBgXHJcbiAgICogeyBwcm9wZXJ0eTogJ3Byb3BlcnR5IG5hbWUnLCB2YWx1ZTogJ25ldyB2YWx1ZScgfVxyXG4gICAqIGBgXHJcbiAgICpcclxuICAgKiBPIHJldG9ybm8gZGVzdGEgZnVuw6fDo28gZGV2ZSBzZXIgZG8gdGlwbyBbUG9EeW5hbWljRm9ybUZpZWxkVmFsaWRhdGlvbl0oZG9jdW1lbnRhdGlvbi9wby1keW5hbWljLWZvcm0jcG8tZHluYW1pYy1mb3JtLWZpZWxkLXZhbGlkYXRpb24pLFxyXG4gICAqIG9uZGUgbyB1c3XDoXJpbyBwb2RlcsOhIGRldGVybWluYXIgYXMgbm92YXMgcHJvcHJpZWRhZGVzIGRvIGNhbXBvLlxyXG4gICAqIFBvciBleGVtcGxvOlxyXG4gICAqXHJcbiAgICogYGBcclxuICAgKiBvbkNoYW5nZUZpZWxkKGNoYW5nZVZhbHVlKTogUG9EeW5hbWljRm9ybUZpZWxkVmFsaWRhdGlvbiB7XHJcbiAgICpcclxuICAgKiBpZiAoY2hhbmdlVmFsdWUucHJvcGVydHkgPT09ICdiaXJ0aGRheScgJiYgIXRoaXMudmFsaWRhdGUoJ2JpcnRoZGF5JykpIHtcclxuICAgKiAgIHJldHVybiB7XHJcbiAgICogICAgIHZhbHVlOiAnJyxcclxuICAgKiAgICAgZmllbGQ6IHsgcHJvcGVydHk6ICdiaXJ0aGRheScsIHJlcXVpcmVkOiB0cnVlIH0sXHJcbiAgICogICAgIGZvY3VzOiB0cnVlXHJcbiAgICogICB9O1xyXG4gICAqIH1cclxuICAgKiBgYFxyXG4gICAqXHJcbiAgICogUGFyYSByZWZlcmVuY2lhciBhIHN1YSBmdW7Dp8OjbyB1dGlsaXplIGEgcHJvcHJpZWRhZGUgYGJpbmRgLCBwb3IgZXhlbXBsbzpcclxuICAgKiBgYFxyXG4gICAqIHsgcHJvcGVydHk6ICdzdGF0ZScsIGdyaWRDb2x1bW5zOiA2LCB2YWxpZGF0ZTogdGhpcy5teUZ1bmN0aW9uLmJpbmQodGhpcykgfVxyXG4gICAqIGBgXHJcbiAgICovXHJcbiAgdmFsaWRhdGU/OiBzdHJpbmcgfCBGdW5jdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogT2JqZXRvIHF1ZSBzZXLDoSBlbnZpYWRvIGNvbW8gcGFyw6JtZXRybyBuYXMgcmVxdWlzacOnw7VlcyBkZSBidXNjYSB1c2Fkb3MgcGVsb3MgY29tcG9uZW50ZXMgYHBvLWxvb2t1cGAgZVxyXG4gICAqIGBwby1jb21ib2AuXHJcbiAgICpcclxuICAgKiBQb3IgZXhlbXBsbywgcGFyYSBvIHBhcsOibWV0cm8gYHsgYWdlOiAyMyB9YCBhIFVSTCBkYSByZXF1aXNpw6fDo28gZmljYXJpYTpcclxuICAgKlxyXG4gICAqIGBgXHJcbiAgICogdXJsICsgP2FnZT0yMyZmaWx0ZXI9UGV0ZXJcclxuICAgKiBgYFxyXG4gICAqL1xyXG4gIHBhcmFtcz86IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogTWVuc2FnZW0gcXVlIHNlcsOhIGFwcmVzZW50YWRhIHF1YW5kbyBvIGNhbXBvIGZpY2FyIGludsOhbGlkby5cclxuICAgKlxyXG4gICAqIE8gY2FtcG8gZmljYSBpbnbDoWxpZG8gcXVhbmRvIGFzIHNlZ3VpbnRlcyBwcm9wcmllZGFkZXMgbsOjbyBmb3JlbSByZXNwZWl0YWRhczpcclxuICAgKiAgLSBwYXR0ZXJuO1xyXG4gICAqICAtIG1pblZhbHVlO1xyXG4gICAqICAtIG1heFZhbHVlO1xyXG4gICAqXHJcbiAgICogPiBFc3RhIG1lbnNhZ2VtIG7Do28gw6kgYXByZXNlbnRhZGEgcXVhbmRvIG8gY2FtcG8gZXN0aXZlciB2YXppbywgbWVzbW8gcXVlIGVsZSBzZWphIHJlcXVlcmlkby5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWlucHV0YCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYCwgYHBvLXBhc3N3b3JkYC5cclxuICAgKi9cclxuICBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEZvcm1hdG8gZGUgZXhpYmnDp8OjbyBubyBjYW1wby5cclxuICAgKlxyXG4gICAqIEFvIHV0aWxpemFyIGVzdGEgcHJvcHJpZWRhZGUgY29tIG8gYHR5cGVgICpQb0R5bmFtaWNGaWVsZFR5cGUuRGF0ZSogb3UgKlBvRHluYW1pY0ZpZWxkVHlwZS5EYXRlVGltZSosXHJcbiAgICogcG9kZSBzZXIgdXRpbGl6YWRhIHBhcmEgZm9ybWF0YcOnw6NvIGRlIGV4aWJpw6fDo28gZGEgZGF0YTpcclxuICAgKlxyXG4gICAqIFZhbG9yZXMgdsOhbGlkb3M6XHJcbiAgICpcclxuICAgKiAtIGRkL21tL3l5eXlcclxuICAgKiAtIG1tL2RkL3l5eXlcclxuICAgKiAtIHl5eXkvbW0vZGRcclxuICAgKlxyXG4gICAqXHJcbiAgICogVGFtYsOpbSBwb2RlLXNlIHV0aWxpemFyIGVtIGNvbmp1bnRvIGNvbSBgc2VhcmNoU2VydmljZWAsIGluZm9ybWFuZG8gdW1hIGxpc3RhIGRlIHByb3ByaWVkYWRlcyBxdWUgc2Vyw6EgdXRpbGl6YWRvXHJcbiAgICogcGFyYSBmb3JtYXRhw6fDo28gZGEgZXhpYmnDp8OjbyBubyBjYW1wbywgcG9yIGV4ZW1wbG86IFtcImlkXCIsIFwibmFtZVwiXS5cclxuICAgKi9cclxuICBmb3JtYXQ/OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+O1xyXG5cclxuICAvKipcclxuICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byByZXRvcm5hZG8gcXVlIHNlcsOhIHV0aWxpemFkbyBjb21vIGRlc2NyacOnw6NvIGRvIGNhbXBvLlxyXG4gICAqXHJcbiAgICogTyB2YWxvciBwYWRyw6NvIMOpOiBgbGFiZWxgLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHBvZGUgc2VyIHV0aWxpemFkYSBlbSBjb25qdW50byBjb206IGBvcHRpb25zYCwgYG9wdGlvbnNTZXJ2aWNlYCBlIGBzZWFyY2hTZXJ2aWNlYC5cclxuICAgKi9cclxuICBmaWVsZExhYmVsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byByZXRvcm5hZG8gcXVlIHNlcsOhIHV0aWxpemFkbyBjb21vIHZhbG9yIGRvIGNhbXBvLlxyXG4gICAqXHJcbiAgICogTyB2YWxvciBwYWRyw6NvIMOpOiBgdmFsdWVgLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHBvZGUgc2VyIHV0aWxpemFkYSBlbSBjb25qdW50byBjb206IGBvcHRpb25zYCwgYG9wdGlvbnNTZXJ2aWNlYCBlIGBzZWFyY2hTZXJ2aWNlYC5cclxuICAgKi9cclxuICBmaWVsZFZhbHVlPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBJbmZvcm1hIGEgb3JkZW0gZGUgZXhpYmnDp8OjbyBkbyBjYW1wby5cclxuICAgKlxyXG4gICAqIEV4ZW1wbG8gZGUgdXRpbGl6YcOnw6NvOlxyXG4gICAqXHJcbiAgICogYGBcclxuICAgKiBbXHJcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAxJywgb3JkZXI6IDIgfSxcclxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDInLCBvcmRlcjogMSB9LFxyXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMycgfSxcclxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDQnLCBvcmRlcjogMyB9XHJcbiAgICogXTtcclxuICAgKiBgYFxyXG4gICAqXHJcbiAgICogTmEgZXhpYmnDp8OjbyBhIG9yZGVtIGZpY2Fyw6EgZGVzc2EgZm9ybWE6XHJcbiAgICogYGBcclxuICAgKiBbXHJcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAyJywgb3JkZXI6IDEgfSxcclxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDEnLCBvcmRlcjogMiB9LFxyXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgNCcsIG9yZGVyOiAzIH0sXHJcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAzJyB9XHJcbiAgICogXTtcclxuICAgKiBgYFxyXG4gICAqXHJcbiAgICogU8OzIHNlcsOjbyBhY2VpdG9zIHZhbG9yZXMgY29tIG7Dum1lcm9zIGludGVpcm9zIG1haW9yZXMgZG8gcXVlIHplcm8uXHJcbiAgICpcclxuICAgKiBDYW1wb3Mgc2VtIGBvcmRlcmAgb3UgY29tIHZhbG9yZXMgbmVnYXRpdm9zLCB6ZXJhZG9zIG91IGludsOhbGlkb3NcclxuICAgKiBzZXLDo28gb3Mgw7psdGltb3MgYSBzZXJlbSByZW5kZXJpemFkb3MgZSBzZWd1aXLDo28gbyBwb3NpY2lvbmFtZW50byBkZW50cm8gZG9cclxuICAgKiBhcnJheS5cclxuICAgKi9cclxuICBvcmRlcj86IG51bWJlcjtcclxuXHJcbiAgLyoqIE1lbnNhZ2VtIHF1ZSBzZXLDoSBleGliaWRhIGVucXVhbnRvIG8gY2FtcG8gbsOjbyBlc3RpdmVyIHByZWVuY2hpZG8uICovXHJcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBhIGxvY2FsaWRhZGUgYSBzZXIgdXRpbGl6YWRhIG5vIGNvbXBvbmVudGUuXHJcbiAgICogUG9yIHBhZHLDo28gbyB2YWxvciBzZXLDoSBjb25maWd1cmFkbyBzZWd1bmRvIGEgbyBtw7NkdWxvIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcclxuICAgKlxyXG4gICAqIEV4ZW1wbG8gZGUgdXRpbGl6YcOnw6NvOlxyXG4gICAqIGBgXHJcbiAgICogW1xyXG4gICAqICAgeyBwcm9wZXJ0eTogJ2JpcnRoZGF5JywgbG9jYWxlOiAnZW4nLCB0eXBlOiAnZGF0ZScgfSxcclxuICAgKiAgIHsgcHJvcGVydHk6ICd3YWdlJywgbG9jYWxlOiAncnUnLCB0eXBlOiAnY3VycmVuY3knIH1cclxuICAgKiBdO1xyXG4gICAqIGBgXHJcbiAgICpcclxuICAgKiA+IFBhcmEgdmVyIHF1YWlzIGxpbmd1YWdlbnMgc3Vwb3J0YWRhcyBhY2Vzc2UgW2BJMThuYF0oZG9jdW1lbnRhdGlvbi9wby1pMThuKVxyXG4gICAqID4gQSBwcm9wcmllZGFkZSBzZXLDoSByZXBhc3NhZGEgcGFyYSBvcyBjb21wb25lbnRlcyBxdWUgc3Vwb3J0YW0gYSBtZXNtYS5cclxuICAgKi9cclxuICBsb2NhbGU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE8gY29udHJvbGUgcGFzc2EgYSBwZXJtaXRpciBhIGVudHJhZGEgZGUgdW0gaW50ZXJ2YWxvIGFvIGludsOpcyBkZSB1bSDDum5pY28gdmFsb3IuXHJcbiAgICpcclxuICAgKiA+IEF0dWFsbWVudGUgZXNzYSBwcm9wcmllZGFkZSBlc3TDoSBkaXNwb27DrXZlbCBhcGVuYXMgcGFyYSBvIHRpcG8gJ2RhdGUnIGUgJ2RhdGVUaW1lJy5cclxuICAgKi9cclxuICByYW5nZT86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBJbmRpY2EgcXVlIG8gY2FtcG8gc2Vyw6Egc29tZW50ZSBsZWl0dXJhLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby1zZWxlY3RgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgXHJcbiAgICovXHJcbiAgcmVhZG9ubHk/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQZXJtaXRlIGEgc2VsZcOnw6NvIGRlIG3Dumx0aXBsb3MgaXRlbnMuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWw6KiogYHBvLWxvb2t1cGAsIGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xyXG5cclxuICAvKiogU2UgdmVyZGFkZWlybywgbyBjYW1wbyByZWNlYmVyw6EgdW0gYm90w6NvIHBhcmEgc2VyIGxpbXBvLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby1jb21ib2AsIGBwby1sb29rdXBgLCBgcG8tcGFzc3dvcmRgXHJcbiAgICovXHJcbiAgY2xlYW4/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgYSBwcm9wcmllZGFkZSBuYXRpdmEgYGF1dG9jb21wbGV0ZWAgZG8gY2FtcG8gY29tbyBvZmYuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1kYXRlcGlja2VyLXJhbmdlYCwgYHBvLWlucHV0YCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYCwgYHBvLWxvb2t1cGAsIGBwby1wYXNzd29yZGBcclxuICAgKi9cclxuICBub0F1dG9jb21wbGV0ZT86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBvc2nDp8OjbyBkZSBleGliacOnw6NvIGRvIHLDs3R1bG8gZG8gUG9Td2l0Y2guXHJcbiAgICogPiBQb3IgcGFkcsOjbyBleGliZSDDoCBkaXJlaXRhLlxyXG4gICAqL1xyXG4gIGxhYmVsUG9zaXRpb24/OiBQb1N3aXRjaExhYmVsUG9zaXRpb247XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgZXNjb25kZXIgYSBmdW7Dp8OjbyBkZSBlc3BpYXIgYSBzZW5oYSBkaWdpdGFkYSBubyBgcG8tcGFzc3dvcmRgLlxyXG4gICAqL1xyXG4gIGhpZGVQYXNzd29yZFBlZWs/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQYWRyw6NvIGRlIGZvcm1hdGHDp8OjbyBwYXJhIHNhw61kYSBkbyBtb2RlbCwgaW5kZXBlbmRlbnRlbWVudGUgZG8gZm9ybWF0byBkZSBlbnRyYWRhLlxyXG4gICAqXHJcbiAgICogPiBWZWphIG9zIHZhbG9yZXMgdsOhbGlkb3Mgbm8gYGVudW1Qb0RhdGVwaWNrZXJJc29Gb3JtYXRgLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsOioqIHBvLWRhdGVwaWNrZXJcclxuICAgKi9cclxuICBpc29Gb3JtYXQ/OiBQb0RhdGVwaWNrZXJJc29Gb3JtYXQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9iamV0byBjb20gYXMgbGl0ZXJhaXMgdXNhZGFzIHBhcmEgb3Mgc2VndWludGVzIGNvbXBvbmVudGVzOiBgcG8tbG9va3VwYCwgYHBvLW11bHRpc2VsZWN0YCwgYHBvLWNvbWJvYCBlIGBwby1kYXRlcGlja2VyLXJhbmdlYC5cclxuICAgKlxyXG4gICAqID4gTyBvYmpldG8gcGFkcsOjbyBkZSBsaXRlcmFpcyBzZXLDoSB0cmFkdXppZG8gZGUgYWNvcmRvIGNvbSBvIGlkaW9tYSBkbyBQb0kxOG5TZXJ2aWNlIG91IGRvIGJyb3dzZXIuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tbG9va3VwYCwgYHBvLW11bHRpc2VsZWN0YCwgYHBvLWNvbWJvYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgXHJcbiAgICovXHJcbiAgbGl0ZXJhbHM/OiBQb0xvb2t1cExpdGVyYWxzIHwgUG9NdWx0aXNlbGVjdExpdGVyYWxzIHwgUG9Db21ib0xpdGVyYWxzIHwgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyB8IFBvVXBsb2FkTGl0ZXJhbHM7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlIHZlcmRhZGVpcm8gYXRpdmEgYSBmdW5jaW9uYWxpZGFkZSBkZSBzY3JvbGwgaW5maW5pdG8gcGFyYSBvIGNvbWJvIG91IGxvb2t1cCwgYW8gY2hlZ2FyIGFvIGZpbSBkYSB0YWJlbGEgZXhlY3V0YXLDoSBub3ZhIGJ1c2NhIGRvcyBkYWRvcyBjb25mb3JtZSBwYWdpbmHDp8Ojby5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1jb21ib2AsIGBwby1sb29rdXBgLlxyXG4gICAqL1xyXG4gIGluZmluaXRlU2Nyb2xsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIG8gcGVyY2VudHVhbCBuZWNlc3PDoXJpbyBwYXJhIGRpc3BhcmFyIG8gZXZlbnRvIHNob3ctbW9yZSwgcXVlIMOpIHJlc3BvbnPDoXZlbCBwb3IgY2FycmVnYXIgbWFpcyBkYWRvcyBubyBjb21iby4gQ2FzbyBvIHZhbG9yIHNlamEgbWFpb3IgcXVlIDEwMCBvdSBtZW5vciBxdWUgMCwgbyB2YWxvciBwYWRyw6NvIHNlcsOhIDEwMCUuXHJcbiAgICogKipFeGVtcGxvcyoqXHJcbiAgICogYHsgaW5maW5pdGVTY3JvbGxEaXN0YW5jZTogODAgfWA6IFF1YW5kbyBhdGluZ2lyIDgwJSBkbyBzY3JvbGwgZG8gY29tYm8sIG8gc2hvdy1tb3JlIHNlcsOhIGRpc3BhcmFkby5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbDoqKiBgcG8tY29tYm9gLlxyXG4gICAqL1xyXG4gIGluZmluaXRlU2Nyb2xsRGlzdGFuY2U/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBxdWUgYSBhbHR1cmEgZG8gY29tcG9uZW50ZSBzZXLDoSBhdXRvIGFqdXN0w6F2ZWwsIHBvc3N1aW5kbyB1bWEgYWx0dXJhIG1pbmltYSBwb3LDqW0gYSBhbHR1cmEgbcOheGltYSBzZXLDoSBkZSBhY29yZG8gY29tIG8gbsO6bWVybyBkZSBpdGVucyBzZWxlY2lvbmFkb3MgZSBhIGV4dGVuc8OjbyBkb3MgbWVzbW9zLCBtYW50ZW5kby1vcyBzZW1wcmUgdmlzw612ZWlzLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLW11bHRpc2VsZWN0YCwgYHBvLWxvb2t1cGAuXHJcbiAgICovXHJcbiAgYXV0b0hlaWdodD86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEludGVydmFsbyB1dGlsaXphZG8gbm8gYHBvLW51bWJlcmAuXHJcbiAgICovXHJcbiAgc3RlcD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIG8gbW9kbyBkZSBwZXNxdWlzYSB1dGlsaXphZG8gbm8gZmlsdHJvIGRhIGxpc3RhIGRlIHNlbGXDp8OjbzogYHN0YXJ0c1dpdGhgLCBgY29udGFpbnNgIG91IGBlbmRzV2l0aGAuXHJcbiAgICogPiBRdWFuZG8gdXRpbGl6YXIgYSBwcm9wcmllZGFkZSBwLWZpbHRlci1zZXJ2aWNlIGVzdGEgcHJvcHJpZWRhZGUgc2Vyw6EgaWdub3JhZGEuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tbXVsdGlzZWxlY3RgLlxyXG4gICAqL1xyXG4gIGZpbHRlck1vZGU/OiBQb011bHRpc2VsZWN0RmlsdGVyTW9kZTtcclxuXHJcbiAgLyoqXHJcbiAgICogVmFsb3IgbcOtbmltbyBkZSBjYXJhY3RlcmVzIHBhcmEgcmVhbGl6YXIgbyBmaWx0cm8gbm8gc2VydmnDp28gZG8gYHBvLWNvbWJvYC5cclxuICAgKi9cclxuICBmaWx0ZXJNaW5sZW5ndGg/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlc2FiaWxpdGEgbyBmaWx0cm8gaW5pY2lhbCBubyBzZXJ2acOnbyBkbyBgcG8tY29tYm9gLCBxdWUgw6kgZXhlY3V0YWRvIG5vIHByaW1laXJvIGNsaXF1ZSBubyBjYW1wby5cclxuICAgKi9cclxuICBkaXNhYmxlZEluaXRGaWx0ZXI/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBTZSB2ZXJkYWRlaXJvLCBkZXNhYmlsaXRhcsOhIGEgYnVzY2EgZGUgdW0gaXRlbSB2aWEgVEFCIG5vIGBwby1jb21ib2AuXHJcbiAgICovXHJcbiAgZGlzYWJsZWRUYWJGaWx0ZXI/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBFc3RhIHByb3ByaWVkYWRlIGRlZmluZSBlbSBxdWFudG8gdGVtcG8gKGVtIG1pbGlzc2VndW5kb3MpLCBhZ3VhcmRhIHBhcmEgYWNpb25hciBvIGV2ZW50byBkZSBmaWx0cm8gYXDDs3MgY2FkYSBwcmVzc2lvbmFtZW50byBkZSB0ZWNsYS4gU2Vyw6EgdXRpbGl6YWRhIGFwZW5hcyBxdWFuZG8gaG91dmVyIHNlcnZpw6dvIChgcC1maWx0ZXItc2VydmljZWApLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgYHBvLW11bHRpc2VsZWN0YC5cclxuICAgKi9cclxuICBkZWJvdW5jZVRpbWU/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBxdWUgbyBldmVudG8gYHAtY2hhbmdlYCBzw7Mgc2Vyw6EgZGlzcGFyYWRvIGFvIGNsaWNhciBvdSBwcmVzc2lvbmFyIGEgdGVjbGEgXCJFbnRlclwiIHNvYnJlIHVtYSBvcMOnw6NvIHNlbGVjaW9uYWRhIG5vIGBwby1jb21ib2AuXHJcbiAgICovXHJcbiAgY2hhbmdlT25FbnRlcj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBxdWUgYSBsaXN0YSBkZWZpbmlkYSBuYSBwcm9wcmllZGFkZSBwLW9wdGlvbnMgc2Vyw6Egb3JkZW5hZGEgcGVsYSBkZXNjcmnDp8Ojby5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1jb21ib2AsIHBvLW11bHRpc2VsZWN0XHJcbiAgICovXHJcbiAgc29ydD86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBsYWNlaG9sZGVyIGRvIGNhbXBvIGRlIHBlc3F1aXNhIGRvIGBwby1tdWx0aXNlbGVjdGAuXHJcbiAgICpcclxuICAgKiA+IENhc28gbyBtZXNtbyBuw6NvIHNlamEgaW5mb3JtYWRvLCBvIHZhbG9yIHBhZHLDo28gc2Vyw6EgdHJhZHV6aWRvIGNvbSBiYXNlIG5vIGlkaW9tYSBkbyBuYXZlZ2Fkb3IgKHB0LCBlcyBlIGVuKS5cclxuICAgKi9cclxuICBwbGFjZWhvbGRlclNlYXJjaD86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogRXNjb25kZSBvIGNhbXBvIGRlIHBlc3F1aXNhIGV4aXN0ZW50ZSBkZW50cm8gZG8gZHJvcGRvd24gZG8gYHBvLW11bHRpc2VsZWN0YC5cclxuICAgKi9cclxuICBoaWRlU2VhcmNoPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIG8gY2FtcG8gXCJTZWxlY2lvbmFyIHRvZG9zXCIgZG8gYHBvLW11bHRpc2VsZWN0YCBzZXLDoSBlc2NvbmRpZG8uXHJcbiAgICovXHJcbiAgaGlkZVNlbGVjdEFsbD86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RhIGRlIG9iamV0b3MgZG9zIGNhbXBvcyBxdWUgc2Vyw6NvIGNyaWFkb3MgbmEgYnVzY2EgYXZhbsOnYWRhLlxyXG4gICAqXHJcbiAgICogPiBDYXNvIG7Do28gc2VqYSBwYXNzYWRvIHVtIG9iamV0byBvdSBlbnTDo28gZWxlIGVzdGVqYSBlbSBicmFuY28gbyBsaW5rIGRlIGJ1c2NhIGF2YW7Dp2FkYSBmaWNhcsOhIGVzY29uZGlkby5cclxuICAgKlxyXG4gICAqIEV4ZW1wbG8gZGUgVVJMIGNvbSBidXNjYSBhdmFuw6dhZGE6XHJcbiAgICpcclxuICAgKiBgdXJsICsgP3BhZ2U9MSZwYWdlU2l6ZT0yMCZuYW1lPVRvbnklMjBTdGFyayZuaWNrbmFtZT1Ib21lbSUyMGRlJTIwRmVycm9gXHJcbiAgICpcclxuICAgKiBDYXNvIGFsZ3VtIHBhcsOibWV0cm8gc2VqYSB1bWEgbGlzdGEsIGEgY29uY2F0ZW5hw6fDo28gw6kgZmVpdGEgdXRpbGl6YW5kbyB2w61yZ3VsYS4gRXhlbXBsbzpcclxuICAgKlxyXG4gICAqIGB1cmwgKyA/cGFnZT0xJnBhZ2VTaXplPTIwJm5hbWU9VG9ueSUyMFN0YXJrLFBldGVyJTIwUGFya2VyLEdvaGFuYFxyXG4gICAqL1xyXG4gIGFkdmFuY2VkRmlsdGVycz86IEFycmF5PFBvTG9va3VwQWR2YW5jZWRGaWx0ZXI+O1xyXG4gIC8qKlxyXG4gICAqIHBvZGUgc2VyIHV0aWxpemFkYSBlbSBjb25qdW50byBjb20gYSBwcm9wcmllZGFkZSBgb3B0aW9uc2AgZm9yw6dhbmRvIG8gY29tcG9uZW50ZSBhIHJlbmRlcml6YXIgdW0gYHBvLXNlbGVjdGAgb3UgYHBvLXJhZGlvLWdyb3VwYC5cclxuICAgKlxyXG4gICAqIFZhbG9yZXMgYWNlaXRvczpcclxuICAgKiAtIEZvcmNlT3B0aW9uQ29tcG9uZW50RW51bS5yYWRpb0dyb3VwXHJcbiAgICogLSBGb3JjZU9wdGlvbkNvbXBvbmVudEVudW0uc2VsZWN0XHJcbiAgICpcclxuICAgKiA+RXNzYSBwcm9wcmllZGFkZSBzZXLDoSBpZ25vcmFkYSBjYXNvIHNlamEgdXRpbGl6YWRhIGVtIGNvbmp1bnRvIGNvbSBhIHByb3ByaWVkYWRlIGBvcHRpb25zTXVsdGlgIGUgYG9wdGlvbnNTZXJ2aWNlYC5cclxuICAgKi9cclxuICBmb3JjZU9wdGlvbnNDb21wb25lbnRUeXBlPzogRm9yY2VPcHRpb25Db21wb25lbnRFbnVtO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudG8gZGlzcGFyYWRvIGFvIGZlY2hhciBvIHBvcG92ZXIgZG8gZ2VyZW5jaWFkb3IgZGUgY29sdW5hcyBhcMOzcyBhbHRlcmFyIGFzIGNvbHVuYXMgdmlzw612ZWlzLlxyXG4gICAqXHJcbiAgICogTyBjb21wb25lbnRlIGVudmlhIGNvbW8gcGFyw6JtZXRybyB1bSBhcnJheSBkZSBzdHJpbmcgY29tIGFzIGNvbHVuYXMgdmlzw612ZWlzIGF0dWFsaXphZGFzLlxyXG4gICAqIFBvciBleGVtcGxvOiBbXCJpZENhcmRcIiwgXCJuYW1lXCIsIFwiaGlyZVN0YXR1c1wiLCBcImFnZVwiXS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzKio6IGBwby1sb29rdXBgXHJcbiAgICovXHJcbiAgY2hhbmdlVmlzaWJsZUNvbHVtbnM/OiBGdW5jdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBhbyBjbGljYXIgbm8gYm90w6NvIGRlIHJlc3RhdXJhciBwYWRyw6NvIG5vIGdlcmVuY2lhZG9yIGRlIGNvbHVuYXMuXHJcbiAgICpcclxuICAgKiBPIGNvbXBvbmVudGUgZW52aWEgY29tbyBwYXLDom1ldHJvIHVtIGFycmF5IGRlIHN0cmluZyBjb20gYXMgY29sdW5hcyBjb25maWd1cmFkYXMgaW5pY2lhbG1lbnRlLlxyXG4gICAqIFBvciBleGVtcGxvOiBbXCJpZENhcmRcIiwgXCJuYW1lXCIsIFwiaGlyZVN0YXR1c1wiLCBcImFnZVwiXS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzKio6IGBwby1sb29rdXBgXHJcbiAgICovXHJcbiAgY29sdW1uUmVzdG9yZU1hbmFnZXI/OiBGdW5jdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogVVJMIHF1ZSBkZXZlIHNlciBmZWl0YSBhIHJlcXVpc2nDp8OjbyBjb20gb3MgYXJxdWl2b3Mgc2VsZWNpb25hZG9zLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgdXJsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgc2UgbyBlbnZpbyBkbyBhcnF1aXZvIHNlcsOhIGF1dG9tw6F0aWNvIGFvIHNlbGVjaW9uYXIgbyBtZXNtby5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxyXG4gICAqL1xyXG4gIGF1dG9VcGxvYWQ/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQZXJtaXRlIGEgc2VsZcOnw6NvIGRlIGRpcmV0w7NyaW9zIGNvbnRlbmRvIHVtIG91IG1haXMgYXJxdWl2b3MgcGFyYSBlbnZpby5cclxuICAgKlxyXG4gICAqID4gQSBoYWJpbGl0YcOnw6NvIGRlc3RhIHByb3ByaWVkYWRlIHNlIHJlc3RyaW5nZSBhcGVuYXMgw6Agc2VsZcOnw6NvIGRlIGRpcmV0w7NyaW9zLlxyXG4gICAqXHJcbiAgICogPiBEZWZpbmnDp8OjbyBuw6NvIHN1cG9ydGFkYSBwZWxvIGJyb3dzZXIgKipJbnRlcm5ldCBFeHBsb3JlcioqLCB0b2RhdmlhIHNlcsOhIHBvc3PDrXZlbCBhIHNlbGXDp8OjbyBkZSBhcnF1aXZvcyBwYWRyw6NvLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgZGlyZWN0b3J5PzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRXhpYmUgYSDDoXJlYSBvbmRlIMOpIHBvc3PDrXZlbCBhcnJhc3RhciBlIHNlbGVjaW9uYXIgb3MgYXJxdWl2b3MuIFF1YW5kbyBlc3RpdmVyIGRlZmluaWRhLCBvbWl0ZSBvIGJvdMOjbyBwYXJhIHNlbGXDp8OjbyBkZSBhcnF1aXZvc1xyXG4gICAqIGF1dG9tYXRpY2FtZW50ZS5cclxuICAgKlxyXG4gICAqID4gUmVjb21lbmRhbW9zIHV0aWxpemFyIGFwZW5hcyB1bSBgcG8tdXBsb2FkYCBjb20gZXN0YSBmdW5jaW9uYWxpZGFkZSBwb3IgdGVsYS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxyXG4gICAqL1xyXG4gIGRyYWdEcm9wPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIGVtICpwaXhlbHMqIGEgYWx0dXJhIGRhIMOhcmVhIG9uZGUgcG9kZW0gc2VyIGFycmFzdGFkb3Mgb3MgYXJxdWl2b3MuIEEgYWx0dXJhIG3DrW5pbWEgYWNlaXRhIMOpIGAxNjBweGAuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgZnVuY2lvbmEgc29tZW50ZSBzZSBhIHByb3ByaWVkYWRlIGBwLWRyYWctZHJvcGAgZXN0aXZlciBoYWJpbGl0YWRhLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgZHJhZ0Ryb3BIZWlnaHQ/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9iamV0byBxdWUgc2VndWUgYSBkZWZpbmnDp8OjbyBkYSBpbnRlcmZhY2UgYFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9uc2AsXHJcbiAgICogcXVlIHBvc3NpYmlsaXRhIGRlZmluaXIgdGFtYW5obyBtw6F4aW1vL23DrW5pbW8gZSBleHRlbnPDo28gZG9zIGFycXVpdm9zIHBlcm1pdGlkb3MuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICByZXN0cmljdGlvbnM/OiBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnM7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9iamV0byBxdWUgY29udMOpbSBvcyBjYWJlw6dhbGhvcyBxdWUgc2Vyw6EgZW52aWFkbyBuYSByZXF1aXNpw6fDo28gZG9zIGFycXVpdm9zLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgaGVhZGVycz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB8IEFycmF5PHN0cmluZz4gfTtcclxuXHJcbiAgLyoqXHJcbiAgICogT2N1bHRhIHZpc3VhbG1lbnRlIGFzIGluZm9ybWHDp8O1ZXMgZGUgcmVzdHJpw6fDtWVzIHBhcmEgbyB1cGxvYWQuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBoaWRlUmVzdHJpY3Rpb25zSW5mbz86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIE9taXRlIG8gYm90w6NvIGRlIHNlbGXDp8OjbyBkZSBhcnF1aXZvcy5cclxuICAgKlxyXG4gICAqID4gQ2FzbyBvIHZhbG9yIGRlZmluaWRvIHNlamEgYHRydWVgLCBjYWJlcsOhIGFvIGRlc2Vudm9sdmVkb3IgYSByZXNwb25zYWJpbGlkYWRlXHJcbiAgICogcGVsYSBjaGFtYWRhIGRvIG3DqXRvZG8gYHNlbGVjdEZpbGVzKClgIHBhcmEgc2VsZcOnw6NvIGRlIGFycXVpdm9zLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgaGlkZVNlbGVjdEJ1dHRvbj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIE9taXRlIG8gYm90w6NvIGRlIGVudmlvIGRlIGFycXVpdm9zLlxyXG4gICAqXHJcbiAgICogPiBDYXNvIG8gdmFsb3IgZGVmaW5pZG8gc2VqYSBgdHJ1ZWAsIGNhYmVyw6EgYW8gZGVzZW52b2x2ZWRvciBhIHJlc3BvbnNhYmlsaWRhZGVcclxuICAgKiBwZWxhIGNoYW1hZGEgZG8gbcOpdG9kbyBgc2VuZEZpbGVzKClgIHBhcmEgZW52aW8gZG8ocykgYXJxdWl2byhzKSBzZWxlY2lvbmFkbyhzKS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxyXG4gICAqL1xyXG4gIGhpZGVTZW5kQnV0dG9uPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHNlIGEgaW5kaWNhw6fDo28gZGUgY2FtcG8gb2JyaWdhdMOzcmlvIHNlcsOhIGV4aWJpZGEuXHJcbiAgICpcclxuICAgKiA+IE7Do28gc2Vyw6EgZXhpYmlkYSBhIGluZGljYcOnw6NvIHNlOlxyXG4gICAqIC0gTsOjbyBwb3NzdWlyIGBwLWhlbHBgIGUvb3UgYHAtbGFiZWxgLlxyXG4gICAqL1xyXG4gIHNob3dSZXF1aXJlZD86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50byBzZXLDoSBkaXNwYXJhZG8gcXVhbmRvIG9jb3JyZXIgYWxndW0gZXJybyBubyBlbnZpbyBkbyBhcnF1aXZvLlxyXG4gICAqID4gUG9yIHBhcsOibWV0cm8gc2Vyw6EgcGFzc2FkbyBvIG9iamV0byBkbyByZXRvcm5vIHF1ZSDDqSBkbyB0aXBvIGBIdHRwRXJyb3JSZXNwb25zZWAuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBvbkVycm9yPzogRnVuY3Rpb247XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50byBzZXLDoSBkaXNwYXJhZG8gcXVhbmRvIG8gZW52aW8gZG8gYXJxdWl2byBmb3IgcmVhbGl6YWRvIGNvbSBzdWNlc3NvLlxyXG4gICAqID4gUG9yIHBhcsOibWV0cm8gc2Vyw6EgcGFzc2FkbyBvIG9iamV0byBkbyByZXRvcm5vIHF1ZSDDqSBkbyB0aXBvIGBIdHRwUmVzcG9uc2VgLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgb25TdWNjZXNzPzogRnVuY3Rpb247XHJcblxyXG4gIC8qKlxyXG4gICAqIEZ1bsOnw6NvIHF1ZSBzZXLDoSBleGVjdXRhZGEgbm8gbW9tZW50byBkZSByZWFsaXphciBvIGVudmlvIGRvIGFycXVpdm8sXHJcbiAgICogb25kZSBzZXLDoSBwb3Nzw612ZWwgYWRpY2lvbmFyIGluZm9ybWHDp8O1ZXMgYW8gcGFyw6JtZXRybyBxdWUgc2Vyw6EgZW52aWFkbyBuYSByZXF1aXNpw6fDo28uXHJcbiAgICogw4kgcGFzc2FkbyBwb3IgcGFyw6JtZXRybyB1bSBvYmpldG8gY29tIG8gYXJxdWl2byBlIGEgcHJvcHJpZWRhZGUgZGF0YSBuZXN0YSBwcm9wcmllZGFkZSBwb2RlIHNlciBpbmZvcm1hZG8gYWxndW0gZGFkbyxcclxuICAgKiBxdWUgc2Vyw6EgZW52aWFkbyBlbSBjb25qdW50byBjb20gbyBhcnF1aXZvIG5hIHJlcXVpc2nDp8OjbywgcG9yIGV4ZW1wbG86XHJcbiAgICpcclxuICAgKiBgYGBcclxuICAgKiAgIGV2ZW50LmRhdGEgPSB7aWQ6ICdpZCBkbyB1c3XDoXJpbyd9O1xyXG4gICAqIGBgYFxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgb25VcGxvYWQ/OiBGdW5jdGlvbjtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFBvQ2hlY2tib3hHcm91cE9wdGlvbixcclxuICBQb0NvbWJvRmlsdGVyLFxyXG4gIFBvQ29tYm9MaXRlcmFscyxcclxuICBQb0RhdGVwaWNrZXJJc29Gb3JtYXQsXHJcbiAgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyxcclxuICBQb0xvb2t1cEZpbHRlcixcclxuICBQb0xvb2t1cExpdGVyYWxzLFxyXG4gIFBvTXVsdGlzZWxlY3RGaWx0ZXJNb2RlLFxyXG4gIFBvTXVsdGlzZWxlY3RMaXRlcmFscyxcclxuICBQb1N3aXRjaExhYmVsUG9zaXRpb24sXHJcbiAgUG9VcGxvYWRMaXRlcmFscyxcclxuICBQb1VwbG9hZEZpbGVSZXN0cmljdGlvbnNcclxufSBmcm9tICcuLi8uLi9wby1maWVsZCc7XHJcbmltcG9ydCB7IFBvTG9va3VwQWR2YW5jZWRGaWx0ZXIgfSBmcm9tICcuLi8uLi9wby1maWVsZC9wby1sb29rdXAvaW50ZXJmYWNlcy9wby1sb29rdXAtYWR2YW5jZWQtZmlsdGVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvTG9va3VwQ29sdW1uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWNvbHVtbi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBQb011bHRpc2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tbXVsdGlzZWxlY3QvcG8tbXVsdGlzZWxlY3Qtb3B0aW9uLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgRm9yY2VPcHRpb25Db21wb25lbnRFbnVtIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1maWVsZC1mb3JjZS1jb21wb25lbnQuZW51bSc7XHJcblxyXG5pbXBvcnQgeyBQb0R5bmFtaWNGaWVsZCB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZmllbGQuaW50ZXJmYWNlJztcclxuXHJcbi8qKlxyXG4gKiBAdXNlZEJ5IFBvRHluYW1pY0Zvcm1Db21wb25lbnQsIFBvQWR2YW5jZWRGaWx0ZXJDb21wb25lbnQsIFBvUGFnZUR5bmFtaWNTZWFyY2hDb21wb25lbnRcclxuICpcclxuICogQGRvY3NFeHRlbmRzIFBvRHluYW1pY0ZpZWxkXHJcbiAqXHJcbiAqIEBkZXNjcmlwdGlvblxyXG4gKlxyXG4gKiBJbnRlcmZhY2UgcGFyYSBkZWZpbmnDp8OjbyBkYXMgcHJvcHJpZWRhZGVzIGRvcyBjYW1wb3MgZGUgZW50cmFkYSBxdWUgc2Vyw6NvIGNyaWFkb3MgZGluYW1pY2FtZW50ZS5cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgUG9EeW5hbWljRm9ybUZpZWxkIGV4dGVuZHMgUG9EeW5hbWljRmllbGQge1xyXG4gIC8qKlxyXG4gICAqIERlZmluZSBhcyBjb2x1bmFzIHBhcmEgdXRpbGl6YcOnw6NvIGRhIGJ1c2NhIGF2YW7Dp2FkYS4gVXNhZGEgc29tZW50ZSBlbSBjb25qdW50byBjb20gYSBwcm9wcmllZGFkZSBgc2VhcmNoU2VydmljZWAsXHJcbiAgICogZXNzYSBwcm9wcmllZGFkZSBkZXZlIHJlY2ViZXIgdW0gYXJyYXkgZGUgb2JqZXRvcyBxdWUgaW1wbGVtZW50YW0gYSBpbnRlcmZhY2UgW2BQb0xvb2t1cENvbHVtbmBdKC9kb2N1bWVudGF0aW9uL3BvLWxvb2t1cCkuXHJcbiAgICpcclxuICAgKiA+IENhc28gc2VqYW0gaW5mb3JtYWRhcyBjb2x1bmFzLCBkZXZlLXNlIG9icmlnYXRvcmlhbWVudGUgY29udGVyIGNvbHVuYXMgZGVmaW5pZGFzIGNvbW8gKmxhYmVsKiBlICp2YWx1ZSogcGFyYSB2YWxvcmVzXHJcbiAgICogZGUgdGVsYSBlIGRvIG1vZGVsIHJlc3BlY3RpdmFtZW50ZS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1yYWRpby1ncm91cGAsIGBwby1sb29rdXBgLCBgcG8tY2hlY2tib3gtZ3JvdXBgLlxyXG4gICAqL1xyXG4gIGNvbHVtbnM/OiBBcnJheTxQb0xvb2t1cENvbHVtbj4gfCBudW1iZXI7XHJcblxyXG4gIC8qKiBEZWZpbmUgYSBvYnJpZ2F0b3JpZWRhZGUgZG8gY2FtcG8uICovXHJcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvcGNpb25hbCBzZXLDoSBleGliaWRhLlxyXG4gICAqXHJcbiAgICogPiBBIGluZGljYcOnw6NvIG7Do28gc2Vyw6EgZXhpYmlkYSwgc2U6XHJcbiAgICogLSBPIGNhbXBvIGZvciBgcmVxdWlyZWRgLCBvdTtcclxuICAgKiAtIE7Do28gcG9zc3VpciBgaGVscGAgZSBgbGFiZWxgLlxyXG4gICAqL1xyXG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGUgb3DDp8O1ZXMgcXVlIHNlcsOjbyBleGliaWRvcyBlbSB1bSBjb21wb25lbnRlLCBwb2RlbmRvIHNlbGVjaW9uYXIgdW1hIG9ww6fDo28uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tc2VsZWN0YCwgYHBvLXJhZGlvLWdyb3VwYCwgYHBvLWNoZWNrYm94LWdyb3VwYCwgYHBvLW11bHRpc2VsZWN0YC5cclxuICAgKiAqL1xyXG4gIG9wdGlvbnM/OlxyXG4gICAgfCBBcnJheTxzdHJpbmc+XHJcbiAgICB8IEFycmF5PFBvU2VsZWN0T3B0aW9uPlxyXG4gICAgfCBBcnJheTxQb011bHRpc2VsZWN0T3B0aW9uPlxyXG4gICAgfCBBcnJheTxQb0NoZWNrYm94R3JvdXBPcHRpb24+XHJcbiAgICB8IEFycmF5PGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgcXVlIG8gdXN1w6FyaW8gZmHDp2EgbcO6bHRpcGxhIHNlbGXDp8OjbyBkZW50cm8gZGEgbGlzdGEgZGUgb3DDp8O1ZXMuXHJcbiAgICovXHJcbiAgb3B0aW9uc011bHRpPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogIFNlcnZpw6dvIHF1ZSBzZXLDoSB1dGlsaXphZG8gcGFyYSBidXNjYXIgb3MgaXRlbnMgZSBwcmVlbmNoZXIgYSBsaXN0YSBkZSBvcMOnw7VlcyBkaW5hbWljYW1lbnRlLlxyXG4gICAqICBQb2RlIHNlciBpbmZvcm1hZGEgdW1hIFVSTCBvdSB1bWEgaW5zdGFuY2lhIGRvIHNlcnZpw6dvIGJhc2VhZG8gZW0gUG9Db21ib0ZpbHRlci5cclxuICAgKiAgKipJbXBvcnRhbnRlKipcclxuICAgKiAgPiBQYXJhIHF1ZSBmdW5jaW9uZSBjb3JyZXRhbWVudGUsIMOpIGltcG9ydGFudGUgcXVlIG8gc2VydmnDp28gc2lnYSBvXHJcbiAgICogIFtndWlhIGRlIEFQSSBkbyBQTyBVSV0oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpKS5cclxuICAgKi9cclxuICBvcHRpb25zU2VydmljZT86IHN0cmluZyB8IFBvQ29tYm9GaWx0ZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZpw6dvIHF1ZSBzZXLDoSB1dGlsaXphZG8gcGFyYSByZWFsaXphciBhIGJ1c2NhIGF2YW7Dp2FkYS4gUG9kZSBzZXIgdXRpbGl6YWRvIGVtIGNvbmp1bnRvIGNvbSBhIHByb3ByaWVkYWRlIGBjb2x1bW5zYC5cclxuICAgKiBQb2RlIHNlciBzZXIgaW5mb3JtYWRhIHVtYSBVUkwgb3UgdW1hIGluc3RhbmNpYSBkbyBzZXJ2acOnbyBiYXNlYWRvIGVtIFBvTG9va3VwRmlsdGVyLlxyXG4gICAqICoqSW1wb3J0YW50ZToqKlxyXG4gICAqID4gQ2FzbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIGBvcHRpb25zU2VydmljZWAgZXN0YSBwcm9wcmllZGFkZSBzZXLDoSBpZ25vcmFkYS5cclxuICAgKiA+IFBhcmEgcXVlIGZ1bmNpb25lIGNvcnJldGFtZW50ZSwgw6kgaW1wb3J0YW50ZSBxdWUgbyBzZXJ2acOnbyBzaWdhIG9cclxuICAgKiBbZ3VpYSBkZSBBUEkgZG8gUE8gVUldKGh0dHBzOi8vcG8tdWkuaW8vZ3VpZGVzL2FwaSkuXHJcbiAgICovXHJcbiAgc2VhcmNoU2VydmljZT86IHN0cmluZyB8IFBvTG9va3VwRmlsdGVyO1xyXG5cclxuICAvKipcclxuICAgKiBNw6FzY2FyYSBwYXJhIG8gY2FtcG8uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLlxyXG4gICAqID4gdGFtYsOpbSDDqSBhdHJpYnXDrWRvIGFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHR5cGU6IHRpbWVgLlxyXG4gICAqL1xyXG4gIG1hc2s/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBxdWUgbyB2YWxvciBkbyBjb21wb25lbnRlIHNlcsOhIGNvbmZvcm1lIGVzcGVjaWZpY2FkbyBuYSBtYXNjw6FyYS4gTyB2YWxvciBwYWRyw6NvIMOpIGBmYWxzZWAuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLlxyXG4gICAqID4gdGFtYsOpbSDDqSBhdHJpYnXDrWRvIGFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHR5cGU6IHRpbWVgLlxyXG4gICAqICovXHJcbiAgbWFza0Zvcm1hdE1vZGVsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIERlZmluZSBvIMOtY29uZSBxdWUgc2Vyw6EgZXhpYmlkbyBubyBpbsOtY2lvIGRvIGNhbXBvLlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBzw7MgcG9kZSBzZXIgdXRpbGl6YWRvIG5vcyBjYW1wb3M6XHJcbiAgICogLSBJbnB1dDtcclxuICAgKiAtIE51bWJlcjtcclxuICAgKiAtIERlY2ltYWw7XHJcbiAgICogLSBDb21ibztcclxuICAgKiAtIFBhc3N3b3JkO1xyXG4gICAqXHJcbiAgICogPiBWZWphIGEgZGlzcG9uaWJpbGlkYWRlIGRlIMOtY29uZXMgZW0gW2JpYmxpb3RlY2EgZGUgw61jb25lc10oZ3VpZGVzL2ljb25zKS5cclxuICAgKi9cclxuICBpY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dm9pZD47XHJcblxyXG4gIC8qKiAgUXVhbnRpZGFkZSBtw6F4aW1hIGRlIGNhc2FzIGRlY2ltYWlzLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHPDsyBwb2RlIHNlciB1dGlsaXphZGEgcXVhbmRvIG8gYHR5cGVgIGZvciAqY3VycmVuY3kqIG91ICpkZWNpbWFsKi5cclxuICAgKi9cclxuICBkZWNpbWFsc0xlbmd0aD86IG51bWJlcjtcclxuXHJcbiAgLyoqIFF1YW50aWRhZGUgbcOheGltYSBkZSBkw61naXRvcyBhbnRlcyBkbyBzZXBhcmFkb3IgZGVjaW1hbC4gTyB2YWxvciBtw6F4aW1vIHBlcm1pdGlkbyDDqSAxM1xyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIHPDsyBwb2RlIHNlciB1dGlsaXphZGEgcXVhbmRvIG8gYHR5cGVgIGZvciAqY3VycmVuY3kqIG91ICpkZWNpbWFsKi5cclxuICAgKi9cclxuICB0aG91c2FuZE1heGxlbmd0aD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogUmVnZXggcGFyYSB2YWxpZGHDp8OjbyBkbyBjYW1wby5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAsIGBwby1wYXNzd29yZGAuXHJcbiAgICogKi9cclxuICBwYXR0ZXJuPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBUYW1hbmhvIG3DrW5pbW8gZGUgY2FyYWN0ZXJlcy5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby10ZXh0YXJlYWAsIGBwby1wYXNzd29yZGAuXHJcbiAgICogKi9cclxuICBtaW5MZW5ndGg/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRhbWFuaG8gbcOheGltbyBkZSBjYXJhY3RlcmVzLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWlucHV0YCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYCwgYHBvLXRleHRhcmVhYCwgYHBvLXBhc3N3b3JkYC5cclxuICAgKi9cclxuICBtYXhMZW5ndGg/OiBudW1iZXI7XHJcblxyXG4gIC8qKiBEZXNhYmlsaXRhIG8gY2FtcG8gY2FzbyBpbmZvcm1hciBvIHZhbG9yICp0cnVlKi4gKi9cclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBUZXh0byBkZSBhanVkYS4gKi9cclxuICBoZWxwPzogc3RyaW5nO1xyXG5cclxuICAvKiogVGV4dG8gZXhpYmlkbyBxdWFuZG8gbyB2YWxvciBkbyBjb21wb25lbnRlIGZvciAqdHJ1ZSouICovXHJcbiAgYm9vbGVhblRydWU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBUZXh0byBleGliaWRvIHF1YW5kbyBvIHZhbG9yIGRvIGNvbXBvbmVudGUgZm9yICpmYWxzZSouICovXHJcbiAgYm9vbGVhbkZhbHNlPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgbyBgbW9kZWxgIHJlY2ViZXLDoSBvIHZhbG9yIGZvcm1hdGFkbyBwZWxhcyBwcm9wcmllZGFkZXMgYHAtbGFiZWwtb25gIGUgYHAtbGFiZWwtb2ZmYCBvdVxyXG4gICAqIGFwZW5hcyBvIHZhbG9yIHB1cm8gKHNlbSBmb3JtYXRhw6fDo28pLlxyXG4gICAqXHJcbiAgICogTyB2YWxvciBwYWRyw6NvIMOpOiBgZmFsc2VgLlxyXG4gICAqXHJcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGVzdMOhIGRpc3Bvbml2ZWwgIGFwZW5hcyBwYXJhIG8gYHN3aWN0aGAuXHJcbiAgICovXHJcbiAgZm9ybWF0TW9kZWw/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBWYWxvciBtw6F4aW1vIGEgc2VyIGluZm9ybWFkbyBubyBjb21wb25lbnRlLCBwb2RlbmRvIHNlciB1dGlsaXphZG8gcXVhbmRvIG8gdGlwbyBkZSBkYWRvIHBvciAqbnVtYmVyKiwgKmRhdGUqIG91ICpkYXRlVGltZSouXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1kYXRlcGlja2VyLXJhbmdlYCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYFxyXG4gICAqICovXHJcbiAgbWF4VmFsdWU/OiBzdHJpbmcgfCBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbG9yIG3DrW5pbW8gYSBzZXIgaW5mb3JtYWRvIG5vIGNvbXBvbmVudGUsIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBxdWFuZG8gbyB0aXBvIGRlIGRhZG8gcG9yICpudW1iZXIqLCAqZGF0ZSogb3UgKmRhdGVUaW1lKi5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgXHJcbiAgICovXHJcbiAgbWluVmFsdWU/OiBzdHJpbmcgfCBudW1iZXI7XHJcblxyXG4gIC8qKiBRdWFudGlkYWRlIGRlIGxpbmhhcyBleGliaWRhcyBubyBgcG8tdGV4dGFyZWFgLiAqL1xyXG4gIHJvd3M/OiBudW1iZXI7XHJcblxyXG4gIC8qKiBFc2NvbmRlIGEgaW5mb3JtYcOnw6NvIGVzdGlsbyAqcGFzc3dvcmQqLCBwb2RlIHNlciB1dGlsaXphZG8gcXVhbmRvIG8gdGlwbyBkZSBkYWRvIGZvciAqc3RyaW5nKi4gKi9cclxuICBzZWNyZXQ/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBGdW7Dp8OjbyBvdSBzZXJ2acOnbyBwYXJhIHZhbGlkYXIgYXMgKiptdWRhbsOnYXMgZG8gY2FtcG8qKi5cclxuICAgKlxyXG4gICAqICogQSBwcm9wcmllZGFkZSBhY2VpdGEgb3Mgc2VndWludGVzIHRpcG9zOlxyXG4gICAqIC0gKipTdHJpbmcqKjogRW5kcG9pbnQgdXNhZG8gcGVsbyBjb21wb25lbnRlIHBhcmEgcmVxdWlzacOnw6NvIHZpYSBgUE9TVGAuXHJcbiAgICogLSAqKkZ1bmN0aW9uKio6IE3DqXRvZG8gcXVlIHNlcsOhIGV4ZWN1dGFkby5cclxuICAgKlxyXG4gICAqIEFvIHNlciBleGVjdXRhZG8sIGlyw6EgcmVjZWJlciBjb21vIHBhcsOibWV0cm8gdW0gb2JqZXRvIGNvbSBvIG5vbWUgZGEgcHJvcHJpZWRhZGVcclxuICAgKiBhbHRlcmFkYSBlIG8gbm92byB2YWxvciwgY29uZm9ybWUgYSBpbnRlcmZhY2UgYFBvRHluYW1pY0Zvcm1GaWVsZENoYW5nZWRgOlxyXG4gICAqXHJcbiAgICogYGBcclxuICAgKiB7IHByb3BlcnR5OiAncHJvcGVydHkgbmFtZScsIHZhbHVlOiAnbmV3IHZhbHVlJyB9XHJcbiAgICogYGBcclxuICAgKlxyXG4gICAqIE8gcmV0b3JubyBkZXN0YSBmdW7Dp8OjbyBkZXZlIHNlciBkbyB0aXBvIFtQb0R5bmFtaWNGb3JtRmllbGRWYWxpZGF0aW9uXShkb2N1bWVudGF0aW9uL3BvLWR5bmFtaWMtZm9ybSNwby1keW5hbWljLWZvcm0tZmllbGQtdmFsaWRhdGlvbiksXHJcbiAgICogb25kZSBvIHVzdcOhcmlvIHBvZGVyw6EgZGV0ZXJtaW5hciBhcyBub3ZhcyBwcm9wcmllZGFkZXMgZG8gY2FtcG8uXHJcbiAgICogUG9yIGV4ZW1wbG86XHJcbiAgICpcclxuICAgKiBgYFxyXG4gICAqIG9uQ2hhbmdlRmllbGQoY2hhbmdlVmFsdWUpOiBQb0R5bmFtaWNGb3JtRmllbGRWYWxpZGF0aW9uIHtcclxuICAgKlxyXG4gICAqIGlmIChjaGFuZ2VWYWx1ZS5wcm9wZXJ0eSA9PT0gJ2JpcnRoZGF5JyAmJiAhdGhpcy52YWxpZGF0ZSgnYmlydGhkYXknKSkge1xyXG4gICAqICAgcmV0dXJuIHtcclxuICAgKiAgICAgdmFsdWU6ICcnLFxyXG4gICAqICAgICBmaWVsZDogeyBwcm9wZXJ0eTogJ2JpcnRoZGF5JywgcmVxdWlyZWQ6IHRydWUgfSxcclxuICAgKiAgICAgZm9jdXM6IHRydWVcclxuICAgKiAgIH07XHJcbiAgICogfVxyXG4gICAqIGBgXHJcbiAgICpcclxuICAgKiBQYXJhIHJlZmVyZW5jaWFyIGEgc3VhIGZ1bsOnw6NvIHV0aWxpemUgYSBwcm9wcmllZGFkZSBgYmluZGAsIHBvciBleGVtcGxvOlxyXG4gICAqIGBgXHJcbiAgICogeyBwcm9wZXJ0eTogJ3N0YXRlJywgZ3JpZENvbHVtbnM6IDYsIHZhbGlkYXRlOiB0aGlzLm15RnVuY3Rpb24uYmluZCh0aGlzKSB9XHJcbiAgICogYGBcclxuICAgKi9cclxuICB2YWxpZGF0ZT86IHN0cmluZyB8IEZ1bmN0aW9uO1xyXG5cclxuICAvKipcclxuICAgKiBPYmpldG8gcXVlIHNlcsOhIGVudmlhZG8gY29tbyBwYXLDom1ldHJvIG5hcyByZXF1aXNpw6fDtWVzIGRlIGJ1c2NhIHVzYWRvcyBwZWxvcyBjb21wb25lbnRlcyBgcG8tbG9va3VwYCBlXHJcbiAgICogYHBvLWNvbWJvYC5cclxuICAgKlxyXG4gICAqIFBvciBleGVtcGxvLCBwYXJhIG8gcGFyw6JtZXRybyBgeyBhZ2U6IDIzIH1gIGEgVVJMIGRhIHJlcXVpc2nDp8OjbyBmaWNhcmlhOlxyXG4gICAqXHJcbiAgICogYGBcclxuICAgKiB1cmwgKyA/YWdlPTIzJmZpbHRlcj1QZXRlclxyXG4gICAqIGBgXHJcbiAgICovXHJcbiAgcGFyYW1zPzogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBNZW5zYWdlbSBxdWUgc2Vyw6EgYXByZXNlbnRhZGEgcXVhbmRvIG8gY2FtcG8gZmljYXIgaW52w6FsaWRvLlxyXG4gICAqXHJcbiAgICogTyBjYW1wbyBmaWNhIGludsOhbGlkbyBxdWFuZG8gYXMgc2VndWludGVzIHByb3ByaWVkYWRlcyBuw6NvIGZvcmVtIHJlc3BlaXRhZGFzOlxyXG4gICAqICAtIHBhdHRlcm47XHJcbiAgICogIC0gbWluVmFsdWU7XHJcbiAgICogIC0gbWF4VmFsdWU7XHJcbiAgICpcclxuICAgKiA+IEVzdGEgbWVuc2FnZW0gbsOjbyDDqSBhcHJlc2VudGFkYSBxdWFuZG8gbyBjYW1wbyBlc3RpdmVyIHZhemlvLCBtZXNtbyBxdWUgZWxlIHNlamEgcmVxdWVyaWRvLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tcGFzc3dvcmRgLlxyXG4gICAqL1xyXG4gIGVycm9yTWVzc2FnZT86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogRm9ybWF0byBkZSBleGliacOnw6NvIG5vIGNhbXBvLlxyXG4gICAqXHJcbiAgICogQW8gdXRpbGl6YXIgZXN0YSBwcm9wcmllZGFkZSBjb20gbyBgdHlwZWAgKlBvRHluYW1pY0ZpZWxkVHlwZS5EYXRlKiBvdSAqUG9EeW5hbWljRmllbGRUeXBlLkRhdGVUaW1lKixcclxuICAgKiBwb2RlIHNlciB1dGlsaXphZGEgcGFyYSBmb3JtYXRhw6fDo28gZGUgZXhpYmnDp8OjbyBkYSBkYXRhOlxyXG4gICAqXHJcbiAgICogVmFsb3JlcyB2w6FsaWRvczpcclxuICAgKlxyXG4gICAqIC0gZGQvbW0veXl5eVxyXG4gICAqIC0gbW0vZGQveXl5eVxyXG4gICAqIC0geXl5eS9tbS9kZFxyXG4gICAqXHJcbiAgICpcclxuICAgKiBUYW1iw6ltIHBvZGUtc2UgdXRpbGl6YXIgZW0gY29uanVudG8gY29tIGBzZWFyY2hTZXJ2aWNlYCwgaW5mb3JtYW5kbyB1bWEgbGlzdGEgZGUgcHJvcHJpZWRhZGVzIHF1ZSBzZXLDoSB1dGlsaXphZG9cclxuICAgKiBwYXJhIGZvcm1hdGHDp8OjbyBkYSBleGliacOnw6NvIG5vIGNhbXBvLCBwb3IgZXhlbXBsbzogW1wiaWRcIiwgXCJuYW1lXCJdLlxyXG4gICAqL1xyXG4gIGZvcm1hdD86IHN0cmluZyB8IEFycmF5PHN0cmluZz47XHJcblxyXG4gIC8qKlxyXG4gICAqIE5vbWUgZGEgcHJvcHJpZWRhZGUgZG8gb2JqZXRvIHJldG9ybmFkbyBxdWUgc2Vyw6EgdXRpbGl6YWRvIGNvbW8gZGVzY3Jpw6fDo28gZG8gY2FtcG8uXHJcbiAgICpcclxuICAgKiBPIHZhbG9yIHBhZHLDo28gw6k6IGBsYWJlbGAuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgcG9kZSBzZXIgdXRpbGl6YWRhIGVtIGNvbmp1bnRvIGNvbTogYG9wdGlvbnNgLCBgb3B0aW9uc1NlcnZpY2VgIGUgYHNlYXJjaFNlcnZpY2VgLlxyXG4gICAqL1xyXG4gIGZpZWxkTGFiZWw/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE5vbWUgZGEgcHJvcHJpZWRhZGUgZG8gb2JqZXRvIHJldG9ybmFkbyBxdWUgc2Vyw6EgdXRpbGl6YWRvIGNvbW8gdmFsb3IgZG8gY2FtcG8uXHJcbiAgICpcclxuICAgKiBPIHZhbG9yIHBhZHLDo28gw6k6IGB2YWx1ZWAuXHJcbiAgICpcclxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgcG9kZSBzZXIgdXRpbGl6YWRhIGVtIGNvbmp1bnRvIGNvbTogYG9wdGlvbnNgLCBgb3B0aW9uc1NlcnZpY2VgIGUgYHNlYXJjaFNlcnZpY2VgLlxyXG4gICAqL1xyXG4gIGZpZWxkVmFsdWU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZm9ybWEgYSBvcmRlbSBkZSBleGliacOnw6NvIGRvIGNhbXBvLlxyXG4gICAqXHJcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo286XHJcbiAgICpcclxuICAgKiBgYFxyXG4gICAqIFtcclxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDEnLCBvcmRlcjogMiB9LFxyXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMicsIG9yZGVyOiAxIH0sXHJcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAzJyB9LFxyXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgNCcsIG9yZGVyOiAzIH1cclxuICAgKiBdO1xyXG4gICAqIGBgXHJcbiAgICpcclxuICAgKiBOYSBleGliacOnw6NvIGEgb3JkZW0gZmljYXLDoSBkZXNzYSBmb3JtYTpcclxuICAgKiBgYFxyXG4gICAqIFtcclxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDInLCBvcmRlcjogMSB9LFxyXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMScsIG9yZGVyOiAyIH0sXHJcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCA0Jywgb3JkZXI6IDMgfSxcclxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDMnIH1cclxuICAgKiBdO1xyXG4gICAqIGBgXHJcbiAgICpcclxuICAgKiBTw7Mgc2Vyw6NvIGFjZWl0b3MgdmFsb3JlcyBjb20gbsO6bWVyb3MgaW50ZWlyb3MgbWFpb3JlcyBkbyBxdWUgemVyby5cclxuICAgKlxyXG4gICAqIENhbXBvcyBzZW0gYG9yZGVyYCBvdSBjb20gdmFsb3JlcyBuZWdhdGl2b3MsIHplcmFkb3Mgb3UgaW52w6FsaWRvc1xyXG4gICAqIHNlcsOjbyBvcyDDumx0aW1vcyBhIHNlcmVtIHJlbmRlcml6YWRvcyBlIHNlZ3VpcsOjbyBvIHBvc2ljaW9uYW1lbnRvIGRlbnRybyBkb1xyXG4gICAqIGFycmF5LlxyXG4gICAqL1xyXG4gIG9yZGVyPzogbnVtYmVyO1xyXG5cclxuICAvKiogTWVuc2FnZW0gcXVlIHNlcsOhIGV4aWJpZGEgZW5xdWFudG8gbyBjYW1wbyBuw6NvIGVzdGl2ZXIgcHJlZW5jaGlkby4gKi9cclxuICBwbGFjZWhvbGRlcj86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIGEgbG9jYWxpZGFkZSBhIHNlciB1dGlsaXphZGEgbm8gY29tcG9uZW50ZS5cclxuICAgKiBQb3IgcGFkcsOjbyBvIHZhbG9yIHNlcsOhIGNvbmZpZ3VyYWRvIHNlZ3VuZG8gYSBvIG3Ds2R1bG8gW2BJMThuYF0oZG9jdW1lbnRhdGlvbi9wby1pMThuKVxyXG4gICAqXHJcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo286XHJcbiAgICogYGBcclxuICAgKiBbXHJcbiAgICogICB7IHByb3BlcnR5OiAnYmlydGhkYXknLCBsb2NhbGU6ICdlbicsIHR5cGU6ICdkYXRlJyB9LFxyXG4gICAqICAgeyBwcm9wZXJ0eTogJ3dhZ2UnLCBsb2NhbGU6ICdydScsIHR5cGU6ICdjdXJyZW5jeScgfVxyXG4gICAqIF07XHJcbiAgICogYGBcclxuICAgKlxyXG4gICAqID4gUGFyYSB2ZXIgcXVhaXMgbGluZ3VhZ2VucyBzdXBvcnRhZGFzIGFjZXNzZSBbYEkxOG5gXShkb2N1bWVudGF0aW9uL3BvLWkxOG4pXHJcbiAgICogPiBBIHByb3ByaWVkYWRlIHNlcsOhIHJlcGFzc2FkYSBwYXJhIG9zIGNvbXBvbmVudGVzIHF1ZSBzdXBvcnRhbSBhIG1lc21hLlxyXG4gICAqL1xyXG4gIGxvY2FsZT86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogTyBjb250cm9sZSBwYXNzYSBhIHBlcm1pdGlyIGEgZW50cmFkYSBkZSB1bSBpbnRlcnZhbG8gYW8gaW52w6lzIGRlIHVtIMO6bmljbyB2YWxvci5cclxuICAgKlxyXG4gICAqID4gQXR1YWxtZW50ZSBlc3NhIHByb3ByaWVkYWRlIGVzdMOhIGRpc3BvbsOtdmVsIGFwZW5hcyBwYXJhIG8gdGlwbyAnZGF0ZScgZSAnZGF0ZVRpbWUnLlxyXG4gICAqL1xyXG4gIHJhbmdlPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqIEluZGljYSBxdWUgbyBjYW1wbyBzZXLDoSBzb21lbnRlIGxlaXR1cmEuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1kYXRlcGlja2VyLXJhbmdlYCwgYHBvLWlucHV0YCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYCwgYHBvLXNlbGVjdGAsIGBwby10ZXh0YXJlYWAsIGBwby1wYXNzd29yZGBcclxuICAgKi9cclxuICByZWFkb25seT86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgYSBzZWxlw6fDo28gZGUgbcO6bHRpcGxvcyBpdGVucy5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbDoqKiBgcG8tbG9va3VwYCwgYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBtdWx0aXBsZT86IGJvb2xlYW47XHJcblxyXG4gIC8qKiBTZSB2ZXJkYWRlaXJvLCBvIGNhbXBvIHJlY2ViZXLDoSB1bSBib3TDo28gcGFyYSBzZXIgbGltcG8uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1kYXRlcGlja2VyLXJhbmdlYCwgYHBvLWlucHV0YCwgYHBvLW51bWJlcmAsIGBwby1kZWNpbWFsYCwgYHBvLWNvbWJvYCwgYHBvLWxvb2t1cGAsIGBwby1wYXNzd29yZGBcclxuICAgKi9cclxuICBjbGVhbj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBhIHByb3ByaWVkYWRlIG5hdGl2YSBgYXV0b2NvbXBsZXRlYCBkbyBjYW1wbyBjb21vIG9mZi5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLCBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tbG9va3VwYCwgYHBvLXBhc3N3b3JkYFxyXG4gICAqL1xyXG4gIG5vQXV0b2NvbXBsZXRlPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogUG9zacOnw6NvIGRlIGV4aWJpw6fDo28gZG8gcsOzdHVsbyBkbyBQb1N3aXRjaC5cclxuICAgKiA+IFBvciBwYWRyw6NvIGV4aWJlIMOgIGRpcmVpdGEuXHJcbiAgICovXHJcbiAgbGFiZWxQb3NpdGlvbj86IFBvU3dpdGNoTGFiZWxQb3NpdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogUGVybWl0ZSBlc2NvbmRlciBhIGZ1bsOnw6NvIGRlIGVzcGlhciBhIHNlbmhhIGRpZ2l0YWRhIG5vIGBwby1wYXNzd29yZGAuXHJcbiAgICovXHJcbiAgaGlkZVBhc3N3b3JkUGVlaz86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhZHLDo28gZGUgZm9ybWF0YcOnw6NvIHBhcmEgc2HDrWRhIGRvIG1vZGVsLCBpbmRlcGVuZGVudGVtZW50ZSBkbyBmb3JtYXRvIGRlIGVudHJhZGEuXHJcbiAgICpcclxuICAgKiA+IFZlamEgb3MgdmFsb3JlcyB2w6FsaWRvcyBubyBgZW51bVBvRGF0ZXBpY2tlcklzb0Zvcm1hdGAuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWw6KiogcG8tZGF0ZXBpY2tlclxyXG4gICAqL1xyXG4gIGlzb0Zvcm1hdD86IFBvRGF0ZXBpY2tlcklzb0Zvcm1hdDtcclxuXHJcbiAgLyoqXHJcbiAgICogT2JqZXRvIGNvbSBhcyBsaXRlcmFpcyB1c2FkYXMgcGFyYSBvcyBzZWd1aW50ZXMgY29tcG9uZW50ZXM6IGBwby1sb29rdXBgLCBgcG8tbXVsdGlzZWxlY3RgLCBgcG8tY29tYm9gIGUgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLlxyXG4gICAqXHJcbiAgICogPiBPIG9iamV0byBwYWRyw6NvIGRlIGxpdGVyYWlzIHNlcsOhIHRyYWR1emlkbyBkZSBhY29yZG8gY29tIG8gaWRpb21hIGRvIFBvSTE4blNlcnZpY2Ugb3UgZG8gYnJvd3Nlci5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1sb29rdXBgLCBgcG8tbXVsdGlzZWxlY3RgLCBgcG8tY29tYm9gLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWBcclxuICAgKi9cclxuICBsaXRlcmFscz86IFBvTG9va3VwTGl0ZXJhbHMgfCBQb011bHRpc2VsZWN0TGl0ZXJhbHMgfCBQb0NvbWJvTGl0ZXJhbHMgfCBQb0RhdGVwaWNrZXJSYW5nZUxpdGVyYWxzIHwgUG9VcGxvYWRMaXRlcmFscztcclxuXHJcbiAgLyoqXHJcbiAgICogU2UgdmVyZGFkZWlybyBhdGl2YSBhIGZ1bmNpb25hbGlkYWRlIGRlIHNjcm9sbCBpbmZpbml0byBwYXJhIG8gY29tYm8gb3UgbG9va3VwLCBhbyBjaGVnYXIgYW8gZmltIGRhIHRhYmVsYSBleGVjdXRhcsOhIG5vdmEgYnVzY2EgZG9zIGRhZG9zIGNvbmZvcm1lIHBhZ2luYcOnw6NvLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgYHBvLWxvb2t1cGAuXHJcbiAgICovXHJcbiAgaW5maW5pdGVTY3JvbGw/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgbyBwZXJjZW50dWFsIG5lY2Vzc8OhcmlvIHBhcmEgZGlzcGFyYXIgbyBldmVudG8gc2hvdy1tb3JlLCBxdWUgw6kgcmVzcG9uc8OhdmVsIHBvciBjYXJyZWdhciBtYWlzIGRhZG9zIG5vIGNvbWJvLiBDYXNvIG8gdmFsb3Igc2VqYSBtYWlvciBxdWUgMTAwIG91IG1lbm9yIHF1ZSAwLCBvIHZhbG9yIHBhZHLDo28gc2Vyw6EgMTAwJS5cclxuICAgKiAqKkV4ZW1wbG9zKipcclxuICAgKiBgeyBpbmZpbml0ZVNjcm9sbERpc3RhbmNlOiA4MCB9YDogUXVhbmRvIGF0aW5naXIgODAlIGRvIHNjcm9sbCBkbyBjb21ibywgbyBzaG93LW1vcmUgc2Vyw6EgZGlzcGFyYWRvLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsOioqIGBwby1jb21ib2AuXHJcbiAgICovXHJcbiAgaW5maW5pdGVTY3JvbGxEaXN0YW5jZT86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHF1ZSBhIGFsdHVyYSBkbyBjb21wb25lbnRlIHNlcsOhIGF1dG8gYWp1c3TDoXZlbCwgcG9zc3VpbmRvIHVtYSBhbHR1cmEgbWluaW1hIHBvcsOpbSBhIGFsdHVyYSBtw6F4aW1hIHNlcsOhIGRlIGFjb3JkbyBjb20gbyBuw7ptZXJvIGRlIGl0ZW5zIHNlbGVjaW9uYWRvcyBlIGEgZXh0ZW5zw6NvIGRvcyBtZXNtb3MsIG1hbnRlbmRvLW9zIHNlbXByZSB2aXPDrXZlaXMuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tbXVsdGlzZWxlY3RgLCBgcG8tbG9va3VwYC5cclxuICAgKi9cclxuICBhdXRvSGVpZ2h0PzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZXJ2YWxvIHV0aWxpemFkbyBubyBgcG8tbnVtYmVyYC5cclxuICAgKi9cclxuICBzdGVwPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgbyBtb2RvIGRlIHBlc3F1aXNhIHV0aWxpemFkbyBubyBmaWx0cm8gZGEgbGlzdGEgZGUgc2VsZcOnw6NvOiBgc3RhcnRzV2l0aGAsIGBjb250YWluc2Agb3UgYGVuZHNXaXRoYC5cclxuICAgKiA+IFF1YW5kbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIHAtZmlsdGVyLXNlcnZpY2UgZXN0YSBwcm9wcmllZGFkZSBzZXLDoSBpZ25vcmFkYS5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1tdWx0aXNlbGVjdGAuXHJcbiAgICovXHJcbiAgZmlsdGVyTW9kZT86IFBvTXVsdGlzZWxlY3RGaWx0ZXJNb2RlO1xyXG5cclxuICAvKipcclxuICAgKiBWYWxvciBtw61uaW1vIGRlIGNhcmFjdGVyZXMgcGFyYSByZWFsaXphciBvIGZpbHRybyBubyBzZXJ2acOnbyBkbyBgcG8tY29tYm9gLlxyXG4gICAqL1xyXG4gIGZpbHRlck1pbmxlbmd0aD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGVzYWJpbGl0YSBvIGZpbHRybyBpbmljaWFsIG5vIHNlcnZpw6dvIGRvIGBwby1jb21ib2AsIHF1ZSDDqSBleGVjdXRhZG8gbm8gcHJpbWVpcm8gY2xpcXVlIG5vIGNhbXBvLlxyXG4gICAqL1xyXG4gIGRpc2FibGVkSW5pdEZpbHRlcj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlIHZlcmRhZGVpcm8sIGRlc2FiaWxpdGFyw6EgYSBidXNjYSBkZSB1bSBpdGVtIHZpYSBUQUIgbm8gYHBvLWNvbWJvYC5cclxuICAgKi9cclxuICBkaXNhYmxlZFRhYkZpbHRlcj86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEVzdGEgcHJvcHJpZWRhZGUgZGVmaW5lIGVtIHF1YW50byB0ZW1wbyAoZW0gbWlsaXNzZWd1bmRvcyksIGFndWFyZGEgcGFyYSBhY2lvbmFyIG8gZXZlbnRvIGRlIGZpbHRybyBhcMOzcyBjYWRhIHByZXNzaW9uYW1lbnRvIGRlIHRlY2xhLiBTZXLDoSB1dGlsaXphZGEgYXBlbmFzIHF1YW5kbyBob3V2ZXIgc2VydmnDp28gKGBwLWZpbHRlci1zZXJ2aWNlYCkuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tY29tYm9gLCBgcG8tbXVsdGlzZWxlY3RgLlxyXG4gICAqL1xyXG4gIGRlYm91bmNlVGltZT86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHF1ZSBvIGV2ZW50byBgcC1jaGFuZ2VgIHPDsyBzZXLDoSBkaXNwYXJhZG8gYW8gY2xpY2FyIG91IHByZXNzaW9uYXIgYSB0ZWNsYSBcIkVudGVyXCIgc29icmUgdW1hIG9ww6fDo28gc2VsZWNpb25hZGEgbm8gYHBvLWNvbWJvYC5cclxuICAgKi9cclxuICBjaGFuZ2VPbkVudGVyPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHF1ZSBhIGxpc3RhIGRlZmluaWRhIG5hIHByb3ByaWVkYWRlIHAtb3B0aW9ucyBzZXLDoSBvcmRlbmFkYSBwZWxhIGRlc2NyacOnw6NvLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgcG8tbXVsdGlzZWxlY3RcclxuICAgKi9cclxuICBzb3J0PzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogUGxhY2Vob2xkZXIgZG8gY2FtcG8gZGUgcGVzcXVpc2EgZG8gYHBvLW11bHRpc2VsZWN0YC5cclxuICAgKlxyXG4gICAqID4gQ2FzbyBvIG1lc21vIG7Do28gc2VqYSBpbmZvcm1hZG8sIG8gdmFsb3IgcGFkcsOjbyBzZXLDoSB0cmFkdXppZG8gY29tIGJhc2Ugbm8gaWRpb21hIGRvIG5hdmVnYWRvciAocHQsIGVzIGUgZW4pLlxyXG4gICAqL1xyXG4gIHBsYWNlaG9sZGVyU2VhcmNoPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBFc2NvbmRlIG8gY2FtcG8gZGUgcGVzcXVpc2EgZXhpc3RlbnRlIGRlbnRybyBkbyBkcm9wZG93biBkbyBgcG8tbXVsdGlzZWxlY3RgLlxyXG4gICAqL1xyXG4gIGhpZGVTZWFyY2g/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgbyBjYW1wbyBcIlNlbGVjaW9uYXIgdG9kb3NcIiBkbyBgcG8tbXVsdGlzZWxlY3RgIHNlcsOhIGVzY29uZGlkby5cclxuICAgKi9cclxuICBoaWRlU2VsZWN0QWxsPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGUgb2JqZXRvcyBkb3MgY2FtcG9zIHF1ZSBzZXLDo28gY3JpYWRvcyBuYSBidXNjYSBhdmFuw6dhZGEuXHJcbiAgICpcclxuICAgKiA+IENhc28gbsOjbyBzZWphIHBhc3NhZG8gdW0gb2JqZXRvIG91IGVudMOjbyBlbGUgZXN0ZWphIGVtIGJyYW5jbyBvIGxpbmsgZGUgYnVzY2EgYXZhbsOnYWRhIGZpY2Fyw6EgZXNjb25kaWRvLlxyXG4gICAqXHJcbiAgICogRXhlbXBsbyBkZSBVUkwgY29tIGJ1c2NhIGF2YW7Dp2FkYTpcclxuICAgKlxyXG4gICAqIGB1cmwgKyA/cGFnZT0xJnBhZ2VTaXplPTIwJm5hbWU9VG9ueSUyMFN0YXJrJm5pY2tuYW1lPUhvbWVtJTIwZGUlMjBGZXJyb2BcclxuICAgKlxyXG4gICAqIENhc28gYWxndW0gcGFyw6JtZXRybyBzZWphIHVtYSBsaXN0YSwgYSBjb25jYXRlbmHDp8OjbyDDqSBmZWl0YSB1dGlsaXphbmRvIHbDrXJndWxhLiBFeGVtcGxvOlxyXG4gICAqXHJcbiAgICogYHVybCArID9wYWdlPTEmcGFnZVNpemU9MjAmbmFtZT1Ub255JTIwU3RhcmssUGV0ZXIlMjBQYXJrZXIsR29oYW5gXHJcbiAgICovXHJcbiAgYWR2YW5jZWRGaWx0ZXJzPzogQXJyYXk8UG9Mb29rdXBBZHZhbmNlZEZpbHRlcj47XHJcbiAgLyoqXHJcbiAgICogcG9kZSBzZXIgdXRpbGl6YWRhIGVtIGNvbmp1bnRvIGNvbSBhIHByb3ByaWVkYWRlIGBvcHRpb25zYCBmb3LDp2FuZG8gbyBjb21wb25lbnRlIGEgcmVuZGVyaXphciB1bSBgcG8tc2VsZWN0YCBvdSBgcG8tcmFkaW8tZ3JvdXBgLlxyXG4gICAqXHJcbiAgICogVmFsb3JlcyBhY2VpdG9zOlxyXG4gICAqIC0gRm9yY2VPcHRpb25Db21wb25lbnRFbnVtLnJhZGlvR3JvdXBcclxuICAgKiAtIEZvcmNlT3B0aW9uQ29tcG9uZW50RW51bS5zZWxlY3RcclxuICAgKlxyXG4gICAqID5Fc3NhIHByb3ByaWVkYWRlIHNlcsOhIGlnbm9yYWRhIGNhc28gc2VqYSB1dGlsaXphZGEgZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYG9wdGlvbnNNdWx0aWAgZSBgb3B0aW9uc1NlcnZpY2VgLlxyXG4gICAqL1xyXG4gIGZvcmNlT3B0aW9uc0NvbXBvbmVudFR5cGU/OiBGb3JjZU9wdGlvbkNvbXBvbmVudEVudW07XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50byBkaXNwYXJhZG8gYW8gZmVjaGFyIG8gcG9wb3ZlciBkbyBnZXJlbmNpYWRvciBkZSBjb2x1bmFzIGFww7NzIGFsdGVyYXIgYXMgY29sdW5hcyB2aXPDrXZlaXMuXHJcbiAgICpcclxuICAgKiBPIGNvbXBvbmVudGUgZW52aWEgY29tbyBwYXLDom1ldHJvIHVtIGFycmF5IGRlIHN0cmluZyBjb20gYXMgY29sdW5hcyB2aXPDrXZlaXMgYXR1YWxpemFkYXMuXHJcbiAgICogUG9yIGV4ZW1wbG86IFtcImlkQ2FyZFwiLCBcIm5hbWVcIiwgXCJoaXJlU3RhdHVzXCIsIFwiYWdlXCJdLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXMqKjogYHBvLWxvb2t1cGBcclxuICAgKi9cclxuICBjaGFuZ2VWaXNpYmxlQ29sdW1ucz86IEZ1bmN0aW9uO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudG8gZGlzcGFyYWRvIGFvIGNsaWNhciBubyBib3TDo28gZGUgcmVzdGF1cmFyIHBhZHLDo28gbm8gZ2VyZW5jaWFkb3IgZGUgY29sdW5hcy5cclxuICAgKlxyXG4gICAqIE8gY29tcG9uZW50ZSBlbnZpYSBjb21vIHBhcsOibWV0cm8gdW0gYXJyYXkgZGUgc3RyaW5nIGNvbSBhcyBjb2x1bmFzIGNvbmZpZ3VyYWRhcyBpbmljaWFsbWVudGUuXHJcbiAgICogUG9yIGV4ZW1wbG86IFtcImlkQ2FyZFwiLCBcIm5hbWVcIiwgXCJoaXJlU3RhdHVzXCIsIFwiYWdlXCJdLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXMqKjogYHBvLWxvb2t1cGBcclxuICAgKi9cclxuICBjb2x1bW5SZXN0b3JlTWFuYWdlcj86IEZ1bmN0aW9uO1xyXG5cclxuICAvKipcclxuICAgKiBVUkwgcXVlIGRldmUgc2VyIGZlaXRhIGEgcmVxdWlzacOnw6NvIGNvbSBvcyBhcnF1aXZvcyBzZWxlY2lvbmFkb3MuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICB1cmw/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIERlZmluZSBzZSBvIGVudmlvIGRvIGFycXVpdm8gc2Vyw6EgYXV0b23DoXRpY28gYW8gc2VsZWNpb25hciBvIG1lc21vLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgYXV0b1VwbG9hZD86IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcm1pdGUgYSBzZWxlw6fDo28gZGUgZGlyZXTDs3Jpb3MgY29udGVuZG8gdW0gb3UgbWFpcyBhcnF1aXZvcyBwYXJhIGVudmlvLlxyXG4gICAqXHJcbiAgICogPiBBIGhhYmlsaXRhw6fDo28gZGVzdGEgcHJvcHJpZWRhZGUgc2UgcmVzdHJpbmdlIGFwZW5hcyDDoCBzZWxlw6fDo28gZGUgZGlyZXTDs3Jpb3MuXHJcbiAgICpcclxuICAgKiA+IERlZmluacOnw6NvIG7Do28gc3Vwb3J0YWRhIHBlbG8gYnJvd3NlciAqKkludGVybmV0IEV4cGxvcmVyKiosIHRvZGF2aWEgc2Vyw6EgcG9zc8OtdmVsIGEgc2VsZcOnw6NvIGRlIGFycXVpdm9zIHBhZHLDo28uXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBkaXJlY3Rvcnk/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBFeGliZSBhIMOhcmVhIG9uZGUgw6kgcG9zc8OtdmVsIGFycmFzdGFyIGUgc2VsZWNpb25hciBvcyBhcnF1aXZvcy4gUXVhbmRvIGVzdGl2ZXIgZGVmaW5pZGEsIG9taXRlIG8gYm90w6NvIHBhcmEgc2VsZcOnw6NvIGRlIGFycXVpdm9zXHJcbiAgICogYXV0b21hdGljYW1lbnRlLlxyXG4gICAqXHJcbiAgICogPiBSZWNvbWVuZGFtb3MgdXRpbGl6YXIgYXBlbmFzIHVtIGBwby11cGxvYWRgIGNvbSBlc3RhIGZ1bmNpb25hbGlkYWRlIHBvciB0ZWxhLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgZHJhZ0Ryb3A/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgZW0gKnBpeGVscyogYSBhbHR1cmEgZGEgw6FyZWEgb25kZSBwb2RlbSBzZXIgYXJyYXN0YWRvcyBvcyBhcnF1aXZvcy4gQSBhbHR1cmEgbcOtbmltYSBhY2VpdGEgw6kgYDE2MHB4YC5cclxuICAgKlxyXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBmdW5jaW9uYSBzb21lbnRlIHNlIGEgcHJvcHJpZWRhZGUgYHAtZHJhZy1kcm9wYCBlc3RpdmVyIGhhYmlsaXRhZGEuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBkcmFnRHJvcEhlaWdodD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogT2JqZXRvIHF1ZSBzZWd1ZSBhIGRlZmluacOnw6NvIGRhIGludGVyZmFjZSBgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zYCxcclxuICAgKiBxdWUgcG9zc2liaWxpdGEgZGVmaW5pciB0YW1hbmhvIG3DoXhpbW8vbcOtbmltbyBlIGV4dGVuc8OjbyBkb3MgYXJxdWl2b3MgcGVybWl0aWRvcy5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxyXG4gICAqL1xyXG4gIHJlc3RyaWN0aW9ucz86IFBvVXBsb2FkRmlsZVJlc3RyaWN0aW9ucztcclxuXHJcbiAgLyoqXHJcbiAgICogT2JqZXRvIHF1ZSBjb250w6ltIG9zIGNhYmXDp2FsaG9zIHF1ZSBzZXLDoSBlbnZpYWRvIG5hIHJlcXVpc2nDp8OjbyBkb3MgYXJxdWl2b3MuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBoZWFkZXJzPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB9O1xyXG5cclxuICAvKipcclxuICAgKiBPY3VsdGEgdmlzdWFsbWVudGUgYXMgaW5mb3JtYcOnw7VlcyBkZSByZXN0cmnDp8O1ZXMgcGFyYSBvIHVwbG9hZC5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxyXG4gICAqL1xyXG4gIGhpZGVSZXN0cmljdGlvbnNJbmZvPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogT21pdGUgbyBib3TDo28gZGUgc2VsZcOnw6NvIGRlIGFycXVpdm9zLlxyXG4gICAqXHJcbiAgICogPiBDYXNvIG8gdmFsb3IgZGVmaW5pZG8gc2VqYSBgdHJ1ZWAsIGNhYmVyw6EgYW8gZGVzZW52b2x2ZWRvciBhIHJlc3BvbnNhYmlsaWRhZGVcclxuICAgKiBwZWxhIGNoYW1hZGEgZG8gbcOpdG9kbyBgc2VsZWN0RmlsZXMoKWAgcGFyYSBzZWxlw6fDo28gZGUgYXJxdWl2b3MuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBoaWRlU2VsZWN0QnV0dG9uPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogT21pdGUgbyBib3TDo28gZGUgZW52aW8gZGUgYXJxdWl2b3MuXHJcbiAgICpcclxuICAgKiA+IENhc28gbyB2YWxvciBkZWZpbmlkbyBzZWphIGB0cnVlYCwgY2FiZXLDoSBhbyBkZXNlbnZvbHZlZG9yIGEgcmVzcG9uc2FiaWxpZGFkZVxyXG4gICAqIHBlbGEgY2hhbWFkYSBkbyBtw6l0b2RvIGBzZW5kRmlsZXMoKWAgcGFyYSBlbnZpbyBkbyhzKSBhcnF1aXZvKHMpIHNlbGVjaW9uYWRvKHMpLlxyXG4gICAqXHJcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXHJcbiAgICovXHJcbiAgaGlkZVNlbmRCdXR0b24/OiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvYnJpZ2F0w7NyaW8gc2Vyw6EgZXhpYmlkYS5cclxuICAgKlxyXG4gICAqID4gTsOjbyBzZXLDoSBleGliaWRhIGEgaW5kaWNhw6fDo28gc2U6XHJcbiAgICogLSBOw6NvIHBvc3N1aXIgYHAtaGVscGAgZS9vdSBgcC1sYWJlbGAuXHJcbiAgICovXHJcbiAgc2hvd1JlcXVpcmVkPzogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnRvIHNlcsOhIGRpc3BhcmFkbyBxdWFuZG8gb2NvcnJlciBhbGd1bSBlcnJvIG5vIGVudmlvIGRvIGFycXVpdm8uXHJcbiAgICogPiBQb3IgcGFyw6JtZXRybyBzZXLDoSBwYXNzYWRvIG8gb2JqZXRvIGRvIHJldG9ybm8gcXVlIMOpIGRvIHRpcG8gYEh0dHBFcnJvclJlc3BvbnNlYC5cclxuICAgKlxyXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxyXG4gICAqL1xyXG4gIG9uRXJyb3I/OiBGdW5jdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnRvIHNlcsOhIGRpc3BhcmFkbyBxdWFuZG8gbyBlbnZpbyBkbyBhcnF1aXZvIGZvciByZWFsaXphZG8gY29tIHN1Y2Vzc28uXHJcbiAgICogPiBQb3IgcGFyw6JtZXRybyBzZXLDoSBwYXNzYWRvIG8gb2JqZXRvIGRvIHJldG9ybm8gcXVlIMOpIGRvIHRpcG8gYEh0dHBSZXNwb25zZWAuXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBvblN1Y2Nlc3M/OiBGdW5jdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRnVuw6fDo28gcXVlIHNlcsOhIGV4ZWN1dGFkYSBubyBtb21lbnRvIGRlIHJlYWxpemFyIG8gZW52aW8gZG8gYXJxdWl2byxcclxuICAgKiBvbmRlIHNlcsOhIHBvc3PDrXZlbCBhZGljaW9uYXIgaW5mb3JtYcOnw7VlcyBhbyBwYXLDom1ldHJvIHF1ZSBzZXLDoSBlbnZpYWRvIG5hIHJlcXVpc2nDp8Ojby5cclxuICAgKiDDiSBwYXNzYWRvIHBvciBwYXLDom1ldHJvIHVtIG9iamV0byBjb20gbyBhcnF1aXZvIGUgYSBwcm9wcmllZGFkZSBkYXRhIG5lc3RhIHByb3ByaWVkYWRlIHBvZGUgc2VyIGluZm9ybWFkbyBhbGd1bSBkYWRvLFxyXG4gICAqIHF1ZSBzZXLDoSBlbnZpYWRvIGVtIGNvbmp1bnRvIGNvbSBvIGFycXVpdm8gbmEgcmVxdWlzacOnw6NvLCBwb3IgZXhlbXBsbzpcclxuICAgKlxyXG4gICAqIGBgYFxyXG4gICAqICAgZXZlbnQuZGF0YSA9IHtpZDogJ2lkIGRvIHVzdcOhcmlvJ307XHJcbiAgICogYGBgXHJcbiAgICpcclxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcclxuICAgKi9cclxuICBvblVwbG9hZD86IEZ1bmN0aW9uO1xyXG59XHJcbiJdfQ==
@@ -116,7 +116,7 @@ export class PoDynamicFormFieldsBaseComponent {
116
116
  if (this.isNumberType(field, type)) {
117
117
  return 'number';
118
118
  }
119
- else if (this.isCurrencyType(field, type)) {
119
+ else if (this.isCurrencyType(field, type) || type === PoDynamicFieldType.Decimal) {
120
120
  return 'decimal';
121
121
  }
122
122
  else if (this.isSelect(field)) {
@@ -257,4 +257,4 @@ export class PoDynamicFormFieldsBaseComponent {
257
257
  type: Input,
258
258
  args: ['p-validate-fields']
259
259
  }] }); })();
260
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBT3RFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFnRHZCO0lBL0NHLFNBQVMsQ0FBVTtJQUVoQixZQUFZLENBQVU7SUFFM0IsUUFBUSxDQUFxQjtJQUV2QixZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUV4QyxZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVqRSwrS0FBK0s7SUFDckosV0FBVyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFbEMsZUFBZSxDQUFVO0lBRXZELGFBQWEsR0FBc0MsRUFBRSxDQUFDO0lBRTlDLE9BQU8sQ0FBNEI7SUFDbkMsZUFBZSxDQUFnQjtJQUMvQixNQUFNLEdBQVMsRUFBRSxDQUFDO0lBRTFCLHFHQUFxRztJQUNyRyxJQUF1QixNQUFNLENBQUMsS0FBZ0M7UUFDNUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FB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LENBQUM7SUFFTyxRQUFRLENBQUMsS0FBeUI7UUFDeEMsTUFBTSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFFeEMsT0FBTyxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTyxVQUFVLENBQUMsS0FBeUI7UUFDMUMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQztRQUV2QixPQUFPLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxVQUFVLENBQUMsS0FBYTtRQUM5QixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7MEZBN1FVLGdDQUFnQzs2REFBaEMsZ0NBQWdDOzt1RkFBaEMsZ0NBQWdDO2NBRDVDLFNBQVM7Z0VBRWUsU0FBUztrQkFBL0IsS0FBSzttQkFBQyxjQUFjO1lBRUssWUFBWTtrQkFBckMsS0FBSzttQkFBQyxpQkFBaUI7WUFFSCxRQUFRO2tCQUE1QixLQUFLO21CQUFDLFlBQVk7WUFFUSxZQUFZO2tCQUF0QyxNQUFNO21CQUFDLGlCQUFpQjtZQUVDLFlBQVk7a0JBQXJDLE1BQU07bUJBQUMsZ0JBQWdCO1lBR0UsV0FBVztrQkFBcEMsTUFBTTttQkFBQyxnQkFBZ0I7WUFFTSxlQUFlO2tCQUE1QyxLQUFLO21CQUFDLHFCQUFxQjtZQVNMLE1BQU07a0JBQTVCLEtBQUs7bUJBQUMsVUFBVTtZQVNLLEtBQUs7a0JBQTFCLEtBQUs7bUJBQUMsU0FBUztZQVFnQixjQUFjO2tCQUE3QyxLQUFLO21CQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRpdGxlQ2FzZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgaXNUeXBlb2YsIHNvcnRGaWVsZHMgfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscy91dGlsJztcclxuXHJcbmltcG9ydCB7IGdldEdyaWRDb2x1bW5zQ2xhc3NlcywgaXNWaXNpYmxlRmllbGQgfSBmcm9tICcuLi8uLi9wby1keW5hbWljLnV0aWwnO1xyXG5pbXBvcnQgeyBQb0R5bmFtaWNGaWVsZFR5cGUgfSBmcm9tICcuLi8uLi9wby1keW5hbWljLWZpZWxkLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZCB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZm9ybS1maWVsZC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRJbnRlcm5hbCB9IGZyb20gJy4vcG8tZHluYW1pYy1mb3JtLWZpZWxkLWludGVybmFsLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvQ29tYm9GaWx0ZXIgfSBmcm9tICcuLi8uLi8uLi9wby1maWVsZC9wby1jb21iby9pbnRlcmZhY2VzL3BvLWNvbWJvLWZpbHRlci5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBQb0xvb2t1cEZpbHRlciB9IGZyb20gJy4uLy4uLy4uL3BvLWZpZWxkL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1maWx0ZXIuaW50ZXJmYWNlJztcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgY2xhc3MgUG9EeW5hbWljRm9ybUZpZWxkc0Jhc2VDb21wb25lbnQge1xyXG4gIEBJbnB1dCgncC1hdXRvLWZvY3VzJykgYXV0b0ZvY3VzPzogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoJ3AtZGlzYWJsZWQtZm9ybScpIGRpc2FibGVkRm9ybTogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KCdwLXZhbGlkYXRlJykgdmFsaWRhdGU/OiBzdHJpbmcgfCBGdW5jdGlvbjtcclxuXHJcbiAgQE91dHB1dCgncC1mb3JtLXZhbGlkYXRlJykgZm9ybVZhbGlkYXRlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIEBPdXRwdXQoJ3AtZmllbGRzQ2hhbmdlJykgZmllbGRzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIC8vIEV2ZW50byBkaXNwYXJhZG8gc2UgZXhpc3RpciBvcHRpb25zU2VydmljZSBlbSB2aXNpYmxlRmllbGQuIE5lY2Vzc8OhcmlvIHJlc2dhdGFyIHJlZmVyw6puY2lhIGRvIG9iamV0byBzZWxlY2lvbmFkbyBwYXJhIHF1YW5kbyBzZSB0cmF0YXIgZGUgcmVjZWJpbWVudG8gZGUgb3DDp8O1ZXMgdmlhIHNlcnZpw6dvLlxyXG4gIEBPdXRwdXQoJ3Atb2JqZWN0LXZhbHVlJykgb2JqZWN0VmFsdWUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQElucHV0KCdwLXZhbGlkYXRlLW9uLWlucHV0JykgdmFsaWRhdGVPbklucHV0OiBib29sZWFuO1xyXG5cclxuICB2aXNpYmxlRmllbGRzOiBBcnJheTxQb0R5bmFtaWNGb3JtRmllbGRJbnRlcm5hbD4gPSBbXTtcclxuXHJcbiAgcHJpdmF0ZSBfZmllbGRzOiBBcnJheTxQb0R5bmFtaWNGb3JtRmllbGQ+O1xyXG4gIHByaXZhdGUgX3ZhbGlkYXRlRmllbGRzOiBBcnJheTxzdHJpbmc+O1xyXG4gIHByaXZhdGUgX3ZhbHVlPzogYW55ID0ge307XHJcblxyXG4gIC8vIGFycmF5IGRlIG9iamV0b3MgcXVlIGltcGxlbWVudGFtIGEgaW50ZXJmYWNlIFBvRHluYW1pY0Zvcm1GaWVsZCwgcXVlIHNlcsOjbyBleGliaWRvcyBubyBjb21wb25lbnRlLlxyXG4gIEBJbnB1dCgncC1maWVsZHMnKSBzZXQgZmllbGRzKHZhbHVlOiBBcnJheTxQb0R5bmFtaWNGb3JtRmllbGQ+KSB7XHJcbiAgICB0aGlzLl9maWVsZHMgPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IFsuLi52YWx1ZV0gOiBbXTtcclxuICB9XHJcblxyXG4gIGdldCBmaWVsZHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZmllbGRzO1xyXG4gIH1cclxuXHJcbiAgLy8gdmFsb3IgcXVlIHNlcsOhIHV0aWxpemFkbyBwYXJhIGluaWNpYXIgdmFsb3Igbm8gY29tcG9uZW50ZS5cclxuICBASW5wdXQoJ3AtdmFsdWUnKSBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZSAmJiBpc1R5cGVvZih2YWx1ZSwgJ29iamVjdCcpID8gdmFsdWUgOiB7fTtcclxuICB9XHJcblxyXG4gIGdldCB2YWx1ZSgpIHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgncC12YWxpZGF0ZS1maWVsZHMnKSBzZXQgdmFsaWRhdGVGaWVsZHModmFsdWU6IEFycmF5PHN0cmluZz4pIHtcclxuICAgIHRoaXMuX3ZhbGlkYXRlRmllbGRzID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyBbLi4udmFsdWVdIDogW107XHJcbiAgfVxyXG5cclxuICBnZXQgdmFsaWRhdGVGaWVsZHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmFsaWRhdGVGaWVsZHM7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRpdGxlQ2FzZVBpcGU6IFRpdGxlQ2FzZVBpcGUpIHt9XHJcblxyXG4gIGNvbXBhcmVUbyh2YWx1ZSwgY29tcGFyZVRvKSB7XHJcbiAgICByZXR1cm4gdmFsdWUgPT09IGNvbXBhcmVUbztcclxuICB9XHJcblxyXG4gIC8vIHJldG9ybmEgdW0gYXJyYXkgY29tIG9zIG9iamV0b3MgY29uZmlndXJhZG9zIGUgdmlzw612ZWlzLlxyXG4gIHByb3RlY3RlZCBnZXRWaXNpYmxlRmllbGRzKCkge1xyXG4gICAgY29uc3QgdmlzaWJsZUZpZWxkcyA9IFtdO1xyXG5cclxuICAgIHRoaXMuZmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xyXG4gICAgICBpZiAodGhpcy5leGlzdHNQcm9wZXJ0eSh2aXNpYmxlRmllbGRzLCBmaWVsZC5wcm9wZXJ0eSkpIHtcclxuICAgICAgICB0aGlzLnByaW50RXJyb3IoXHJcbiAgICAgICAgICBgXCJwby1keW5hbWljLWZvcm1cIiBwcm9wZXJ0eSBcIiR7ZmllbGQucHJvcGVydHl9XCIgZXN0w6EgZHVwbGljYWRvLiBJbnRlcmZhY2U6IFBvRHluYW1pY0Zvcm1GaWVsZC5gXHJcbiAgICAgICAgKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghZmllbGRbJ3Byb3BlcnR5J10pIHtcclxuICAgICAgICB0aGlzLnByaW50RXJyb3IoJ1wicG8tZHluYW1pYy1mb3JtXCIgw4kgb2JyaWdhdMOzcmlvIHNlciBlc3BlY2lmaWNhZG8gdW0gcHJvcGVydHkuJyk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoaXNWaXNpYmxlRmllbGQoZmllbGQpKSB7XHJcbiAgICAgICAgdmlzaWJsZUZpZWxkcy5wdXNoKHRoaXMuY3JlYXRlRmllbGQoZmllbGQpKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIHNvcnRGaWVsZHModmlzaWJsZUZpZWxkcyk7XHJcbiAgfVxyXG5cclxuICAvLyBjb252ZXJ0ZSB1bSBhcnJheSBlbSBzdHJpbmcgcGFyYSB1bSBhcnJheSBkZSBvYmpldG9zIHF1ZSBjb250ZW0gbGFiZWwgZSB2YWx1ZS5cclxuICBwcml2YXRlIGNvbnZlcnRPcHRpb25zKG9wdGlvbnM6IEFycmF5PGFueT4pOiBBcnJheTx7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfT4ge1xyXG4gICAgY29uc3QgZXZlcnlPcHRpb25TdHJpbmcgPSBvcHRpb25zLmV2ZXJ5KG9wdGlvbiA9PiB0eXBlb2Ygb3B0aW9uID09PSAnc3RyaW5nJyk7XHJcblxyXG4gICAgaWYgKGV2ZXJ5T3B0aW9uU3RyaW5nKSB7XHJcbiAgICAgIHJldHVybiBvcHRpb25zLm1hcCh2YWx1ZSA9PiAoeyBsYWJlbDogdmFsdWUsIHZhbHVlIH0pKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gb3B0aW9ucztcclxuICB9XHJcblxyXG4gIC8vIGNyaWEgdW0gbm92byBvYmpldG8gY29tIGFzIGNsYXNzZXMgZGUgZ3JpZCBzeXN0ZW0sIGNvbSBjb250cm9sICh0aXBvIGRvIGNvbXBvbmVudGUpIGUgbGFiZWwgZGVmYXVsdC5cclxuICBwcml2YXRlIGNyZWF0ZUZpZWxkKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpOiBQb0R5bmFtaWNGb3JtRmllbGRJbnRlcm5hbCB7XHJcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5nZXRDb21wb25lbnRDb250cm9sKGZpZWxkKTtcclxuICAgIGNvbnN0IG9wdGlvbnMgPSAhIWZpZWxkLm9wdGlvbnMgPyB0aGlzLmNvbnZlcnRPcHRpb25zKGZpZWxkLm9wdGlvbnMpIDogdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgZm9jdXMgPSB0aGlzLmhhc0ZvY3VzKGZpZWxkKTtcclxuICAgIGNvbnN0IHR5cGUgPSBmaWVsZCAmJiBmaWVsZC50eXBlID8gZmllbGQudHlwZS50b0xvY2FsZUxvd2VyQ2FzZSgpIDogJ3N0cmluZyc7XHJcblxyXG4gICAgY29uc3QgY29tcG9uZW50Q2xhc3MgPSBnZXRHcmlkQ29sdW1uc0NsYXNzZXMoXHJcbiAgICAgIGZpZWxkLmdyaWRDb2x1bW5zLFxyXG4gICAgICBmaWVsZC5vZmZzZXRDb2x1bW5zLFxyXG4gICAgICB7XHJcbiAgICAgICAgc21HcmlkOiBmaWVsZC5ncmlkU21Db2x1bW5zLFxyXG4gICAgICAgIG1kR3JpZDogZmllbGQuZ3JpZE1kQ29sdW1ucyxcclxuICAgICAgICBsZ0dyaWQ6IGZpZWxkLmdyaWRMZ0NvbHVtbnMsXHJcbiAgICAgICAgeGxHcmlkOiBmaWVsZC5ncmlkWGxDb2x1bW5zXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBzbU9mZnNldDogZmllbGQub2Zmc2V0U21Db2x1bW5zLFxyXG4gICAgICAgIG1kT2Zmc2V0OiBmaWVsZC5vZmZzZXRNZENvbHVtbnMsXHJcbiAgICAgICAgbGdPZmZzZXQ6IGZpZWxkLm9mZnNldExnQ29sdW1ucyxcclxuICAgICAgICB4bE9mZnNldDogZmllbGQub2Zmc2V0WGxDb2x1bW5zXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICBzbVB1bGw6IGZpZWxkLmdyaWRTbVB1bGwsXHJcbiAgICAgICAgbWRQdWxsOiBmaWVsZC5ncmlkTWRQdWxsLFxyXG4gICAgICAgIGxnUHVsbDogZmllbGQuZ3JpZExnUHVsbCxcclxuICAgICAgICB4bFB1bGw6IGZpZWxkLmdyaWRYbFB1bGxcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBsYWJlbDogdGhpcy50aXRsZUNhc2VQaXBlLnRyYW5zZm9ybShmaWVsZC5wcm9wZXJ0eSksXHJcbiAgICAgIG1hc2tGb3JtYXRNb2RlbDogdGhpcy5jb21wYXJlVG8odHlwZSwgUG9EeW5hbWljRmllbGRUeXBlLlRpbWUpLFxyXG4gICAgICAuLi5maWVsZCxcclxuICAgICAgY29tcG9uZW50Q2xhc3MsXHJcbiAgICAgIGNvbnRyb2wsXHJcbiAgICAgIGZvY3VzLFxyXG4gICAgICBvcHRpb25zXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBleGlzdHNQcm9wZXJ0eShmaWVsZHM6IEFycmF5PFBvRHluYW1pY0Zvcm1GaWVsZD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBmaWVsZHMuc29tZShmaWVsZCA9PiBmaWVsZC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpO1xyXG4gIH1cclxuXHJcbiAgLy8gcmVjdXBlcmEgbyBjb21wb25lbnRlIGRlIGFjb3JkbyBjb20gYWxndW1hcyByZWdyYXMgZG8gZmllbGQuXHJcbiAgcHJpdmF0ZSBnZXRDb21wb25lbnRDb250cm9sKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQgPSA8YW55Pnt9KSB7XHJcbiAgICBjb25zdCB0eXBlID0gZmllbGQgJiYgZmllbGQudHlwZSA/IGZpZWxkLnR5cGUudG9Mb2NhbGVMb3dlckNhc2UoKSA6ICdzdHJpbmcnO1xyXG5cclxuICAgIGNvbnN0IGZvcmNlT3B0aW9uQ29tcG9uZW50ID0gdGhpcy52ZXJpZnlmb3JjZU9wdGlvbkNvbXBvbmVudChmaWVsZCk7XHJcbiAgICBpZiAoZm9yY2VPcHRpb25Db21wb25lbnQpIHtcclxuICAgICAgY29uc3QgeyBmb3JjZU9wdGlvbnNDb21wb25lbnRUeXBlIH0gPSBmaWVsZDtcclxuICAgICAgcmV0dXJuIGZvcmNlT3B0aW9uc0NvbXBvbmVudFR5cGU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaXNOdW1iZXJUeXBlKGZpZWxkLCB0eXBlKSkge1xyXG4gICAgICByZXR1cm4gJ251bWJlcic7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNDdXJyZW5jeVR5cGUoZmllbGQsIHR5cGUpKSB7XHJcbiAgICAgIHJldHVybiAnZGVjaW1hbCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNTZWxlY3QoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAnc2VsZWN0JztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc1JhZGlvR3JvdXAoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAncmFkaW9Hcm91cCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNDaGVja2JveEdyb3VwKGZpZWxkKSkge1xyXG4gICAgICByZXR1cm4gJ2NoZWNrYm94R3JvdXAnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzTXVsdGlzZWxlY3QoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAnbXVsdGlzZWxlY3QnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmVUbyh0eXBlLCBQb0R5bmFtaWNGaWVsZFR5cGUuQm9vbGVhbikpIHtcclxuICAgICAgcmV0dXJuICdzd2l0Y2gnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmVUbyh0eXBlLCBQb0R5bmFtaWNGaWVsZFR5cGUuRGF0ZSkgfHwgdGhpcy5jb21wYXJlVG8odHlwZSwgUG9EeW5hbWljRmllbGRUeXBlLkRhdGVUaW1lKSkge1xyXG4gICAgICByZXR1cm4gZmllbGQucmFuZ2UgPyAnZGF0ZXBpY2tlcnJhbmdlJyA6ICdkYXRlcGlja2VyJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5jb21wYXJlVG8odHlwZSwgUG9EeW5hbWljRmllbGRUeXBlLlRpbWUpKSB7XHJcbiAgICAgIGZpZWxkLm1hc2sgPSBmaWVsZC5tYXNrIHx8ICc5OTo5OSc7XHJcblxyXG4gICAgICByZXR1cm4gJ2lucHV0JztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0NvbWJvKGZpZWxkKSkge1xyXG4gICAgICByZXR1cm4gJ2NvbWJvJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0xvb2t1cChmaWVsZCkpIHtcclxuICAgICAgcmV0dXJuICdsb29rdXAnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzVGV4dGFyZWEoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAndGV4dGFyZWEnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzUGFzc3dvcmQoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAncGFzc3dvcmQnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzVXBsb2FkKGZpZWxkKSkge1xyXG4gICAgICByZXR1cm4gJ3VwbG9hZCc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuICdpbnB1dCc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhc0ZvY3VzKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcclxuICAgIHJldHVybiAhIXRoaXMuYXV0b0ZvY3VzICYmIHRoaXMuYXV0b0ZvY3VzID09PSBmaWVsZC5wcm9wZXJ0eTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNDaGVja2JveEdyb3VwKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcclxuICAgIGNvbnN0IHsgb3B0aW9uc1NlcnZpY2UsIG9wdGlvbnNNdWx0aSwgb3B0aW9ucyB9ID0gZmllbGQ7XHJcblxyXG4gICAgcmV0dXJuICFvcHRpb25zU2VydmljZSAmJiBvcHRpb25zTXVsdGkgJiYgISFvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoIDw9IDM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzQ29tYm8oZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBvcHRpb25zU2VydmljZSB9ID0gZmllbGQ7XHJcblxyXG4gICAgcmV0dXJuICEhb3B0aW9uc1NlcnZpY2UgJiYgKGlzVHlwZW9mKG9wdGlvbnNTZXJ2aWNlLCAnc3RyaW5nJykgfHwgdGhpcy5pc0NvbWJvRmlsdGVyKG9wdGlvbnNTZXJ2aWNlKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzQ3VycmVuY3lUeXBlKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIHR5cGU6IHN0cmluZykge1xyXG4gICAgY29uc3QgeyBtYXNrLCBwYXR0ZXJuIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5jb21wYXJlVG8odHlwZSwgUG9EeW5hbWljRmllbGRUeXBlLkN1cnJlbmN5KSAmJiAhbWFzayAmJiAhcGF0dGVybjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNMb29rdXBGaWx0ZXIob2JqZWN0OiBhbnkpOiBvYmplY3QgaXMgUG9Mb29rdXBGaWx0ZXIge1xyXG4gICAgcmV0dXJuIG9iamVjdCAmJiAoPFBvTG9va3VwRmlsdGVyPm9iamVjdCkuZ2V0T2JqZWN0QnlWYWx1ZSAhPT0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0NvbWJvRmlsdGVyKG9iamVjdDogYW55KTogb2JqZWN0IGlzIFBvQ29tYm9GaWx0ZXIge1xyXG4gICAgcmV0dXJuIG9iamVjdCAmJiAoPFBvQ29tYm9GaWx0ZXI+b2JqZWN0KS5nZXRGaWx0ZXJlZERhdGEgIT09IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNMb29rdXAoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBzZWFyY2hTZXJ2aWNlIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gISFzZWFyY2hTZXJ2aWNlICYmIChpc1R5cGVvZihzZWFyY2hTZXJ2aWNlLCAnc3RyaW5nJykgfHwgdGhpcy5pc0xvb2t1cEZpbHRlcihzZWFyY2hTZXJ2aWNlKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzTXVsdGlzZWxlY3QoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBvcHRpb25zU2VydmljZSwgb3B0aW9uc011bHRpLCBvcHRpb25zIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gb3B0aW9uc011bHRpICYmICghIW9wdGlvbnNTZXJ2aWNlIHx8ICghIW9wdGlvbnMgJiYgb3B0aW9ucy5sZW5ndGggPiAzKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzTnVtYmVyVHlwZShmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkLCB0eXBlOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHsgbWFzaywgcGF0dGVybiB9ID0gZmllbGQ7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuY29tcGFyZVRvKHR5cGUsIFBvRHluYW1pY0ZpZWxkVHlwZS5OdW1iZXIpICYmICFtYXNrICYmICFwYXR0ZXJuO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1Bhc3N3b3JkKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcclxuICAgIGNvbnN0IHsgc2VjcmV0IH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gc2VjcmV0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1JhZGlvR3JvdXAoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBvcHRpb25zTXVsdGksIG9wdGlvbnMgfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiAhb3B0aW9uc011bHRpICYmICEhb3B0aW9ucyAmJiBvcHRpb25zLmxlbmd0aCA8PSAzO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1VwbG9hZChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IHVybCwgdHlwZSB9ID0gZmllbGQ7XHJcblxyXG4gICAgcmV0dXJuIHVybCAmJiB0eXBlID09PSAndXBsb2FkJztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdmVyaWZ5Zm9yY2VPcHRpb25Db21wb25lbnQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBvcHRpb25zTXVsdGksIG9wdGlvbnNTZXJ2aWNlLCBmb3JjZU9wdGlvbnNDb21wb25lbnRUeXBlIH0gPSBmaWVsZDtcclxuXHJcbiAgICBpZiAoZm9yY2VPcHRpb25zQ29tcG9uZW50VHlwZSAmJiAhb3B0aW9uc011bHRpICYmICFvcHRpb25zU2VydmljZSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNTZWxlY3QoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBvcHRpb25zTXVsdGksIG9wdGlvbnMgfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiAhb3B0aW9uc011bHRpICYmICEhb3B0aW9ucyAmJiBvcHRpb25zLmxlbmd0aCA+IDM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzVGV4dGFyZWEoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyByb3dzIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gcm93cyAmJiByb3dzID49IDM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByaW50RXJyb3IoZXJyb3I6IHN0cmluZykge1xyXG4gICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy1iYXNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBT3RFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFnRHZCO0lBL0NHLFNBQVMsQ0FBVTtJQUVoQixZQUFZLENBQVU7SUFFM0IsUUFBUSxDQUFxQjtJQUV2QixZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUV4QyxZQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVqRSwrS0FBK0s7SUFDckosV0FBVyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFbEMsZUFBZSxDQUFVO0lBRXZELGFBQWEsR0FBc0MsRUFBRSxDQUFDO0lBRTlDLE9BQU8sQ0FBNEI7SUFDbkMsZUFBZSxDQUFnQjtJQUMvQixNQUFNLEdBQVMsRUFBRSxDQUFDO0lBRTFCLHFHQUFxRztJQUNyRyxJQUF1QixNQUFNLENBQUMsS0FBZ0M7UUFDNUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FB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QUM7U0FDYjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFFBQVEsQ0FBQyxLQUF5QjtRQUN4QyxNQUFNLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxHQUFHLEtBQUssQ0FBQztRQUV4QyxPQUFPLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVPLFVBQVUsQ0FBQyxLQUF5QjtRQUMxQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBRXZCLE9BQU8sSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVPLFVBQVUsQ0FBQyxLQUFhO1FBQzlCLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsQ0FBQzswRkE3UVUsZ0NBQWdDOzZEQUFoQyxnQ0FBZ0M7O3VGQUFoQyxnQ0FBZ0M7Y0FENUMsU0FBUztnRUFFZSxTQUFTO2tCQUEvQixLQUFLO21CQUFDLGNBQWM7WUFFSyxZQUFZO2tCQUFyQyxLQUFLO21CQUFDLGlCQUFpQjtZQUVILFFBQVE7a0JBQTVCLEtBQUs7bUJBQUMsWUFBWTtZQUVRLFlBQVk7a0JBQXRDLE1BQU07bUJBQUMsaUJBQWlCO1lBRUMsWUFBWTtrQkFBckMsTUFBTTttQkFBQyxnQkFBZ0I7WUFHRSxXQUFXO2tCQUFwQyxNQUFNO21CQUFDLGdCQUFnQjtZQUVNLGVBQWU7a0JBQTVDLEtBQUs7bUJBQUMscUJBQXFCO1lBU0wsTUFBTTtrQkFBNUIsS0FBSzttQkFBQyxVQUFVO1lBU0ssS0FBSztrQkFBMUIsS0FBSzttQkFBQyxTQUFTO1lBUWdCLGNBQWM7a0JBQTdDLEtBQUs7bUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5wdXQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGl0bGVDYXNlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBpc1R5cGVvZiwgc29ydEZpZWxkcyB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzL3V0aWwnO1xyXG5cclxuaW1wb3J0IHsgZ2V0R3JpZENvbHVtbnNDbGFzc2VzLCBpc1Zpc2libGVGaWVsZCB9IGZyb20gJy4uLy4uL3BvLWR5bmFtaWMudXRpbCc7XHJcbmltcG9ydCB7IFBvRHluYW1pY0ZpZWxkVHlwZSB9IGZyb20gJy4uLy4uL3BvLWR5bmFtaWMtZmllbGQtdHlwZS5lbnVtJztcclxuaW1wb3J0IHsgUG9EeW5hbWljRm9ybUZpZWxkIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1GaWVsZEludGVybmFsIH0gZnJvbSAnLi9wby1keW5hbWljLWZvcm0tZmllbGQtaW50ZXJuYWwuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgUG9Db21ib0ZpbHRlciB9IGZyb20gJy4uLy4uLy4uL3BvLWZpZWxkL3BvLWNvbWJvL2ludGVyZmFjZXMvcG8tY29tYm8tZmlsdGVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFBvTG9va3VwRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vcG8tZmllbGQvcG8tbG9va3VwL2ludGVyZmFjZXMvcG8tbG9va3VwLWZpbHRlci5pbnRlcmZhY2UnO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBjbGFzcyBQb0R5bmFtaWNGb3JtRmllbGRzQmFzZUNvbXBvbmVudCB7XHJcbiAgQElucHV0KCdwLWF1dG8tZm9jdXMnKSBhdXRvRm9jdXM/OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgncC1kaXNhYmxlZC1mb3JtJykgZGlzYWJsZWRGb3JtOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoJ3AtdmFsaWRhdGUnKSB2YWxpZGF0ZT86IHN0cmluZyB8IEZ1bmN0aW9uO1xyXG5cclxuICBAT3V0cHV0KCdwLWZvcm0tdmFsaWRhdGUnKSBmb3JtVmFsaWRhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQE91dHB1dCgncC1maWVsZHNDaGFuZ2UnKSBmaWVsZHNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgLy8gRXZlbnRvIGRpc3BhcmFkbyBzZSBleGlzdGlyIG9wdGlvbnNTZXJ2aWNlIGVtIHZpc2libGVGaWVsZC4gTmVjZXNzw6FyaW8gcmVzZ2F0YXIgcmVmZXLDqm5jaWEgZG8gb2JqZXRvIHNlbGVjaW9uYWRvIHBhcmEgcXVhbmRvIHNlIHRyYXRhciBkZSByZWNlYmltZW50byBkZSBvcMOnw7VlcyB2aWEgc2VydmnDp28uXHJcbiAgQE91dHB1dCgncC1vYmplY3QtdmFsdWUnKSBvYmplY3RWYWx1ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBASW5wdXQoJ3AtdmFsaWRhdGUtb24taW5wdXQnKSB2YWxpZGF0ZU9uSW5wdXQ6IGJvb2xlYW47XHJcblxyXG4gIHZpc2libGVGaWVsZHM6IEFycmF5PFBvRHluYW1pY0Zvcm1GaWVsZEludGVybmFsPiA9IFtdO1xyXG5cclxuICBwcml2YXRlIF9maWVsZHM6IEFycmF5PFBvRHluYW1pY0Zvcm1GaWVsZD47XHJcbiAgcHJpdmF0ZSBfdmFsaWRhdGVGaWVsZHM6IEFycmF5PHN0cmluZz47XHJcbiAgcHJpdmF0ZSBfdmFsdWU/OiBhbnkgPSB7fTtcclxuXHJcbiAgLy8gYXJyYXkgZGUgb2JqZXRvcyBxdWUgaW1wbGVtZW50YW0gYSBpbnRlcmZhY2UgUG9EeW5hbWljRm9ybUZpZWxkLCBxdWUgc2Vyw6NvIGV4aWJpZG9zIG5vIGNvbXBvbmVudGUuXHJcbiAgQElucHV0KCdwLWZpZWxkcycpIHNldCBmaWVsZHModmFsdWU6IEFycmF5PFBvRHluYW1pY0Zvcm1GaWVsZD4pIHtcclxuICAgIHRoaXMuX2ZpZWxkcyA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gWy4uLnZhbHVlXSA6IFtdO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGZpZWxkcygpIHtcclxuICAgIHJldHVybiB0aGlzLl9maWVsZHM7XHJcbiAgfVxyXG5cclxuICAvLyB2YWxvciBxdWUgc2Vyw6EgdXRpbGl6YWRvIHBhcmEgaW5pY2lhciB2YWxvciBubyBjb21wb25lbnRlLlxyXG4gIEBJbnB1dCgncC12YWx1ZScpIHNldCB2YWx1ZSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlICYmIGlzVHlwZW9mKHZhbHVlLCAnb2JqZWN0JykgPyB2YWx1ZSA6IHt9O1xyXG4gIH1cclxuXHJcbiAgZ2V0IHZhbHVlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCdwLXZhbGlkYXRlLWZpZWxkcycpIHNldCB2YWxpZGF0ZUZpZWxkcyh2YWx1ZTogQXJyYXk8c3RyaW5nPikge1xyXG4gICAgdGhpcy5fdmFsaWRhdGVGaWVsZHMgPSBBcnJheS5pc0FycmF5KHZhbHVlKSA/IFsuLi52YWx1ZV0gOiBbXTtcclxuICB9XHJcblxyXG4gIGdldCB2YWxpZGF0ZUZpZWxkcygpIHtcclxuICAgIHJldHVybiB0aGlzLl92YWxpZGF0ZUZpZWxkcztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdGl0bGVDYXNlUGlwZTogVGl0bGVDYXNlUGlwZSkge31cclxuXHJcbiAgY29tcGFyZVRvKHZhbHVlLCBjb21wYXJlVG8pIHtcclxuICAgIHJldHVybiB2YWx1ZSA9PT0gY29tcGFyZVRvO1xyXG4gIH1cclxuXHJcbiAgLy8gcmV0b3JuYSB1bSBhcnJheSBjb20gb3Mgb2JqZXRvcyBjb25maWd1cmFkb3MgZSB2aXPDrXZlaXMuXHJcbiAgcHJvdGVjdGVkIGdldFZpc2libGVGaWVsZHMoKSB7XHJcbiAgICBjb25zdCB2aXNpYmxlRmllbGRzID0gW107XHJcblxyXG4gICAgdGhpcy5maWVsZHMuZm9yRWFjaChmaWVsZCA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmV4aXN0c1Byb3BlcnR5KHZpc2libGVGaWVsZHMsIGZpZWxkLnByb3BlcnR5KSkge1xyXG4gICAgICAgIHRoaXMucHJpbnRFcnJvcihcclxuICAgICAgICAgIGBcInBvLWR5bmFtaWMtZm9ybVwiIHByb3BlcnR5IFwiJHtmaWVsZC5wcm9wZXJ0eX1cIiBlc3TDoSBkdXBsaWNhZG8uIEludGVyZmFjZTogUG9EeW5hbWljRm9ybUZpZWxkLmBcclxuICAgICAgICApO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFmaWVsZFsncHJvcGVydHknXSkge1xyXG4gICAgICAgIHRoaXMucHJpbnRFcnJvcignXCJwby1keW5hbWljLWZvcm1cIiDDiSBvYnJpZ2F0w7NyaW8gc2VyIGVzcGVjaWZpY2FkbyB1bSBwcm9wZXJ0eS4nKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChpc1Zpc2libGVGaWVsZChmaWVsZCkpIHtcclxuICAgICAgICB2aXNpYmxlRmllbGRzLnB1c2godGhpcy5jcmVhdGVGaWVsZChmaWVsZCkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gc29ydEZpZWxkcyh2aXNpYmxlRmllbGRzKTtcclxuICB9XHJcblxyXG4gIC8vIGNvbnZlcnRlIHVtIGFycmF5IGVtIHN0cmluZyBwYXJhIHVtIGFycmF5IGRlIG9iamV0b3MgcXVlIGNvbnRlbSBsYWJlbCBlIHZhbHVlLlxyXG4gIHByaXZhdGUgY29udmVydE9wdGlvbnMob3B0aW9uczogQXJyYXk8YW55Pik6IEFycmF5PHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9PiB7XHJcbiAgICBjb25zdCBldmVyeU9wdGlvblN0cmluZyA9IG9wdGlvbnMuZXZlcnkob3B0aW9uID0+IHR5cGVvZiBvcHRpb24gPT09ICdzdHJpbmcnKTtcclxuXHJcbiAgICBpZiAoZXZlcnlPcHRpb25TdHJpbmcpIHtcclxuICAgICAgcmV0dXJuIG9wdGlvbnMubWFwKHZhbHVlID0+ICh7IGxhYmVsOiB2YWx1ZSwgdmFsdWUgfSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgLy8gY3JpYSB1bSBub3ZvIG9iamV0byBjb20gYXMgY2xhc3NlcyBkZSBncmlkIHN5c3RlbSwgY29tIGNvbnRyb2wgKHRpcG8gZG8gY29tcG9uZW50ZSkgZSBsYWJlbCBkZWZhdWx0LlxyXG4gIHByaXZhdGUgY3JlYXRlRmllbGQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCk6IFBvRHluYW1pY0Zvcm1GaWVsZEludGVybmFsIHtcclxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmdldENvbXBvbmVudENvbnRyb2woZmllbGQpO1xyXG4gICAgY29uc3Qgb3B0aW9ucyA9ICEhZmllbGQub3B0aW9ucyA/IHRoaXMuY29udmVydE9wdGlvbnMoZmllbGQub3B0aW9ucykgOiB1bmRlZmluZWQ7XHJcbiAgICBjb25zdCBmb2N1cyA9IHRoaXMuaGFzRm9jdXMoZmllbGQpO1xyXG4gICAgY29uc3QgdHlwZSA9IGZpZWxkICYmIGZpZWxkLnR5cGUgPyBmaWVsZC50eXBlLnRvTG9jYWxlTG93ZXJDYXNlKCkgOiAnc3RyaW5nJztcclxuXHJcbiAgICBjb25zdCBjb21wb25lbnRDbGFzcyA9IGdldEdyaWRDb2x1bW5zQ2xhc3NlcyhcclxuICAgICAgZmllbGQuZ3JpZENvbHVtbnMsXHJcbiAgICAgIGZpZWxkLm9mZnNldENvbHVtbnMsXHJcbiAgICAgIHtcclxuICAgICAgICBzbUdyaWQ6IGZpZWxkLmdyaWRTbUNvbHVtbnMsXHJcbiAgICAgICAgbWRHcmlkOiBmaWVsZC5ncmlkTWRDb2x1bW5zLFxyXG4gICAgICAgIGxnR3JpZDogZmllbGQuZ3JpZExnQ29sdW1ucyxcclxuICAgICAgICB4bEdyaWQ6IGZpZWxkLmdyaWRYbENvbHVtbnNcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHNtT2Zmc2V0OiBmaWVsZC5vZmZzZXRTbUNvbHVtbnMsXHJcbiAgICAgICAgbWRPZmZzZXQ6IGZpZWxkLm9mZnNldE1kQ29sdW1ucyxcclxuICAgICAgICBsZ09mZnNldDogZmllbGQub2Zmc2V0TGdDb2x1bW5zLFxyXG4gICAgICAgIHhsT2Zmc2V0OiBmaWVsZC5vZmZzZXRYbENvbHVtbnNcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHNtUHVsbDogZmllbGQuZ3JpZFNtUHVsbCxcclxuICAgICAgICBtZFB1bGw6IGZpZWxkLmdyaWRNZFB1bGwsXHJcbiAgICAgICAgbGdQdWxsOiBmaWVsZC5ncmlkTGdQdWxsLFxyXG4gICAgICAgIHhsUHVsbDogZmllbGQuZ3JpZFhsUHVsbFxyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHJldHVybiB7XHJcbiAgICAgIGxhYmVsOiB0aGlzLnRpdGxlQ2FzZVBpcGUudHJhbnNmb3JtKGZpZWxkLnByb3BlcnR5KSxcclxuICAgICAgbWFza0Zvcm1hdE1vZGVsOiB0aGlzLmNvbXBhcmVUbyh0eXBlLCBQb0R5bmFtaWNGaWVsZFR5cGUuVGltZSksXHJcbiAgICAgIC4uLmZpZWxkLFxyXG4gICAgICBjb21wb25lbnRDbGFzcyxcclxuICAgICAgY29udHJvbCxcclxuICAgICAgZm9jdXMsXHJcbiAgICAgIG9wdGlvbnNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGV4aXN0c1Byb3BlcnR5KGZpZWxkczogQXJyYXk8UG9EeW5hbWljRm9ybUZpZWxkPiwgcHJvcGVydHk6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGZpZWxkcy5zb21lKGZpZWxkID0+IGZpZWxkLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XHJcbiAgfVxyXG5cclxuICAvLyByZWN1cGVyYSBvIGNvbXBvbmVudGUgZGUgYWNvcmRvIGNvbSBhbGd1bWFzIHJlZ3JhcyBkbyBmaWVsZC5cclxuICBwcml2YXRlIGdldENvbXBvbmVudENvbnRyb2woZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCA9IDxhbnk+e30pIHtcclxuICAgIGNvbnN0IHR5cGUgPSBmaWVsZCAmJiBmaWVsZC50eXBlID8gZmllbGQudHlwZS50b0xvY2FsZUxvd2VyQ2FzZSgpIDogJ3N0cmluZyc7XHJcblxyXG4gICAgY29uc3QgZm9yY2VPcHRpb25Db21wb25lbnQgPSB0aGlzLnZlcmlmeWZvcmNlT3B0aW9uQ29tcG9uZW50KGZpZWxkKTtcclxuICAgIGlmIChmb3JjZU9wdGlvbkNvbXBvbmVudCkge1xyXG4gICAgICBjb25zdCB7IGZvcmNlT3B0aW9uc0NvbXBvbmVudFR5cGUgfSA9IGZpZWxkO1xyXG4gICAgICByZXR1cm4gZm9yY2VPcHRpb25zQ29tcG9uZW50VHlwZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5pc051bWJlclR5cGUoZmllbGQsIHR5cGUpKSB7XHJcbiAgICAgIHJldHVybiAnbnVtYmVyJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0N1cnJlbmN5VHlwZShmaWVsZCwgdHlwZSkgfHwgdHlwZSA9PT0gUG9EeW5hbWljRmllbGRUeXBlLkRlY2ltYWwpIHtcclxuICAgICAgcmV0dXJuICdkZWNpbWFsJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc1NlbGVjdChmaWVsZCkpIHtcclxuICAgICAgcmV0dXJuICdzZWxlY3QnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzUmFkaW9Hcm91cChmaWVsZCkpIHtcclxuICAgICAgcmV0dXJuICdyYWRpb0dyb3VwJztcclxuICAgIH0gZWxzZSBpZiAodGhpcy5pc0NoZWNrYm94R3JvdXAoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAnY2hlY2tib3hHcm91cCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNNdWx0aXNlbGVjdChmaWVsZCkpIHtcclxuICAgICAgcmV0dXJuICdtdWx0aXNlbGVjdCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29tcGFyZVRvKHR5cGUsIFBvRHluYW1pY0ZpZWxkVHlwZS5Cb29sZWFuKSkge1xyXG4gICAgICByZXR1cm4gJ3N3aXRjaCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuY29tcGFyZVRvKHR5cGUsIFBvRHluYW1pY0ZpZWxkVHlwZS5EYXRlKSB8fCB0aGlzLmNvbXBhcmVUbyh0eXBlLCBQb0R5bmFtaWNGaWVsZFR5cGUuRGF0ZVRpbWUpKSB7XHJcbiAgICAgIHJldHVybiBmaWVsZC5yYW5nZSA/ICdkYXRlcGlja2VycmFuZ2UnIDogJ2RhdGVwaWNrZXInO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmNvbXBhcmVUbyh0eXBlLCBQb0R5bmFtaWNGaWVsZFR5cGUuVGltZSkpIHtcclxuICAgICAgZmllbGQubWFzayA9IGZpZWxkLm1hc2sgfHwgJzk5Ojk5JztcclxuXHJcbiAgICAgIHJldHVybiAnaW5wdXQnO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzQ29tYm8oZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAnY29tYm8nO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmlzTG9va3VwKGZpZWxkKSkge1xyXG4gICAgICByZXR1cm4gJ2xvb2t1cCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNUZXh0YXJlYShmaWVsZCkpIHtcclxuICAgICAgcmV0dXJuICd0ZXh0YXJlYSc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNQYXNzd29yZChmaWVsZCkpIHtcclxuICAgICAgcmV0dXJuICdwYXNzd29yZCc7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNVcGxvYWQoZmllbGQpKSB7XHJcbiAgICAgIHJldHVybiAndXBsb2FkJztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gJ2lucHV0JztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFzRm9jdXMoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgcmV0dXJuICEhdGhpcy5hdXRvRm9jdXMgJiYgdGhpcy5hdXRvRm9jdXMgPT09IGZpZWxkLnByb3BlcnR5O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0NoZWNrYm94R3JvdXAoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBvcHRpb25zU2VydmljZSwgb3B0aW9uc011bHRpLCBvcHRpb25zIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gIW9wdGlvbnNTZXJ2aWNlICYmIG9wdGlvbnNNdWx0aSAmJiAhIW9wdGlvbnMgJiYgb3B0aW9ucy5sZW5ndGggPD0gMztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNDb21ibyhmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbnNTZXJ2aWNlIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gISFvcHRpb25zU2VydmljZSAmJiAoaXNUeXBlb2Yob3B0aW9uc1NlcnZpY2UsICdzdHJpbmcnKSB8fCB0aGlzLmlzQ29tYm9GaWx0ZXIob3B0aW9uc1NlcnZpY2UpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNDdXJyZW5jeVR5cGUoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCwgdHlwZTogc3RyaW5nKSB7XHJcbiAgICBjb25zdCB7IG1hc2ssIHBhdHRlcm4gfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmNvbXBhcmVUbyh0eXBlLCBQb0R5bmFtaWNGaWVsZFR5cGUuQ3VycmVuY3kpICYmICFtYXNrICYmICFwYXR0ZXJuO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0xvb2t1cEZpbHRlcihvYmplY3Q6IGFueSk6IG9iamVjdCBpcyBQb0xvb2t1cEZpbHRlciB7XHJcbiAgICByZXR1cm4gb2JqZWN0ICYmICg8UG9Mb29rdXBGaWx0ZXI+b2JqZWN0KS5nZXRPYmplY3RCeVZhbHVlICE9PSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzQ29tYm9GaWx0ZXIob2JqZWN0OiBhbnkpOiBvYmplY3QgaXMgUG9Db21ib0ZpbHRlciB7XHJcbiAgICByZXR1cm4gb2JqZWN0ICYmICg8UG9Db21ib0ZpbHRlcj5vYmplY3QpLmdldEZpbHRlcmVkRGF0YSAhPT0gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc0xvb2t1cChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IHNlYXJjaFNlcnZpY2UgfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiAhIXNlYXJjaFNlcnZpY2UgJiYgKGlzVHlwZW9mKHNlYXJjaFNlcnZpY2UsICdzdHJpbmcnKSB8fCB0aGlzLmlzTG9va3VwRmlsdGVyKHNlYXJjaFNlcnZpY2UpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNNdWx0aXNlbGVjdChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbnNTZXJ2aWNlLCBvcHRpb25zTXVsdGksIG9wdGlvbnMgfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiBvcHRpb25zTXVsdGkgJiYgKCEhb3B0aW9uc1NlcnZpY2UgfHwgKCEhb3B0aW9ucyAmJiBvcHRpb25zLmxlbmd0aCA+IDMpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNOdW1iZXJUeXBlKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIHR5cGU6IHN0cmluZykge1xyXG4gICAgY29uc3QgeyBtYXNrLCBwYXR0ZXJuIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5jb21wYXJlVG8odHlwZSwgUG9EeW5hbWljRmllbGRUeXBlLk51bWJlcikgJiYgIW1hc2sgJiYgIXBhdHRlcm47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzUGFzc3dvcmQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xyXG4gICAgY29uc3QgeyBzZWNyZXQgfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiBzZWNyZXQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzUmFkaW9Hcm91cChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbnNNdWx0aSwgb3B0aW9ucyB9ID0gZmllbGQ7XHJcblxyXG4gICAgcmV0dXJuICFvcHRpb25zTXVsdGkgJiYgISFvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoIDw9IDM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzVXBsb2FkKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcclxuICAgIGNvbnN0IHsgdXJsLCB0eXBlIH0gPSBmaWVsZDtcclxuXHJcbiAgICByZXR1cm4gdXJsICYmIHR5cGUgPT09ICd1cGxvYWQnO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB2ZXJpZnlmb3JjZU9wdGlvbkNvbXBvbmVudChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbnNNdWx0aSwgb3B0aW9uc1NlcnZpY2UsIGZvcmNlT3B0aW9uc0NvbXBvbmVudFR5cGUgfSA9IGZpZWxkO1xyXG5cclxuICAgIGlmIChmb3JjZU9wdGlvbnNDb21wb25lbnRUeXBlICYmICFvcHRpb25zTXVsdGkgJiYgIW9wdGlvbnNTZXJ2aWNlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1NlbGVjdChmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IG9wdGlvbnNNdWx0aSwgb3B0aW9ucyB9ID0gZmllbGQ7XHJcblxyXG4gICAgcmV0dXJuICFvcHRpb25zTXVsdGkgJiYgISFvcHRpb25zICYmIG9wdGlvbnMubGVuZ3RoID4gMztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNUZXh0YXJlYShmaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkKSB7XHJcbiAgICBjb25zdCB7IHJvd3MgfSA9IGZpZWxkO1xyXG5cclxuICAgIHJldHVybiByb3dzICYmIHJvd3MgPj0gMztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcHJpbnRFcnJvcihlcnJvcjogc3RyaW5nKSB7XHJcbiAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcclxuICB9XHJcbn1cclxuIl19