@plumile/backoffice-core 0.1.146 → 0.1.150

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/esm/types.js CHANGED
@@ -5,4 +5,4 @@ export class BackofficeToolValidationError extends Error {
5
5
  this.label = label;
6
6
  }
7
7
  }
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMDhEQSxNQUFNLE9BQU8sNkJBQThCLFNBQVEsS0FBSztJQUMvQyxLQUFLLENBQVk7SUFFeEIsWUFBbUIsS0FBZ0I7UUFDakMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7IFRGdW5jdGlvbiB9IGZyb20gJ2kxOG5leHQnO1xuaW1wb3J0IHR5cGUgeyBQcmVsb2FkZWRRdWVyeSB9IGZyb20gJ3JlYWN0LXJlbGF5JztcbmltcG9ydCB0eXBlIHtcbiAgR3JhcGhRTFRhZ2dlZE5vZGUsXG4gIE9wZXJhdGlvblR5cGUsXG4gIFJlY29yZFNvdXJjZVNlbGVjdG9yUHJveHksXG59IGZyb20gJ3JlbGF5LXJ1bnRpbWUnO1xuaW1wb3J0IHR5cGUgeyBCQUNLT0ZGSUNFX0VOVElUWV9GQUNFVF9LSU5EUyB9IGZyb20gJy4vY29uc3RhbnRzLmpzJztcblxuZXhwb3J0IHR5cGUgSTE4bkxhYmVsID0gKHQ6IFRGdW5jdGlvbikgPT4gc3RyaW5nO1xuXG50eXBlIEJpdmFyaWFudENhbGxiYWNrPEZuPiA9IEZuIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIEEpID0+IGluZmVyIFJcbiAgPyB7IGJpdmFyaWFuY2VIYWNrOiAoLi4uYXJnczogQSkgPT4gUiB9WydiaXZhcmlhbmNlSGFjayddXG4gIDogbmV2ZXI7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25SZW5kZXJOb2RlID0gRXhjbHVkZTxSZWFjdE5vZGUsIFByb21pc2U8dW5rbm93bj4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVmFsdWVMYWJlbCA9IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCBJMThuTGFiZWw7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VCYWRnZVRvbmUgPVxuICB8ICduZXV0cmFsJ1xuICB8ICdpbmZvJ1xuICB8ICdzdWNjZXNzJ1xuICB8ICd3YXJuaW5nJ1xuICB8ICdkYW5nZXInO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTnVtYmVyRm9ybWF0ID0gJ251bWJlcicgfCAnY3VycmVuY3knIHwgJ3BlcmNlbnQnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRmllbGRTaXplID1cbiAgfCAneHMnXG4gIHwgJ3MnXG4gIHwgJ3N0YXR1c0FjdGlvbidcbiAgfCAnbSdcbiAgfCAnbCdcbiAgfCAneGwnXG4gIHwgJ2ZsdWlkJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFjdGlvblZhcmlhbnQgPVxuICB8ICdwcmltYXJ5J1xuICB8ICdzZWNvbmRhcnknXG4gIHwgJ3RleHQnXG4gIHwgJ3N1Y2Nlc3MnXG4gIHwgJ2RhbmdlcidcbiAgfCAnYnJhbmQnXG4gIHwgJ2JyYW5kR2hvc3QnXG4gIHwgJ3RhYidcbiAgfCAnaWNvbic7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25TaXplID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFjdGlvblRvYXN0Vmlld1NwZWM8XG4gIE5vZGUgPSB1bmtub3duLFxuICBSZXNwb25zZSA9IHVua25vd24sXG4+ID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBnZXRUYXJnZXRJZDogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKHJlc3BvbnNlOiBSZXNwb25zZSwgbm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbFxuICA+O1xuICBsYWJlbD86IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25Ub2FzdFNwZWM8Tm9kZSA9IHVua25vd24sIFJlc3BvbnNlID0gdW5rbm93bj4gPSB7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIG1lc3NhZ2U/OiBJMThuTGFiZWw7XG4gIHZpZXc/OiBCYWNrb2ZmaWNlQWN0aW9uVG9hc3RWaWV3U3BlYzxOb2RlLCBSZXNwb25zZT47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uQmFzZTxOb2RlPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgYXJpYUxhYmVsPzogSTE4bkxhYmVsO1xuICB2YXJpYW50PzogQmFja29mZmljZUFjdGlvblZhcmlhbnQ7XG4gIHNpemU/OiBCYWNrb2ZmaWNlQWN0aW9uU2l6ZTtcbiAgaXNWaXNpYmxlPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IGJvb2xlYW4+O1xuICBpc0Rpc2FibGVkPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IGJvb2xlYW4+O1xufTtcblxudHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkQmFzZSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkU3BlYyA9XG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGtpbmQ6ICd0ZXh0JztcbiAgICAgIHBsYWNlaG9sZGVyPzogSTE4bkxhYmVsO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAga2luZDogJ251bWJlcic7XG4gICAgICBwbGFjZWhvbGRlcj86IEkxOG5MYWJlbDtcbiAgICAgIGRlZmF1bHRWYWx1ZT86IG51bWJlcjtcbiAgICAgIHJlcXVpcmVkPzogYm9vbGVhbjtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkQmFzZSAmIHtcbiAgICAgIGtpbmQ6ICdqc29uJztcbiAgICAgIHBsYWNlaG9sZGVyPzogSTE4bkxhYmVsO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAgICAganNvblR5cGU/OiAnb2JqZWN0JyB8ICdhcnJheScgfCAnYW55JztcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkQmFzZSAmIHtcbiAgICAgIGtpbmQ6ICdlbnVtJztcbiAgICAgIG9wdGlvbnM6IHJlYWRvbmx5IHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IEkxOG5MYWJlbCB9W107XG4gICAgICBkZWZhdWx0VmFsdWU/OiBzdHJpbmc7XG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XG4gICAgfSlcbiAgfCAoQmFja29mZmljZUVudGl0eUFjdGlvbkZvcm1GaWVsZEJhc2UgJiB7XG4gICAgICBraW5kOiAnYm9vbGVhbic7XG4gICAgICBkZWZhdWx0VmFsdWU/OiBib29sZWFuO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAga2luZDogJ2VudGl0eUlkJztcbiAgICAgIGVudGl0eTogc3RyaW5nO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAga2luZDogJ211bHRpRW51bSc7XG4gICAgICBvcHRpb25zOiByZWFkb25seSB7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBJMThuTGFiZWwgfVtdO1xuICAgICAgZGVmYXVsdFZhbHVlPzogcmVhZG9ubHkgc3RyaW5nW107XG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XG4gICAgfSk7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25SZXN1bHRTcGVjPE5vZGUsIFJlc3BvbnNlID0gdW5rbm93bj4gPSB7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIGdldFZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocmVzcG9uc2U6IFJlc3BvbnNlLCBub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsXG4gID47XG4gIHJlbmRlcj86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChyZXNwb25zZTogUmVzcG9uc2UsIG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VBY3Rpb25SZW5kZXJOb2RlIHwgbnVsbFxuICA+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUFjdGlvblVwZGF0ZXI8Tm9kZT4gPSBCaXZhcmlhbnRDYWxsYmFjazxcbiAgKHN0b3JlOiBSZWNvcmRTb3VyY2VTZWxlY3RvclByb3h5LCBub2RlOiBOb2RlKSA9PiB2b2lkXG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5TXV0YXRpb25BY3Rpb25TcGVjPFxuICBOb2RlLFxuICBWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgUmVzcG9uc2UgPSB1bmtub3duLFxuPiA9IEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25CYXNlPE5vZGU+ICYge1xuICBraW5kOiAnbXV0YXRpb24nO1xuICBtdXRhdGlvbjogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGdldFZhcmlhYmxlczogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IFZhcmlhYmxlcz47XG4gIHVwZGF0ZXI/OiBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uVXBkYXRlcjxOb2RlPjtcbiAgbWFwRXJyb3JSZWFzb24/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocmVhc29uOiBzdHJpbmcsIG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsXG4gID47XG4gIG9uQ29tcGxldGVkPzogQml2YXJpYW50Q2FsbGJhY2s8KHJlc3BvbnNlOiBSZXNwb25zZSwgbm9kZTogTm9kZSkgPT4gdm9pZD47XG4gIG9uRXJyb3I/OiBCaXZhcmlhbnRDYWxsYmFjazwoZXJyb3I6IEVycm9yLCBub2RlOiBOb2RlKSA9PiB2b2lkPjtcbiAgdG9hc3RzPzoge1xuICAgIHN1Y2Nlc3M/OiBCYWNrb2ZmaWNlQWN0aW9uVG9hc3RTcGVjPE5vZGUsIFJlc3BvbnNlPjtcbiAgICBlcnJvcj86IEJhY2tvZmZpY2VBY3Rpb25Ub2FzdFNwZWM8Tm9kZSwgUmVzcG9uc2U+O1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUZvcm1NdXRhdGlvbkFjdGlvblNwZWM8XG4gIE5vZGUsXG4gIFZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBSZXNwb25zZSA9IHVua25vd24sXG4+ID0gQmFja29mZmljZUVudGl0eUFjdGlvbkJhc2U8Tm9kZT4gJiB7XG4gIGtpbmQ6ICdmb3JtTXV0YXRpb24nO1xuICBtdXRhdGlvbjogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGZpZWxkczogcmVhZG9ubHkgQmFja29mZmljZUVudGl0eUFjdGlvbkZvcm1GaWVsZFNwZWNbXTtcbiAgZ2V0VmFyaWFibGVzOiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSwgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikgPT4gVmFyaWFibGVzXG4gID47XG4gIHVwZGF0ZXI/OiBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uVXBkYXRlcjxOb2RlPjtcbiAgZ2V0SW5pdGlhbFZhbHVlcz86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gIG1hcEVycm9yUmVhc29uPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKHJlYXNvbjogc3RyaW5nLCBub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbFxuICA+O1xuICBvbkNvbXBsZXRlZD86IEJpdmFyaWFudENhbGxiYWNrPChyZXNwb25zZTogUmVzcG9uc2UsIG5vZGU6IE5vZGUpID0+IHZvaWQ+O1xuICBvbkVycm9yPzogQml2YXJpYW50Q2FsbGJhY2s8KGVycm9yOiBFcnJvciwgbm9kZTogTm9kZSkgPT4gdm9pZD47XG4gIHRvYXN0cz86IHtcbiAgICBzdWNjZXNzPzogQmFja29mZmljZUFjdGlvblRvYXN0U3BlYzxOb2RlLCBSZXNwb25zZT47XG4gICAgZXJyb3I/OiBCYWNrb2ZmaWNlQWN0aW9uVG9hc3RTcGVjPE5vZGUsIFJlc3BvbnNlPjtcbiAgfTtcbiAgcmVzdWx0PzogQmFja29mZmljZUVudGl0eUFjdGlvblJlc3VsdFNwZWM8Tm9kZSwgUmVzcG9uc2U+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eVJvdXRlQWN0aW9uU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25CYXNlPE5vZGU+ICYge1xuICAgIGtpbmQ6ICdyb3V0ZSc7XG4gICAgdG86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmc+O1xuICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uU3BlYzxOb2RlPiA9XG4gIHwgQmFja29mZmljZUVudGl0eU11dGF0aW9uQWN0aW9uU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VFbnRpdHlGb3JtTXV0YXRpb25BY3Rpb25TcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZUVudGl0eVJvdXRlQWN0aW9uU3BlYzxOb2RlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RBY3Rpb25TcGVjID0gQmFja29mZmljZUVudGl0eUFjdGlvblNwZWM8bnVsbD47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlLaW5kID0gJ2xpc3QtZGV0YWlsJyB8ICd0b29sJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eU1hbmlmZXN0S2luZCA9ICdsaXN0LWRldGFpbCcgfCAndG9vbCc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlGYWNldEtpbmQgPVxuICAodHlwZW9mIEJBQ0tPRkZJQ0VfRU5USVRZX0ZBQ0VUX0tJTkRTKVtudW1iZXJdO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5TW9kdWxlU3RhdHVzID1cbiAgfCAnaWRsZSdcbiAgfCAnbG9hZGluZydcbiAgfCAnbG9hZGVkJ1xuICB8ICdlcnJvcic7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlMb2FkTW9kZSA9ICdjYWNoZS1maXJzdCcgfCAncmVsb2FkJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUNvbmZpZ0FjY2Vzc0tpbmQgPVxuICB8ICdtYW5pZmVzdC1vbmx5J1xuICB8ICdsb2FkZWQtY29uZmlnLXJlcXVpcmVkJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RTdGF0ZTxXaGVyZSwgU29ydCBleHRlbmRzIHN0cmluZz4gPSB7XG4gIHdoZXJlOiBXaGVyZSB8IG51bGw7XG4gIHNvcnQ6IFNvcnQgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RWYXJpYWJsZXM8V2hlcmUsIFNvcnQgZXh0ZW5kcyBzdHJpbmc+ID0ge1xuICB3aGVyZTogV2hlcmUgfCBudWxsO1xuICBzb3J0OiBTb3J0IHwgbnVsbDtcbiAgY291bnQ6IG51bWJlcjtcbiAgY3Vyc29yOiBzdHJpbmcgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU9wZXJhdGlvblZhcmlhYmxlczxUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZT4gPVxuICBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU9wZXJhdGlvblJlc3BvbnNlPFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlPiA9XG4gIFRPcGVyYXRpb25bJ3Jlc3BvbnNlJ107XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gVE9wZXJhdGlvblsndmFyaWFibGVzJ10gZXh0ZW5kcyB7XG4gICAgd2hlcmU/OiBpbmZlciBXaGVyZSB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIH1cbiAgICA/IEV4dHJhY3Q8Tm9uTnVsbGFibGU8V2hlcmU+LCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj5cbiAgICA6IG5ldmVyLFxuPiA9IFRXaGVyZTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU9wZXJhdGlvblNvcnQ8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBUU29ydCA9IFRPcGVyYXRpb25bJ3ZhcmlhYmxlcyddIGV4dGVuZHMge1xuICAgIHNvcnQ/OiBpbmZlciBTb3J0IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgfVxuICAgID8gRXh0cmFjdDxOb25OdWxsYWJsZTxTb3J0Piwgc3RyaW5nPlxuICAgIDogbmV2ZXIsXG4+ID0gRXh0cmFjdDxUU29ydCwgc3RyaW5nPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURlcml2ZWRPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZT4gPVxuICBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXSBleHRlbmRzIHtcbiAgICB3aGVyZT86IGluZmVyIFdoZXJlIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgfVxuICAgID8gRXh0cmFjdDxOb25OdWxsYWJsZTxXaGVyZT4sIFJlY29yZDxzdHJpbmcsIHVua25vd24+PlxuICAgIDogbmV2ZXI7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXJpdmVkT3BlcmF0aW9uU29ydDxUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZT4gPVxuICBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXSBleHRlbmRzIHtcbiAgICBzb3J0PzogaW5mZXIgU29ydCB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIH1cbiAgICA/IEV4dHJhY3Q8Tm9uTnVsbGFibGU8U29ydD4sIHN0cmluZz5cbiAgICA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFF1ZXJ5SW5wdXQ8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbiAgVFNvcnQgZXh0ZW5kcyBzdHJpbmcgPSBCYWNrb2ZmaWNlT3BlcmF0aW9uU29ydDxUT3BlcmF0aW9uPixcbj4gPSB7XG4gIHdoZXJlOiBUV2hlcmUgfCBudWxsO1xuICBzb3J0OiBUU29ydCB8IG51bGw7XG4gIGNvdW50OiBudW1iZXI7XG4gIGN1cnNvcjogc3RyaW5nIHwgbnVsbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQaWNrZXJTY29wZTxXaGVyZT4gPSBQYXJ0aWFsPHtcbiAgW0tleSBpbiBrZXlvZiBXaGVyZV06IEV4dHJhY3Q8Tm9uTnVsbGFibGU8V2hlcmVbS2V5XT4sIHN0cmluZz47XG59PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVBpY2tlclF1ZXJ5SW5wdXQ8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbj4gPSB7XG4gIHNlYXJjaDogc3RyaW5nO1xuICBzY29wZT86IEJhY2tvZmZpY2VQaWNrZXJTY29wZTxUV2hlcmU+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlbGF0aW9uRmlsdGVyU3BlYzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gQmFja29mZmljZU9wZXJhdGlvbldoZXJlPFRPcGVyYXRpb24+LFxuPiA9IHtcbiAgdGFyZ2V0OiBzdHJpbmc7XG4gIGZpbHRlcklkPzogc3RyaW5nO1xuICB3aGVyZUtleTogRXh0cmFjdDxrZXlvZiBUV2hlcmUsIHN0cmluZz47XG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSdW50aW1lUmVsYXRpb25GaWx0ZXJTcGVjID0ge1xuICB0YXJnZXQ6IHN0cmluZztcbiAgZmlsdGVySWQ/OiBzdHJpbmc7XG4gIHdoZXJlS2V5OiBzdHJpbmc7XG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXMgPSB7XG4gIGxpc3Q6IHN0cmluZztcbiAgZGV0YWlsOiAoaWQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICBkZXRhaWxQYWdlOiAoaWQ6IHN0cmluZywgcGFnZUlkOiBzdHJpbmcpID0+IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlSb3V0ZU1hbmlmZXN0ID0ge1xuICBsaXN0OiBzdHJpbmc7XG4gIGRldGFpbDogKGlkOiBzdHJpbmcpID0+IHN0cmluZztcbiAgZGV0YWlsUGFnZTogKGlkOiBzdHJpbmcsIHBhZ2VJZDogc3RyaW5nKSA9PiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZU1hbmlmZXN0SXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgcGF0aFNlZ21lbnQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgaXNEZWZhdWx0PzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlUm91dGVTcGVjPExheW91dFZpZXcgPSB1bmtub3duPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgcGF0aDogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICBpc1Zpc2libGU/OiBCaXZhcmlhbnRDYWxsYmFjazwobGF5b3V0UGFnZTogTGF5b3V0VmlldykgPT4gYm9vbGVhbj47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkQ29uZmlnID0ge1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBzdWJ0aXRsZT86IEkxOG5MYWJlbDtcbiAgcXVlcnk/OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgd2lkZ2V0czogcmVhZG9ubHkgQmFja29mZmljZURhc2hib2FyZFdpZGdldFtdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldFNpemUgPSAncycgfCAnbScgfCAnbCcgfCAneGwnIHwgJ2Z1bGwnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0U3BhbiA9IDMgfCA0IHwgNiB8IDggfCAxMjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldFRhYmxldFNwYW4gPSAzIHwgNjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldFpvbmUgPVxuICB8ICdzdW1tYXJ5J1xuICB8ICdtYWluJ1xuICB8ICdhc2lkZSdcbiAgfCAnc2Vjb25kYXJ5J1xuICB8ICdmdWxsJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldExheW91dCA9IHtcbiAgem9uZT86IEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRab25lO1xuICBzcGFuPzogQmFja29mZmljZURhc2hib2FyZFdpZGdldFNwYW47XG4gIHRhYmxldFNwYW4/OiBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0VGFibGV0U3BhbjtcbiAgb3JkZXI/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0UHJpb3JpdHkgPVxuICB8ICdjcml0aWNhbCdcbiAgfCAnaGlnaCdcbiAgfCAnbm9ybWFsJ1xuICB8ICdsb3cnXG4gIHwgJ3ByaW1hcnknXG4gIHwgJ3NlY29uZGFyeSdcbiAgfCAnZGVidWcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0QmFzZSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgdGl0bGU/OiBJMThuTGFiZWw7XG4gIGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICBzaXplPzogQmFja29mZmljZURhc2hib2FyZFdpZGdldFNpemU7XG4gIGxheW91dD86IEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRMYXlvdXQ7XG4gIHByaW9yaXR5PzogQmFja29mZmljZURhc2hib2FyZFdpZGdldFByaW9yaXR5O1xuICBtaW5IZWlnaHQ/OiAnc20nIHwgJ21kJyB8ICdsZyc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0ID1cbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAnZW50aXR5Q291bnQnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIGVudGl0eUlkOiBzdHJpbmc7XG4gICAgICBxdWVyeT86IEdyYXBoUUxUYWdnZWROb2RlO1xuICAgICAgcmVzb2x2ZT86IChkYXRhOiB1bmtub3duKSA9PiB7IGNvdW50OiBudW1iZXIgfCBudWxsIH07XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAnc2hvcnRjdXQnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIGVudGl0eUlkOiBzdHJpbmc7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAndGFibGVQcmV2aWV3JztcbiAgICAgIHRpdGxlOiBJMThuTGFiZWw7XG4gICAgICBxdWVyeT86IEdyYXBoUUxUYWdnZWROb2RlO1xuICAgICAgcmVzb2x2ZTogKGRhdGE6IHVua25vd24pID0+IHtcbiAgICAgICAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWNbXTtcbiAgICAgICAgcm93czogcmVhZG9ubHkgdW5rbm93bltdO1xuICAgICAgfTtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0QmFzZSAmIHtcbiAgICAgIGtpbmQ6ICdzdGF0dXNTdW1tYXJ5JztcbiAgICAgIHF1ZXJ5PzogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gICAgICByZXNvbHZlOiAoZGF0YTogdW5rbm93bikgPT4gcmVhZG9ubHkge1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbDtcbiAgICAgICAgdG9uZT86IEJhY2tvZmZpY2VCYWRnZVRvbmU7XG4gICAgICAgIGhyZWY/OiBzdHJpbmc7XG4gICAgICB9W107XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAncmVjZW50SXRlbXMnO1xuICAgICAgbWF4SXRlbXM/OiBudW1iZXI7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAncXVpY2tBY3Rpb25zJztcbiAgICAgIGFjdGlvbnM6IHJlYWRvbmx5IHtcbiAgICAgICAgaWQ6IHN0cmluZztcbiAgICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgICAgaHJlZjogc3RyaW5nO1xuICAgICAgICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgICAgICAgdG9uZT86ICdkZWZhdWx0JyB8ICdwcmltYXJ5JyB8ICdkYW5nZXInO1xuICAgICAgfVtdO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRCYXNlICYge1xuICAgICAga2luZDogJ21ldHJpY0dyb3VwJztcbiAgICAgIHF1ZXJ5PzogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gICAgICByZXNvbHZlOiAoZGF0YTogdW5rbm93bikgPT4gcmVhZG9ubHkge1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbDtcbiAgICAgICAgbWV0YT86IEkxOG5MYWJlbDtcbiAgICAgICAgdG9uZT86ICduZXV0cmFsJyB8ICdpbmZvJyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInO1xuICAgICAgICBocmVmPzogc3RyaW5nO1xuICAgICAgfVtdO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRCYXNlICYge1xuICAgICAga2luZDogJ2JpbGxpbmdVc2FnZUNoYXJ0JztcbiAgICAgIHRpdGxlOiBJMThuTGFiZWw7XG4gICAgICBxdWVyeT86IEdyYXBoUUxUYWdnZWROb2RlO1xuICAgICAgY2F0ZWdvcmllczogcmVhZG9ubHkge1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICBjb2xvcjogc3RyaW5nO1xuICAgICAgfVtdO1xuICAgICAgZW1wdHlMYWJlbDogSTE4bkxhYmVsO1xuICAgICAgcmFuZ2VQcmVmaXg6IEkxOG5MYWJlbDtcbiAgICAgIGFyaWFMYWJlbDogSTE4bkxhYmVsO1xuICAgICAgcmVzb2x2ZTogKGRhdGE6IHVua25vd24pID0+IHtcbiAgICAgICAgY3VycmVuY3k6IHN0cmluZztcbiAgICAgICAgdG90YWxBbW91bnQ6IG51bWJlcjtcbiAgICAgICAgZnJvbTogc3RyaW5nIHwgbnVsbDtcbiAgICAgICAgdG86IHN0cmluZyB8IG51bGw7XG4gICAgICAgIGJ1Y2tldHM6IHJlYWRvbmx5IHtcbiAgICAgICAgICBkYXk6IHN0cmluZztcbiAgICAgICAgICBjYXRlZ29yeTogc3RyaW5nO1xuICAgICAgICAgIHZhbHVlOiBudW1iZXI7XG4gICAgICAgIH1bXTtcbiAgICAgIH0gfCBudWxsO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRCYXNlICYge1xuICAgICAga2luZDogJ3RleHRCbG9jayc7XG4gICAgICB0aXRsZTogSTE4bkxhYmVsO1xuICAgICAgYm9keTogSTE4bkxhYmVsO1xuICAgIH0pO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFVybENvZGVjPFdoZXJlLCBTb3J0IGV4dGVuZHMgc3RyaW5nPiA9IHtcbiAgcGFyc2U6IChzZWFyY2g6IFVSTFNlYXJjaFBhcmFtcykgPT4gQmFja29mZmljZUxpc3RTdGF0ZTxXaGVyZSwgU29ydD47XG4gIHNlcmlhbGl6ZTogKHN0YXRlOiBCYWNrb2ZmaWNlTGlzdFN0YXRlPFdoZXJlLCBTb3J0PikgPT4gVVJMU2VhcmNoUGFyYW1zO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVNvcnRTcGVjPFNvcnQgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID0ge1xuICBpZDogU29ydDtcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSb3dGbGFnU3BlYzxSb3cgPSB1bmtub3duPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gSTE4bkxhYmVsPjtcbiAgcmVuZGVyOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHVua25vd24+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RDb2x1bW5Qcmlvcml0eSA9XG4gIHwgJ3ByaW1hcnknXG4gIHwgJ2ltcG9ydGFudCdcbiAgfCAnc2Vjb25kYXJ5J1xuICB8ICdkZWJ1Zyc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0TW9iaWxlUm9sZSA9XG4gIHwgJ3RpdGxlJ1xuICB8ICdzdWJ0aXRsZSdcbiAgfCAnbWV0YSdcbiAgfCAnYmFkZ2UnXG4gIHwgJ3N0YXR1cydcbiAgfCAnYWN0aW9uJ1xuICB8ICdoaWRkZW4nO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdENvbHVtblZpc2liaWxpdHkgPSB7XG4gIHByaW9yaXR5PzogQmFja29mZmljZUxpc3RDb2x1bW5Qcmlvcml0eTtcbiAgYWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4gIG1vYmlsZT86IEJhY2tvZmZpY2VMaXN0TW9iaWxlUm9sZTtcbiAgdGFibGV0PzogJ3Zpc2libGUnIHwgJ2hpZGRlbic7XG4gIGRlc2t0b3A/OiAndmlzaWJsZScgfCAnaGlkZGVuJztcbiAgbWluVmlzaWJsZUF0PzogJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJztcbiAgZGVidWdPbmx5PzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0Q29sdW1uQ29weSA9IHtcbiAgc2hvcnRMYWJlbD86IEkxOG5MYWJlbDtcbiAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG4gIGVtcHR5TGFiZWw/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29sdW1uU3BlYzxSb3cgPSB1bmtub3duPiA9IHtcbiAga2V5OiBzdHJpbmc7XG4gIGhlYWRlcjogSTE4bkxhYmVsO1xuICBzaXplOiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICB2aXNpYmlsaXR5PzogQmFja29mZmljZUxpc3RDb2x1bW5WaXNpYmlsaXR5O1xuICBjb3B5PzogQmFja29mZmljZUxpc3RDb2x1bW5Db3B5O1xuICBjZWxsOlxuICAgIHwge1xuICAgICAgICBzaXplPzogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgICAgdHlwZTogJ3RleHQnO1xuICAgICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudW1iZXIgfCBudWxsPjtcbiAgICAgICAgY29weVZhbHVlPzogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgIH1cbiAgICB8IHtcbiAgICAgICAgc2l6ZT86IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICAgIHR5cGU6ICdsaW5rJztcbiAgICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVtYmVyIHwgbnVsbD47XG4gICAgICAgIHRvOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHN0cmluZz47XG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIHNpemU/OiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICAgICAgICB0eXBlOiAnYmFkZ2UnO1xuICAgICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgICAgdG9uZT86XG4gICAgICAgICAgfCBCYWNrb2ZmaWNlQmFkZ2VUb25lXG4gICAgICAgICAgfCBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IEJhY2tvZmZpY2VCYWRnZVRvbmU+O1xuICAgICAgfVxuICAgIHwge1xuICAgICAgICBzaXplPzogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgICAgdHlwZTogJ2RhdGVUaW1lJztcbiAgICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVtYmVyIHwgbnVsbD47XG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIHNpemU/OiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICAgICAgICB0eXBlOiAnZW50aXR5UmVmJztcbiAgICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHN0cmluZz47XG4gICAgICAgIGxhYmVsPzogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgIH1cbiAgICB8IHtcbiAgICAgICAgc2l6ZT86IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICAgIHR5cGU6ICdjdXN0b20nO1xuICAgICAgICByZW5kZXI6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gdW5rbm93bj47XG4gICAgICAgIHRleHRWYWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3REZW5zaXR5ID0gJ2NvbXBhY3QnIHwgJ2RlZmF1bHQnIHwgJ2NvbWZvcnRhYmxlJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3REaXNwbGF5TW9kZSA9ICd0YWJsZScgfCAnY2FyZHMnIHwgJ2F1dG8nO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFZpcnR1YWxpemF0aW9uTW9kZSA9ICdhdXRvJyB8ICdhbHdheXMnIHwgJ25ldmVyJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RWaXJ0dWFsaXphdGlvbkNvbmZpZyA9IHtcbiAgbW9kZT86IEJhY2tvZmZpY2VMaXN0VmlydHVhbGl6YXRpb25Nb2RlO1xuICByb3dIZWlnaHRQeD86IG51bWJlcjtcbiAgb3ZlcnNjYW4/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlSW5maW5pdGVTY3JvbGxDb25maWcgPSB7XG4gIGVuYWJsZWQ/OiB0cnVlO1xuICByb290TWFyZ2luPzogc3RyaW5nO1xuICB0aHJlc2hvbGQ/OiBudW1iZXI7XG4gIHRocmVzaG9sZFB4PzogbnVtYmVyO1xuICBhdXRvTG9hZD86IGJvb2xlYW47XG4gIHN0YXR1cz86IHtcbiAgICBzaG93TG9hZGVkQ291bnQ/OiBib29sZWFuO1xuICAgIHNob3dUb3RhbENvdW50PzogYm9vbGVhbjtcbiAgICBzaG93RW5kU3RhdGU/OiBib29sZWFuO1xuICAgIHNob3dJbmNvbnNpc3RlbnRQYWdlSW5mbz86IGJvb2xlYW47XG4gIH07XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFRvb2xiYXJQcm9maWxlID0ge1xuICBkZW5zaXR5PzogQmFja29mZmljZUxpc3REZW5zaXR5O1xuICBkaXNwbGF5TW9kZT86IEJhY2tvZmZpY2VMaXN0RGlzcGxheU1vZGU7XG4gIG1heFByb21vdGVkRmlsdGVycz86IG51bWJlcjtcbiAgc2hvd1JlZnJlc2g/OiBib29sZWFuO1xuICBzaG93U29ydD86IGJvb2xlYW47XG4gIHNob3dGaWx0ZXJDaGlwcz86ICdhdXRvJyB8ICdhbHdheXMnIHwgJ25ldmVyJztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0VWlDb25maWcgPSB7XG4gIGRlbnNpdHk/OiBCYWNrb2ZmaWNlTGlzdERlbnNpdHk7XG4gIGRpc3BsYXlNb2RlPzogQmFja29mZmljZUxpc3REaXNwbGF5TW9kZTtcbiAgaW5maW5pdGVTY3JvbGw/OiBCYWNrb2ZmaWNlSW5maW5pdGVTY3JvbGxDb25maWc7XG4gIHZpcnR1YWxpemF0aW9uPzogQmFja29mZmljZUxpc3RWaXJ0dWFsaXphdGlvbkNvbmZpZztcbiAgdG9vbGJhcj86IEJhY2tvZmZpY2VMaXN0VG9vbGJhclByb2ZpbGU7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFJlc3BvbnNpdmVNZXRhSXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw/OiBJMThuTGFiZWw7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIHRvbmU/OiBCYWNrb2ZmaWNlQmFkZ2VUb25lO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RSZXNwb25zaXZlUHJvZmlsZTxSb3cgPSB1bmtub3duPiA9IHtcbiAgbW9kZT86IEJhY2tvZmZpY2VMaXN0RGlzcGxheU1vZGU7XG4gIGRlbnNpdHk/OiBCYWNrb2ZmaWNlTGlzdERlbnNpdHk7XG4gIG1vYmlsZUJyZWFrcG9pbnQ/OiAnc20nIHwgJ21kJyB8ICdsZyc7XG4gIHByaW1hcnlDb2x1bW4/OiBzdHJpbmc7XG4gIGRlZmF1bHRWaXNpYmxlQ29sdW1ucz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBkZWJ1Z0NvbHVtbnM/OiByZWFkb25seSBzdHJpbmdbXTtcbiAgcm93VGl0bGU/OiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHN0cmluZyB8IG51bGw+O1xuICByb3dTdWJ0aXRsZT86IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVsbD47XG4gIHJvd01ldGE/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocm93OiBSb3cpID0+IHJlYWRvbmx5IEJhY2tvZmZpY2VMaXN0UmVzcG9uc2l2ZU1ldGFJdGVtW11cbiAgPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VGaWx0ZXJQbGFjZW1lbnQgPSAncXVpY2snIHwgJ2RyYXdlcicgfCAnYm90aCc7XG5cbnR5cGUgQmFja29mZmljZUZpbHRlckJhc2U8V2hlcmUsIFZhbHVlPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcGxhY2VtZW50PzogQmFja29mZmljZUZpbHRlclBsYWNlbWVudDtcbiAgdG9HcmFwaFFMOiAodmFsdWU6IFZhbHVlKSA9PiBQYXJ0aWFsPFdoZXJlPjtcbiAgZnJvbUdyYXBoUUw/OiAod2hlcmU6IFdoZXJlKSA9PiBWYWx1ZSB8IG51bGw7XG4gIHdoZXJlS2V5Pzoga2V5b2YgV2hlcmU7XG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXTtcbiAgcGlja2VyU2NvcGU/OlxuICAgIHwgQmFja29mZmljZVBpY2tlclNjb3BlPFdoZXJlPlxuICAgIHwgKCh3aGVyZTogV2hlcmUgfCBudWxsKSA9PiBCYWNrb2ZmaWNlUGlja2VyU2NvcGU8V2hlcmU+KTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VGaWx0ZXJTcGVjPFdoZXJlPiA9XG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBzdHJpbmc+ICYge1xuICAgICAga2luZDogJ3RleHQnO1xuICAgICAgcGxhY2Vob2xkZXJMYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIHBsYWNlaG9sZGVyVGV4dD86IEkxOG5MYWJlbDtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRmlsdGVyQmFzZTxXaGVyZSwgc3RyaW5nPiAmIHtcbiAgICAgIGtpbmQ6ICdkYXRldGltZSc7XG4gICAgICBtb2RlPzogJ2Zyb20nIHwgJ3RvJyB8ICdleGFjdCc7XG4gICAgICBwbGFjZWhvbGRlckxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgcGxhY2Vob2xkZXJUZXh0PzogSTE4bkxhYmVsO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBudW1iZXI+ICYge1xuICAgICAga2luZDogJ251bWJlcic7XG4gICAgICBwbGFjZWhvbGRlckxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgcGxhY2Vob2xkZXJUZXh0PzogSTE4bkxhYmVsO1xuICAgICAgaW5wdXRNb2RlPzogJ251bWVyaWMnIHwgJ2RlY2ltYWwnO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBzdHJpbmc+ICYge1xuICAgICAga2luZDogJ2VudW0nO1xuICAgICAgb3B0aW9uczogcmVhZG9ubHkge1xuICAgICAgICB2YWx1ZTogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgfVtdO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBib29sZWFuPiAmIHtcbiAgICAgIGtpbmQ6ICdib29sZWFuJztcbiAgICAgIHRydWVMYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIGZhbHNlTGFiZWw/OiBJMThuTGFiZWw7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZUZpbHRlckJhc2U8V2hlcmUsIHN0cmluZz4gJiB7XG4gICAgICBraW5kOiAnZW50aXR5SWQnO1xuICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgfSk7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VDb25uZWN0aW9uTGlzdENvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgTGlzdEZyYWdtZW50RGF0YSA9IHVua25vd24sXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gQmFja29mZmljZU9wZXJhdGlvbldoZXJlPFRPcGVyYXRpb24+LFxuICBUU29ydCBleHRlbmRzIHN0cmluZyA9IEJhY2tvZmZpY2VPcGVyYXRpb25Tb3J0PFRPcGVyYXRpb24+LFxuPiA9IHtcbiAga2luZDogJ2Nvbm5lY3Rpb24nO1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBxdWVyeTogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGZyYWdtZW50OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgYnVpbGRRdWVyeVZhcmlhYmxlczogKFxuICAgIGlucHV0OiBCYWNrb2ZmaWNlTGlzdFF1ZXJ5SW5wdXQ8VE9wZXJhdGlvbiwgVFdoZXJlLCBUU29ydD4sXG4gICkgPT4gVE9wZXJhdGlvblsndmFyaWFibGVzJ107XG4gIGdldENvbm5lY3Rpb246IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChkYXRhOiBMaXN0RnJhZ21lbnREYXRhKSA9PiBCYWNrb2ZmaWNlQ29ubmVjdGlvbjxSb3dSZWY+XG4gID47XG4gIHRvUm93OiBCaXZhcmlhbnRDYWxsYmFjazwocm93UmVmOiBSb3dSZWYpID0+IFJvd1ZpZXc+O1xuICBnZXRSb3dJZDogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93VmlldykgPT4gc3RyaW5nPjtcbiAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWM8Um93Vmlldz5bXTtcbiAgcm93RmxhZ3M/OiByZWFkb25seSBCYWNrb2ZmaWNlUm93RmxhZ1NwZWM8Um93Vmlldz5bXTtcbiAgc29ydHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VTb3J0U3BlYzxUU29ydD5bXTtcbiAgZmlsdGVyczogcmVhZG9ubHkgQmFja29mZmljZUZpbHRlclNwZWM8VFdoZXJlPltdO1xuICByZXNwb25zaXZlPzogQmFja29mZmljZUxpc3RSZXNwb25zaXZlUHJvZmlsZTxSb3dWaWV3PjtcbiAgdWk/OiBCYWNrb2ZmaWNlTGlzdFVpQ29uZmlnO1xuICBkZWZhdWx0U3RhdGU/OiBCYWNrb2ZmaWNlTGlzdFN0YXRlPFRXaGVyZSwgVFNvcnQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlY29yZExpc3RDb25maWc8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIExpc3RGcmFnbWVudERhdGEgPSB1bmtub3duLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbiAgVFNvcnQgZXh0ZW5kcyBzdHJpbmcgPSBCYWNrb2ZmaWNlT3BlcmF0aW9uU29ydDxUT3BlcmF0aW9uPixcbj4gPSB7XG4gIGtpbmQ6ICdyZWNvcmRzJztcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgcXVlcnk6IEdyYXBoUUxUYWdnZWROb2RlO1xuICBmcmFnbWVudDogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGJ1aWxkUXVlcnlWYXJpYWJsZXM6IChcbiAgICBpbnB1dDogQmFja29mZmljZUxpc3RRdWVyeUlucHV0PFRPcGVyYXRpb24sIFRXaGVyZSwgVFNvcnQ+LFxuICApID0+IFRPcGVyYXRpb25bJ3ZhcmlhYmxlcyddO1xuICBnZXRSb3dzOiBCaXZhcmlhbnRDYWxsYmFjazwoZGF0YTogTGlzdEZyYWdtZW50RGF0YSkgPT4gcmVhZG9ubHkgUm93UmVmW10+O1xuICB0b1JvdzogQml2YXJpYW50Q2FsbGJhY2s8KHJvd1JlZjogUm93UmVmKSA9PiBSb3dWaWV3PjtcbiAgZ2V0TmV4dEN1cnNvcj86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChkYXRhOiBCYWNrb2ZmaWNlT3BlcmF0aW9uUmVzcG9uc2U8VE9wZXJhdGlvbj4pID0+IHN0cmluZyB8IG51bGxcbiAgPjtcbiAgZ2V0Um93SWQ6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvd1ZpZXcpID0+IHN0cmluZz47XG4gIGNvbHVtbnM6IHJlYWRvbmx5IEJhY2tvZmZpY2VDb2x1bW5TcGVjPFJvd1ZpZXc+W107XG4gIHJvd0ZsYWdzPzogcmVhZG9ubHkgQmFja29mZmljZVJvd0ZsYWdTcGVjPFJvd1ZpZXc+W107XG4gIHNvcnRzOiByZWFkb25seSBCYWNrb2ZmaWNlU29ydFNwZWM8VFNvcnQ+W107XG4gIGZpbHRlcnM6IHJlYWRvbmx5IEJhY2tvZmZpY2VGaWx0ZXJTcGVjPFRXaGVyZT5bXTtcbiAgcmVzcG9uc2l2ZT86IEJhY2tvZmZpY2VMaXN0UmVzcG9uc2l2ZVByb2ZpbGU8Um93Vmlldz47XG4gIHVpPzogQmFja29mZmljZUxpc3RVaUNvbmZpZztcbiAgZGVmYXVsdFN0YXRlPzogQmFja29mZmljZUxpc3RTdGF0ZTxUV2hlcmUsIFRTb3J0Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlMaXN0Q29uZmlnPFxuICBUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZSxcbiAgUm93UmVmLFxuICBSb3dWaWV3LFxuICBMaXN0RnJhZ21lbnREYXRhID0gdW5rbm93bixcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4gIFRTb3J0IGV4dGVuZHMgc3RyaW5nID0gQmFja29mZmljZU9wZXJhdGlvblNvcnQ8VE9wZXJhdGlvbj4sXG4+ID1cbiAgfCBCYWNrb2ZmaWNlQ29ubmVjdGlvbkxpc3RDb25maWc8XG4gICAgICBUT3BlcmF0aW9uLFxuICAgICAgUm93UmVmLFxuICAgICAgUm93VmlldyxcbiAgICAgIExpc3RGcmFnbWVudERhdGEsXG4gICAgICBUV2hlcmUsXG4gICAgICBUU29ydFxuICAgID5cbiAgfCBCYWNrb2ZmaWNlUmVjb3JkTGlzdENvbmZpZzxcbiAgICAgIFRPcGVyYXRpb24sXG4gICAgICBSb3dSZWYsXG4gICAgICBSb3dWaWV3LFxuICAgICAgTGlzdEZyYWdtZW50RGF0YSxcbiAgICAgIFRXaGVyZSxcbiAgICAgIFRTb3J0XG4gICAgPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUJhZGdlSXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZyB8IEkxOG5MYWJlbDtcbiAgdGl0bGU/OiBzdHJpbmcgfCBJMThuTGFiZWw7XG4gIHRvbmU/OiBCYWNrb2ZmaWNlQmFkZ2VUb25lO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUlubGluZVZhbHVlU3BlYyA9XG4gIHwge1xuICAgICAgdHlwZTogJ3RleHQnO1xuICAgICAgdmFsdWU6IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnZW50aXR5UmVmJztcbiAgICAgIGVudGl0eTogc3RyaW5nO1xuICAgICAgaWQ6IHN0cmluZyB8IG51bGw7XG4gICAgICBsYWJlbD86IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnbGluayc7XG4gICAgICBocmVmOiBzdHJpbmcgfCBudWxsO1xuICAgICAgbGFiZWw6IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJTdWJ0aXRsZUl0ZW08Tm9kZT4gPSB7XG4gIGlkOiBzdHJpbmc7XG4gIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZUlubGluZVZhbHVlU3BlYz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyTWV0YVNwZWM8Tm9kZT4gPVxuICB8IHtcbiAgICAgIHR5cGU/OiAndGV4dCc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdkYXRlVGltZSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudW1iZXIgfCBudWxsPjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2VudGl0eVJlZic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgICBpZDogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGw+O1xuICAgICAgdmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdsaW5rJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBocmVmOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyU3RhdHVzU3BlYzxOb2RlPiA9XG4gIHwge1xuICAgICAgdHlwZTogJ2JhZGdlJztcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICAgICAgdG9uZT86XG4gICAgICAgIHwgQmFja29mZmljZUJhZGdlVG9uZVxuICAgICAgICB8IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlQmFkZ2VUb25lPjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2JhZGdlUm93JztcbiAgICAgIGl0ZW1zOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gcmVhZG9ubHkgQmFja29mZmljZUJhZGdlSXRlbVtdPjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGxhY2VtZW50ID0gJ3ByaW1hcnknIHwgJ3NlY29uZGFyeSc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxDb250ZW50R3JvdXAgPVxuICB8ICdzdW1tYXJ5J1xuICB8ICdpZGVudGl0eSdcbiAgfCAnc2NvcGUnXG4gIHwgJ3N0YXR1cydcbiAgfCAncmVsYXRpb25zJ1xuICB8ICdhY3Rpdml0eSdcbiAgfCAnYmlsbGluZydcbiAgfCAndGVjaG5pY2FsJ1xuICB8ICdyYXcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsSW1wb3J0YW5jZSA9XG4gIHwgJ2hlcm8nXG4gIHwgJ3ByaW1hcnknXG4gIHwgJ3NlY29uZGFyeSdcbiAgfCAnZGVidWcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsQ29sbGFwc2VCZWhhdmlvciA9IHtcbiAgY29sbGFwc2libGU/OiBib29sZWFuO1xuICBkZWZhdWx0Q29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcGVyc2lzdEtleT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb24gPSB7XG4gIGdyb3VwPzogQmFja29mZmljZURldGFpbENvbnRlbnRHcm91cDtcbiAgaW1wb3J0YW5jZT86IEJhY2tvZmZpY2VEZXRhaWxJbXBvcnRhbmNlO1xuICBjb2xsYXBzZT86IEJhY2tvZmZpY2VEZXRhaWxDb2xsYXBzZUJlaGF2aW9yO1xuICBtb2JpbGU/OiAndmlzaWJsZScgfCAnY29sbGFwc2VkJyB8ICdoaWRkZW4nO1xuICBkZXNrdG9wPzogJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnZnVsbFdpZHRoJztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VUb25lID1cbiAgfCAnbmV1dHJhbCdcbiAgfCAnaW5mbydcbiAgfCAnc3VjY2VzcydcbiAgfCAnd2FybmluZydcbiAgfCAnZGFuZ2VyJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFjdGlvblRvbmUgPSAnbmV1dHJhbCcgfCAncHJpbWFyeScgfCAnZGFuZ2VyJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURlbnNpdHkgPSAnY29tcGFjdCcgfCAnY29tZm9ydGFibGUnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU2VtYW50aWNEZXRhaWxQbGFjZW1lbnQgPSAnbWFpbicgfCAnc2lkZScgfCAnZnVsbFdpZHRoJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVNlbWFudGljRGV0YWlsUHJpb3JpdHkgPVxuICB8ICdwcmltYXJ5J1xuICB8ICdzZWNvbmRhcnknXG4gIHwgJ2RpYWdub3N0aWMnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVuZGVyYWJsZVZhbHVlID1cbiAgfCBzdHJpbmdcbiAgfCBudW1iZXJcbiAgfCBib29sZWFuXG4gIHwgbnVsbFxuICB8IHVuZGVmaW5lZDtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVN0YXR1c1ZhbHVlID0ge1xuICByZWFkb25seSBsYWJlbDogc3RyaW5nIHwgSTE4bkxhYmVsO1xuICByZWFkb25seSB0b25lOiBCYWNrb2ZmaWNlVG9uZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VTZW1hbnRpY0Jsb2NrQmFzZSA9IHtcbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRpdGxlOiBJMThuTGFiZWw7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICByZWFkb25seSBwbGFjZW1lbnQ/OiBCYWNrb2ZmaWNlU2VtYW50aWNEZXRhaWxQbGFjZW1lbnQ7XG4gIHJlYWRvbmx5IHByaW9yaXR5PzogQmFja29mZmljZVNlbWFudGljRGV0YWlsUHJpb3JpdHk7XG4gIHJlYWRvbmx5IHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVmFsdWVTcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGhyZWY/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGNvcHlWYWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG4gID47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU3VtbWFyeUl0ZW1TcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsXG4gID47XG4gIHJlYWRvbmx5IGhyZWY/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU3VtbWFyeUJsb2NrU3BlYzxOb2RlPiA9IEJhY2tvZmZpY2VTZW1hbnRpY0Jsb2NrQmFzZSAmIHtcbiAgcmVhZG9ubHkga2luZDogJ3N1bW1hcnknO1xuICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZVN1bW1hcnlJdGVtU3BlYzxOb2RlPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUhlcm9TdW1tYXJ5QmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVN1bW1hcnlCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VNZXRyaWNTcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgZm9ybWF0dGVkVmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuICA+O1xuICByZWFkb25seSBoaW50PzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGNvcHlWYWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG4gID47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTWV0cmljR3JvdXBCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gICAgcmVhZG9ubHkga2luZDogJ21ldHJpY3MnO1xuICAgIHJlYWRvbmx5IGRlbnNpdHk/OiBCYWNrb2ZmaWNlRGVuc2l0eTtcbiAgICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZU1ldHJpY1NwZWM8Tm9kZT5bXTtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU1ldHJpY0Jsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VNZXRyaWNHcm91cEJsb2NrU3BlYzxOb2RlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVN0YXRlU3BlYzxOb2RlPiA9IHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcmVhZG9ubHkgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlUmVuZGVyYWJsZVZhbHVlPjtcbiAgcmVhZG9ubHkgZ2V0RGlzcGxheTogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKFxuICAgICAgdmFsdWU6IEJhY2tvZmZpY2VSZW5kZXJhYmxlVmFsdWUsXG4gICAgICBub2RlOiBOb2RlLFxuICAgICkgPT4ge1xuICAgICAgcmVhZG9ubHkgbGFiZWw6IHN0cmluZyB8IEkxOG5MYWJlbDtcbiAgICAgIHJlYWRvbmx5IHRvbmU6IEJhY2tvZmZpY2VUb25lO1xuICAgIH1cbiAgPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VTdGF0ZUdyb3VwQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICAgIHJlYWRvbmx5IGtpbmQ6ICdzdGF0ZXMnO1xuICAgIHJlYWRvbmx5IHN0YXRlczogcmVhZG9ubHkgQmFja29mZmljZVN0YXRlU3BlYzxOb2RlPltdO1xuICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU3RhdGVCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU3RhdGVHcm91cEJsb2NrU3BlYzxOb2RlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUNvbnRleHRJdGVtU3BlYzxOb2RlPiA9IHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcmVhZG9ubHkgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gIHJlYWRvbmx5IGhyZWY/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGVtcHR5TGFiZWw/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29udGV4dFN0YWNrQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICAgIHJlYWRvbmx5IGtpbmQ6ICdjb250ZXh0JztcbiAgICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZUNvbnRleHRJdGVtU3BlYzxOb2RlPltdO1xuICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29udGV4dEJsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VDb250ZXh0U3RhY2tCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZWxhdGlvblRpbGVTcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSBjb3VudD86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgcmVhZG9ubHkgaHJlZj86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWxcbiAgPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVsYXRpb25Hcm91cEJsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VTZW1hbnRpY0Jsb2NrQmFzZSAmIHtcbiAgICByZWFkb25seSBraW5kOiAncmVsYXRpb25zJztcbiAgICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZVJlbGF0aW9uVGlsZVNwZWM8Tm9kZT5bXTtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlbGF0aW9uQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVJlbGF0aW9uR3JvdXBCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VUaW1lbGluZUV2ZW50U3BlYzxOb2RlPiA9IHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcmVhZG9ubHkgdGltZXN0YW1wPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bWJlciB8IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkXG4gID47XG4gIHJlYWRvbmx5IHN0YXRlPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VTdGF0dXNWYWx1ZSB8IG51bGwgfCB1bmRlZmluZWRcbiAgPjtcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWxcbiAgPjtcbiAgcmVhZG9ubHkgYWN0b3I/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBwYXlsb2FkPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHVua25vd24+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRpbWVsaW5lQmxvY2tTcGVjPE5vZGU+ID0gQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICByZWFkb25seSBraW5kOiAndGltZWxpbmUnO1xuICByZWFkb25seSBldmVudHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VUaW1lbGluZUV2ZW50U3BlYzxOb2RlPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUF1ZGl0SXRlbVNwZWM8Tm9kZT4gPSB7XG4gIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxhYmVsOiBJMThuTGFiZWw7XG4gIHJlYWRvbmx5IHRpbWVzdGFtcD86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZFxuICA+O1xuICByZWFkb25seSBhY3Rvcj86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gIHJlYWRvbmx5IHNvdXJjZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQXVkaXRCbG9ja1NwZWM8Tm9kZT4gPSBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gIHJlYWRvbmx5IGtpbmQ6ICdhdWRpdCc7XG4gIHJlYWRvbmx5IGl0ZW1zOiByZWFkb25seSBCYWNrb2ZmaWNlQXVkaXRJdGVtU3BlYzxOb2RlPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlZmVyZW5jZVNwZWM8Tm9kZT4gPSB7XG4gIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxhYmVsOiBJMThuTGFiZWw7XG4gIHJlYWRvbmx5IHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBocmVmPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ+O1xuICByZWFkb25seSBjb3B5VmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuICA+O1xuICByZWFkb25seSByZWZLaW5kPzpcbiAgICB8ICdpZCdcbiAgICB8ICdzbHVnJ1xuICAgIHwgJ3BhdGgnXG4gICAgfCAndXJsJ1xuICAgIHwgJ2hhc2gnXG4gICAgfCAnZXh0ZXJuYWwnXG4gICAgfCAndGV4dCc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVmZXJlbmNlR3JvdXBCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gICAgcmVhZG9ubHkga2luZDogJ3JlZmVyZW5jZXMnO1xuICAgIHJlYWRvbmx5IHJlZmVyZW5jZXM6IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWZlcmVuY2VTcGVjPE5vZGU+W107XG4gIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQYXlsb2FkRm9ybWF0ID0gJ2pzb24nIHwgJ21hcmtkb3duJyB8ICd0ZXh0JyB8ICdjb2RlJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVBheWxvYWRCbG9ja1NwZWM8Tm9kZT4gPSBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gIHJlYWRvbmx5IGtpbmQ6ICdwYXlsb2FkJztcbiAgcmVhZG9ubHkgZm9ybWF0PzogQmFja29mZmljZVBheWxvYWRGb3JtYXQ7XG4gIHJlYWRvbmx5IHN1bW1hcnk/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHVua25vd24+O1xuICByZWFkb25seSBkZWZhdWx0Q29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW1wdHlMYWJlbD86IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25SZXN1bHRCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gICAgcmVhZG9ubHkga2luZDogJ2FjdGlvblJlc3VsdCc7XG4gICAgcmVhZG9ubHkgc3RhdHVzPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgICAobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVN0YXR1c1ZhbHVlIHwgbnVsbCB8IHVuZGVmaW5lZFxuICAgID47XG4gICAgcmVhZG9ubHkgbWVzc2FnZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gICAgcmVhZG9ubHkgcmVmZXJlbmNlcz86IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWZlcmVuY2VTcGVjPE5vZGU+W107XG4gICAgcmVhZG9ubHkgcGF5bG9hZD86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiB1bmtub3duPjtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRlY2huaWNhbEZhY3RzQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICAgIHJlYWRvbmx5IGtpbmQ6ICd0ZWNobmljYWxGYWN0cyc7XG4gICAgcmVhZG9ubHkgZmFjdHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VWYWx1ZVNwZWM8Tm9kZT5bXTtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVNlbWFudGljRGV0YWlsQmxvY2tTcGVjPE5vZGU+ID1cbiAgfCBCYWNrb2ZmaWNlU3VtbWFyeUJsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VNZXRyaWNHcm91cEJsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VTdGF0ZUdyb3VwQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZUNvbnRleHRTdGFja0Jsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VSZWxhdGlvbkdyb3VwQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVRpbWVsaW5lQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZUF1ZGl0QmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVJlZmVyZW5jZUdyb3VwQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVBheWxvYWRCbG9ja1NwZWM8Tm9kZT5cbiAgfCBCYWNrb2ZmaWNlQWN0aW9uUmVzdWx0QmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVRlY2huaWNhbEZhY3RzQmxvY2tTcGVjPE5vZGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRmxhZ1ZhcmlhbnQgPVxuICB8ICd5ZXNObydcbiAgfCAnY2FwYWJpbGl0eSdcbiAgfCAnZW5hYmxlZCdcbiAgfCAnZmFpbHVyZSdcbiAgfCAnZW5jcnlwdGVkJ1xuICB8ICdsb2NrZWQnXG4gIHwgJ2RlZmF1bHQnXG4gIHwgJ2FnZW50TWFuYWdlZCdcbiAgfCAnZGVwbG95ZWRQcm9kdWN0aW9uJ1xuICB8ICdmb3JjZWQnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsRmllbGRTcGVjPE5vZGU+ID1cbiAgfCB7XG4gICAgICB0eXBlOiAndGV4dCc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICAgICAgY29weVZhbHVlPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGw+O1xuICAgICAgZnVsbFdpZHRoPzogYm9vbGVhbjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdiYWRnZSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICAgICAgdG9uZT86XG4gICAgICAgIHwgQmFja29mZmljZUJhZGdlVG9uZVxuICAgICAgICB8IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlQmFkZ2VUb25lPjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdiYWRnZVJvdyc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIGl0ZW1zOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gcmVhZG9ubHkgQmFja29mZmljZUJhZGdlSXRlbVtdPjtcbiAgICAgIGZ1bGxXaWR0aD86IGJvb2xlYW47XG4gICAgICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnZGF0ZVRpbWUnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bWJlciB8IG51bGw+O1xuICAgICAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ251bWJlcic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gbnVtYmVyIHwgbnVsbD47XG4gICAgICBmb3JtYXQ/OiBCYWNrb2ZmaWNlTnVtYmVyRm9ybWF0O1xuICAgICAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2ZsYWcnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IGJvb2xlYW4gfCBudWxsPjtcbiAgICAgIHZhcmlhbnQ6IEJhY2tvZmZpY2VGbGFnVmFyaWFudDtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdlbnRpdHlSZWYnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICBlbnRpdHk6IHN0cmluZztcbiAgICAgIGlkOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgICB2YWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdsaW5rJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBzaXplOiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICAgICAgaHJlZjogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGw+O1xuICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudW1iZXIgfCBudWxsPjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICd0YWdnZWRWYWx1ZSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHRhZzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgICAgIChub2RlOiBOb2RlKSA9PiB7XG4gICAgICAgICAgbGFiZWw6IHN0cmluZyB8IEkxOG5MYWJlbDtcbiAgICAgICAgICB0b25lPzogQmFja29mZmljZUJhZGdlVG9uZTtcbiAgICAgICAgfSB8IG51bGxcbiAgICAgID47XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VJbmxpbmVWYWx1ZVNwZWM+O1xuICAgICAgZnVsbFdpZHRoPzogYm9vbGVhbjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdyZWxhdGlvbic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHJlbGF0aW9uOiBCYWNrb2ZmaWNlUnVudGltZVJlbGF0aW9uRmlsdGVyU3BlYztcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nPjtcbiAgICAgIGNvdW50PzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IG51bWJlciB8IG51bGw+O1xuICAgICAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2N1c3RvbSc7XG4gICAgICBsYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICByZW5kZXI6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiB1bmtub3duPjtcbiAgICAgIGZ1bGxXaWR0aD86IGJvb2xlYW47XG4gICAgICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJDb25maWc8Tm9kZT4gPSB7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIHRpdGxlVmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSwgdDogVEZ1bmN0aW9uKSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgc3VidGl0bGU/OiBJMThuTGFiZWw7XG4gIHN1YnRpdGxlVmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSwgdDogVEZ1bmN0aW9uKSA9PiBzdHJpbmcgfCBudWxsXG4gID47XG4gIHN1YnRpdGxlSXRlbXM/OiByZWFkb25seSBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyU3VidGl0bGVJdGVtPE5vZGU+W107XG4gIHN1YnRpdGxlU2VwYXJhdG9yPzogc3RyaW5nO1xuICBpZD86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgYmFkZ2VzPzogcmVhZG9ubHkge1xuICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gICAgdG9uZT86XG4gICAgICB8IEJhY2tvZmZpY2VCYWRnZVRvbmVcbiAgICAgIHwgQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VCYWRnZVRvbmU+O1xuICB9W107XG4gIHN0YXR1cz86IEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJTdGF0dXNTcGVjPE5vZGU+O1xuICBtZXRhPzogcmVhZG9ubHkgQmFja29mZmljZURldGFpbEhlYWRlck1ldGFTcGVjPE5vZGU+W107XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsU2VjdGlvbkNvbmZpZzxOb2RlPiA9IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICBmaWVsZHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxGaWVsZFNwZWM8Tm9kZT5bXTtcbiAgcGxhY2VtZW50PzogQmFja29mZmljZURldGFpbFBsYWNlbWVudDtcbiAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VGaWVsZFNldEJsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VEZXRhaWxTZWN0aW9uQ29uZmlnPE5vZGU+ICYge1xuICAgIGtpbmQ6ICdmaWVsZFNldCc7XG4gIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxUYWJsZUJsb2NrU3BlYzxOb2RlLCBSb3c+ID0ge1xuICBraW5kOiAndGFibGUnO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWM8Um93PltdO1xuICByb3dzOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gcmVhZG9ubHkgUm93W10+O1xuICBwbGFjZW1lbnQ/OiBCYWNrb2ZmaWNlRGV0YWlsUGxhY2VtZW50O1xuICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRhYmxlQmxvY2tTcGVjPFxuICBOb2RlLFxuICBSb3cgPSB1bmtub3duLFxuPiA9IEJhY2tvZmZpY2VEZXRhaWxUYWJsZUJsb2NrU3BlYzxOb2RlLCBSb3c+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ3VzdG9tQmxvY2tTcGVjPE5vZGU+ID0ge1xuICBraW5kOiAnY3VzdG9tJztcbiAgbGFiZWw/OiBJMThuTGFiZWw7XG4gIHJlbmRlcjogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHVua25vd24+O1xuICBwbGFjZW1lbnQ/OiBCYWNrb2ZmaWNlRGV0YWlsUGxhY2VtZW50O1xuICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbEJsb2NrU3BlYzxOb2RlPiA9XG4gIHwgQmFja29mZmljZVNlbWFudGljRGV0YWlsQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZURldGFpbFRhYmxlQmxvY2tTcGVjPE5vZGUsIGFueT5cbiAgfCBCYWNrb2ZmaWNlQ3VzdG9tQmxvY2tTcGVjPE5vZGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsQ29udGVudFNwZWM8Tm9kZT4gPVxuICB8IEJhY2tvZmZpY2VGaWVsZFNldEJsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VEZXRhaWxCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxWaWV3TGF5b3V0U3BlYyA9IHtcbiAgcmVhZG9ubHkgZGVuc2l0eT86IEJhY2tvZmZpY2VEZW5zaXR5O1xuICByZWFkb25seSBjb2x1bW5zPzogJ2F1dG8nIHwgJ3NpbmdsZScgfCAnbWFpblNpZGUnO1xuICByZWFkb25seSB0ZWNobmljYWxEZWZhdWx0Q29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgc2lkZUNvbHVtbj86IHtcbiAgICByZWFkb25seSB3aWR0aD86ICduYXJyb3cnIHwgJ21lZGl1bScgfCAnd2lkZSc7XG4gICAgcmVhZG9ubHkgc3RpY2t5PzogYm9vbGVhbjtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlVmlld1NwZWM8Tm9kZT4gPSB7XG4gIHJlYWRvbmx5IHRpdGxlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBzdWJ0aXRsZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gIHJlYWRvbmx5IGV5ZWJyb3c/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBzdGF0dXM/OiBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyU3RhdHVzU3BlYzxOb2RlPjtcbiAgcmVhZG9ubHkgcmVmZXJlbmNlcz86IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWZlcmVuY2VTcGVjPE5vZGU+W107XG4gIHJlYWRvbmx5IGFjdGlvbnM/OiByZWFkb25seSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uU3BlYzxOb2RlPltdO1xuICByZWFkb25seSBsYXlvdXQ/OiBCYWNrb2ZmaWNlRGV0YWlsVmlld0xheW91dFNwZWM7XG4gIHJlYWRvbmx5IGJsb2NrczogcmVhZG9ubHkgQmFja29mZmljZURldGFpbENvbnRlbnRTcGVjPE5vZGU+W107XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZURhdGFDb250ZXh0ID0ge1xuICBpZDogc3RyaW5nO1xuICBkZXRhaWxJZD86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlVmFyaWFibGVzUmVzdWx0PERldGFpbFF1ZXJ5VmFyaWFibGVzPiA9IHtcbiAgdmFyaWFibGVzOiBEZXRhaWxRdWVyeVZhcmlhYmxlcztcbiAgZGV0YWlsSWQ/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsVmFyaWFibGVzPERldGFpbFF1ZXJ5VmFyaWFibGVzPiA9XG4gIEJhY2tvZmZpY2VEZXRhaWxQYWdlVmFyaWFibGVzUmVzdWx0PERldGFpbFF1ZXJ5VmFyaWFibGVzPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbFBhZ2VEYXRhU3BlYzxcbiAgRGV0YWlsVmlldyxcbiAgRGV0YWlsRGF0YSA9IERldGFpbFZpZXcsXG4gIERldGFpbFF1ZXJ5RGF0YSA9IHVua25vd24sXG4gIERldGFpbEZyYWdtZW50S2V5ID0gdW5rbm93bixcbiAgRGV0YWlsUXVlcnlWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbj4gPSB7XG4gIHF1ZXJ5OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgZnJhZ21lbnQ6IEdyYXBoUUxUYWdnZWROb2RlO1xuICByZXNvbHZlTm9kZTogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKFxuICAgICAgZGF0YTogRGV0YWlsUXVlcnlEYXRhLFxuICAgICAgY29udGV4dDogQmFja29mZmljZURldGFpbFBhZ2VEYXRhQ29udGV4dCxcbiAgICApID0+IERldGFpbEZyYWdtZW50S2V5IHwgbnVsbFxuICA+O1xuICB0b1ZpZXc6IEJpdmFyaWFudENhbGxiYWNrPChkYXRhOiBEZXRhaWxEYXRhKSA9PiBEZXRhaWxWaWV3PjtcbiAgYnVpbGRWYXJpYWJsZXM/OiAoaW5wdXQ6IHtcbiAgICBpZDogc3RyaW5nO1xuICB9KSA9PiBCYWNrb2ZmaWNlRGV0YWlsUGFnZVZhcmlhYmxlc1Jlc3VsdDxEZXRhaWxRdWVyeVZhcmlhYmxlcz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsU3RhbmRhcmRUYWIgPVxuICB8ICdvdmVydmlldydcbiAgfCAncmVsYXRpb25zJ1xuICB8ICdhY3Rpdml0eSdcbiAgfCAnYmlsbGluZydcbiAgfCAndGVjaG5pY2FsJ1xuICB8ICdyYXcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsVGl0bGVNZXRhSXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw/OiBJMThuTGFiZWw7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIHRvbmU/OiBCYWNrb2ZmaWNlQmFkZ2VUb25lO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbExheW91dFByb2ZpbGU8RGV0YWlsVmlldyA9IHVua25vd24+ID0ge1xuICBzdGFuZGFyZFRhYnM/OiByZWFkb25seSBCYWNrb2ZmaWNlRGV0YWlsU3RhbmRhcmRUYWJbXTtcbiAgc3VtbWFyeUZpZWxkcz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBzY29wZUZpZWxkcz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBzdGF0dXNGaWVsZHM/OiByZWFkb25seSBzdHJpbmdbXTtcbiAgdGVjaG5pY2FsR3JvdXBzQ29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcmF3R3JvdXBzSGlkZGVuRnJvbU92ZXJ2aWV3PzogYm9vbGVhbjtcbiAgc2lkZVJhaWw/OiB7XG4gICAgZ3JvdXBzOiByZWFkb25seSBCYWNrb2ZmaWNlRGV0YWlsQ29udGVudEdyb3VwW107XG4gICAgc3RpY2t5PzogYm9vbGVhbjtcbiAgfTtcbiAgdGl0bGVNZXRhPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IERldGFpbFZpZXcpID0+IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxUaXRsZU1ldGFJdGVtW11cbiAgPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRTcGVjPFxuICBMYXlvdXRWaWV3LFxuICBMYXlvdXREYXRhID0gTGF5b3V0VmlldyxcbiAgTGF5b3V0UXVlcnlEYXRhID0gdW5rbm93bixcbiAgTGF5b3V0RnJhZ21lbnRLZXkgPSB1bmtub3duLFxuICBMYXlvdXRRdWVyeVZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPiA9IEJhY2tvZmZpY2VEZXRhaWxQYWdlRGF0YVNwZWM8XG4gIExheW91dFZpZXcsXG4gIExheW91dERhdGEsXG4gIExheW91dFF1ZXJ5RGF0YSxcbiAgTGF5b3V0RnJhZ21lbnRLZXksXG4gIExheW91dFF1ZXJ5VmFyaWFibGVzXG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZVNwZWM8XG4gIERldGFpbFZpZXcsXG4gIExheW91dFZpZXcgPSBEZXRhaWxWaWV3LFxuICBEZXRhaWxEYXRhID0gRGV0YWlsVmlldyxcbiAgRGV0YWlsUXVlcnlEYXRhID0gdW5rbm93bixcbiAgRGV0YWlsRnJhZ21lbnRLZXkgPSB1bmtub3duLFxuICBEZXRhaWxRdWVyeVZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPiA9IEJhY2tvZmZpY2VEZXRhaWxQYWdlRGF0YVNwZWM8XG4gIERldGFpbFZpZXcsXG4gIERldGFpbERhdGEsXG4gIERldGFpbFF1ZXJ5RGF0YSxcbiAgRGV0YWlsRnJhZ21lbnRLZXksXG4gIERldGFpbFF1ZXJ5VmFyaWFibGVzXG4+ICYge1xuICBpZDogc3RyaW5nO1xuICBwYXRoOiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIGNvbnRlbnQ6IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxDb250ZW50U3BlYzxEZXRhaWxWaWV3PltdO1xuICBhY3Rpb25zPzogcmVhZG9ubHkgQmFja29mZmljZUVudGl0eUFjdGlvblNwZWM8RGV0YWlsVmlldz5bXTtcbiAgaXNWaXNpYmxlPzogQml2YXJpYW50Q2FsbGJhY2s8KGxheW91dFBhZ2U6IExheW91dFZpZXcpID0+IGJvb2xlYW4+O1xuICBwcm9maWxlPzogQmFja29mZmljZURldGFpbExheW91dFByb2ZpbGU8RGV0YWlsVmlldz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUGlja2VyVmFsdWVDb25maWc8Um93UmVmLCBSb3dWaWV3PiA9IHtcbiAgcXVlcnk6IEdyYXBoUUxUYWdnZWROb2RlO1xuICByZXNvbHZlUm93OiBCaXZhcmlhbnRDYWxsYmFjazwoZGF0YTogdW5rbm93bikgPT4gUm93UmVmIHwgbnVsbD47XG4gIHRvUm93OiBCaXZhcmlhbnRDYWxsYmFjazwocm93UmVmOiBSb3dSZWYpID0+IFJvd1ZpZXc+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eURldGFpbENvbmZpZzxcbiAgTGF5b3V0RGF0YSA9IGFueSxcbiAgTGF5b3V0VmlldyA9IGFueSxcbiAgTWFpbkRhdGEgPSBMYXlvdXREYXRhLFxuICBNYWluVmlldyA9IExheW91dFZpZXcsXG4gIFN1YkRhdGEgPSBNYWluRGF0YSxcbiAgU3ViVmlldyA9IE1haW5WaWV3LFxuICBMYXlvdXRRdWVyeURhdGEgPSB1bmtub3duLFxuICBNYWluUXVlcnlEYXRhID0gdW5rbm93bixcbiAgU3ViUXVlcnlEYXRhID0gTWFpblF1ZXJ5RGF0YSxcbiAgTGF5b3V0RnJhZ21lbnRLZXkgPSB1bmtub3duLFxuICBNYWluRnJhZ21lbnRLZXkgPSB1bmtub3duLFxuICBTdWJGcmFnbWVudEtleSA9IE1haW5GcmFnbWVudEtleSxcbiAgTGF5b3V0UXVlcnlWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgTWFpblF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIFN1YlF1ZXJ5VmFyaWFibGVzID0gTWFpblF1ZXJ5VmFyaWFibGVzLFxuPiA9IHtcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgaGVhZGVyOiBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyQ29uZmlnPExheW91dFZpZXc+O1xuICBwcm9maWxlPzogQmFja29mZmljZURldGFpbExheW91dFByb2ZpbGU8TGF5b3V0Vmlldz47XG4gIGxheW91dFBhZ2U6IEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRTcGVjPFxuICAgIExheW91dFZpZXcsXG4gICAgTGF5b3V0RGF0YSxcbiAgICBMYXlvdXRRdWVyeURhdGEsXG4gICAgTGF5b3V0RnJhZ21lbnRLZXksXG4gICAgTGF5b3V0UXVlcnlWYXJpYWJsZXNcbiAgPjtcbiAgbWFpblBhZ2U6IEJhY2tvZmZpY2VEZXRhaWxQYWdlU3BlYzxcbiAgICBNYWluVmlldyxcbiAgICBMYXlvdXRWaWV3LFxuICAgIE1haW5EYXRhLFxuICAgIE1haW5RdWVyeURhdGEsXG4gICAgTWFpbkZyYWdtZW50S2V5LFxuICAgIE1haW5RdWVyeVZhcmlhYmxlc1xuICA+O1xuICBzdWJQYWdlcz86IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxQYWdlU3BlYzxcbiAgICBTdWJWaWV3LFxuICAgIExheW91dFZpZXcsXG4gICAgU3ViRGF0YSxcbiAgICBTdWJRdWVyeURhdGEsXG4gICAgU3ViRnJhZ21lbnRLZXksXG4gICAgU3ViUXVlcnlWYXJpYWJsZXNcbiAgPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eVBpY2tlckNvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgUGlja2VyRnJhZ21lbnREYXRhID0gdW5rbm93bixcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4+ID0ge1xuICBxdWVyeTogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGZyYWdtZW50OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgYnVpbGRRdWVyeVZhcmlhYmxlczogKFxuICAgIGlucHV0OiBCYWNrb2ZmaWNlUGlja2VyUXVlcnlJbnB1dDxUT3BlcmF0aW9uLCBUV2hlcmU+LFxuICApID0+IFRPcGVyYXRpb25bJ3ZhcmlhYmxlcyddO1xuICB2YWx1ZT86IEJhY2tvZmZpY2VQaWNrZXJWYWx1ZUNvbmZpZzxSb3dSZWYsIFJvd1ZpZXc+O1xuICBnZXRDb25uZWN0aW9uOiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAoZGF0YTogUGlja2VyRnJhZ21lbnREYXRhKSA9PiBCYWNrb2ZmaWNlQ29ubmVjdGlvbjxSb3dSZWY+XG4gID47XG4gIHRvUm93OiBCaXZhcmlhbnRDYWxsYmFjazwocm93UmVmOiBSb3dSZWYpID0+IFJvd1ZpZXc+O1xuICBnZXRSb3dJZDogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93VmlldykgPT4gc3RyaW5nPjtcbiAgc2VhcmNoRW5hYmxlZD86IGJvb2xlYW47XG4gIHNlYXJjaFJlcXVpcmVkPzogYm9vbGVhbjtcbiAgc2VhcmNoUGxhY2Vob2xkZXI/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbEVudGl0eUNvbmZpZyA9IHtcbiAga2luZDogJ3Rvb2wnO1xuICBpZDogc3RyaW5nO1xuICBsYWJlbD86IEkxOG5MYWJlbDtcbiAgcm91dGU/OiBzdHJpbmc7XG4gIG9wZXJhdGlvbjogQmFja29mZmljZVRvb2xPcGVyYXRpb247XG4gIGxpc3Q/OiBuZXZlcjtcbiAgZGV0YWlsPzogbmV2ZXI7XG4gIHBpY2tlcj86IG5ldmVyO1xuICByb3V0ZXM/OiBuZXZlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0RmFjZXRDb25maWc8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIExpc3RGcmFnbWVudERhdGEsXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gQmFja29mZmljZU9wZXJhdGlvbldoZXJlPFRPcGVyYXRpb24+LFxuICBUU29ydCBleHRlbmRzIHN0cmluZyA9IEJhY2tvZmZpY2VPcGVyYXRpb25Tb3J0PFRPcGVyYXRpb24+LFxuPiA9IHtcbiAga2luZDogJ2xpc3QnO1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICBsaXN0OiBCYWNrb2ZmaWNlRW50aXR5TGlzdENvbmZpZzxcbiAgICBUT3BlcmF0aW9uLFxuICAgIFJvd1JlZixcbiAgICBSb3dWaWV3LFxuICAgIExpc3RGcmFnbWVudERhdGEsXG4gICAgVFdoZXJlLFxuICAgIFRTb3J0XG4gID47XG4gIGxpc3RBY3Rpb25zPzogcmVhZG9ubHkgQmFja29mZmljZUxpc3RBY3Rpb25TcGVjW107XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUGlja2VyRmFjZXRDb25maWc8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIFBpY2tlckZyYWdtZW50RGF0YSxcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4+ID0ge1xuICBraW5kOiAncGlja2VyJztcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcGlja2VyOiBCYWNrb2ZmaWNlRW50aXR5UGlja2VyQ29uZmlnPFxuICAgIFRPcGVyYXRpb24sXG4gICAgUm93UmVmLFxuICAgIFJvd1ZpZXcsXG4gICAgUGlja2VyRnJhZ21lbnREYXRhLFxuICAgIFRXaGVyZVxuICA+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbFBhZ2VzU3BlYzxcbiAgTGF5b3V0VmlldyA9IHVua25vd24sXG4gIFBhZ2UgZXh0ZW5kcyBCYWNrb2ZmaWNlRGV0YWlsUGFnZVJvdXRlU3BlYzxMYXlvdXRWaWV3PiA9XG4gICAgQmFja29mZmljZURldGFpbFBhZ2VSb3V0ZVNwZWM8TGF5b3V0Vmlldz4sXG4+ID0ge1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBoZWFkZXI6IEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJDb25maWc8TGF5b3V0Vmlldz47XG4gIG1haW5QYWdlOiBQYWdlO1xuICBzdWJQYWdlcz86IHJlYWRvbmx5IFBhZ2VbXTtcbiAgZGVmYXVsdFBhZ2VJZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbExheW91dEZhY2V0Q29uZmlnPFxuICBMYXlvdXREYXRhID0gYW55LFxuICBMYXlvdXRWaWV3ID0gYW55LFxuICBMYXlvdXRRdWVyeURhdGEgPSB1bmtub3duLFxuICBMYXlvdXRGcmFnbWVudEtleSA9IHVua25vd24sXG4gIExheW91dFF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4+ID0ge1xuICBraW5kOiAnZGV0YWlsLWxheW91dCc7XG4gIGlkOiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIGhlYWRlcjogQmFja29mZmljZURldGFpbEhlYWRlckNvbmZpZzxMYXlvdXRWaWV3PjtcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgbGF5b3V0UGFnZTogQmFja29mZmljZURldGFpbExheW91dFNwZWM8XG4gICAgTGF5b3V0VmlldyxcbiAgICBMYXlvdXREYXRhLFxuICAgIExheW91dFF1ZXJ5RGF0YSxcbiAgICBMYXlvdXRGcmFnbWVudEtleSxcbiAgICBMYXlvdXRRdWVyeVZhcmlhYmxlc1xuICA+O1xuICBwYWdlczogQmFja29mZmljZURldGFpbFBhZ2VzU3BlYzxMYXlvdXRWaWV3Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRDb25maWc8XG4gIExheW91dFZpZXcgPSB1bmtub3duLFxuICBEZXRhaWxEYXRhID0gYW55LFxuICBEZXRhaWxWaWV3ID0gYW55LFxuICBEZXRhaWxRdWVyeURhdGEgPSB1bmtub3duLFxuICBEZXRhaWxGcmFnbWVudEtleSA9IHVua25vd24sXG4gIERldGFpbFF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4+ID0ge1xuICBraW5kOiAnZGV0YWlsLXBhZ2UnO1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBoZWFkZXI6IEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJDb25maWc8TGF5b3V0Vmlldz47XG4gIHBhZ2U6IEJhY2tvZmZpY2VEZXRhaWxQYWdlU3BlYzxcbiAgICBEZXRhaWxWaWV3LFxuICAgIExheW91dFZpZXcsXG4gICAgRGV0YWlsRGF0YSxcbiAgICBEZXRhaWxRdWVyeURhdGEsXG4gICAgRGV0YWlsRnJhZ21lbnRLZXksXG4gICAgRGV0YWlsUXVlcnlWYXJpYWJsZXNcbiAgPjtcbiAgcGFnZXM6IEJhY2tvZmZpY2VEZXRhaWxQYWdlc1NwZWM8TGF5b3V0Vmlldz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbEZhY2V0Q29uZmlnID0ge1xuICBraW5kOiAndG9vbCc7XG4gIGlkOiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIHRvb2w6IEJhY2tvZmZpY2VUb29sRW50aXR5Q29uZmlnO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUZhY2V0Q29uZmlnQmFzZSA9XG4gIHwgQmFja29mZmljZUxpc3RGYWNldENvbmZpZ0Jhc2VcbiAgfCBCYWNrb2ZmaWNlUGlja2VyRmFjZXRDb25maWdCYXNlXG4gIHwgQmFja29mZmljZURldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZVxuICB8IEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlXG4gIHwgQmFja29mZmljZVRvb2xGYWNldENvbmZpZztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxvYWRlZExpc3RGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ2xpc3QnO1xuICBpZDogc3RyaW5nO1xuICBjb25maWc6IEJhY2tvZmZpY2VMaXN0RmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxvYWRlZFBpY2tlckZhY2V0TW9kdWxlID0ge1xuICBraW5kOiAncGlja2VyJztcbiAgaWQ6IHN0cmluZztcbiAgY29uZmlnOiBCYWNrb2ZmaWNlUGlja2VyRmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxvYWRlZERldGFpbExheW91dEZhY2V0TW9kdWxlID0ge1xuICBraW5kOiAnZGV0YWlsLWxheW91dCc7XG4gIGlkOiBzdHJpbmc7XG4gIGNvbmZpZzogQmFja29mZmljZURldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMb2FkZWREZXRhaWxQYWdlRmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICdkZXRhaWwtcGFnZSc7XG4gIGlkOiBzdHJpbmc7XG4gIHBhZ2VJZDogc3RyaW5nO1xuICBjb25maWc6IEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxvYWRlZFRvb2xGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ3Rvb2wnO1xuICBpZDogc3RyaW5nO1xuICBjb25maWc6IEJhY2tvZmZpY2VUb29sRmFjZXRDb25maWc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZU9wZXJhdGlvbiA9IE9wZXJhdGlvblR5cGUgJiB7XG4gIHZhcmlhYmxlczoge1xuICAgIFtrZXk6IHN0cmluZ106IHVua25vd247XG4gICAgd2hlcmU/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IG51bGwgfCB1bmRlZmluZWQ7XG4gICAgc29ydD86IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gICAgY291bnQ/OiBudW1iZXI7XG4gICAgY3Vyc29yPzogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgfTtcbiAgcmVzcG9uc2U6IHVua25vd247XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZUxpc3RGYWNldENvbmZpZyA9IEJhY2tvZmZpY2VMaXN0RmFjZXRDb25maWc8XG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgUmVjb3JkPHN0cmluZywgYW55PixcbiAgYW55XG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZVBpY2tlckZhY2V0Q29uZmlnID0gQmFja29mZmljZVBpY2tlckZhY2V0Q29uZmlnPFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIFJlY29yZDxzdHJpbmcsIGFueT5cbj47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMb2FkZWRFbnRpdHlGYWNldE1vZHVsZSA9XG4gIHwgQmFja29mZmljZUxvYWRlZExpc3RGYWNldE1vZHVsZVxuICB8IEJhY2tvZmZpY2VMb2FkZWRQaWNrZXJGYWNldE1vZHVsZVxuICB8IEJhY2tvZmZpY2VMb2FkZWREZXRhaWxMYXlvdXRGYWNldE1vZHVsZVxuICB8IEJhY2tvZmZpY2VMb2FkZWREZXRhaWxQYWdlRmFjZXRNb2R1bGVcbiAgfCBCYWNrb2ZmaWNlTG9hZGVkVG9vbEZhY2V0TW9kdWxlO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdEZhY2V0TG9hZGVyID1cbiAgKCkgPT4gUHJvbWlzZTxCYWNrb2ZmaWNlTG9hZGVkTGlzdEZhY2V0TW9kdWxlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVBpY2tlckZhY2V0TG9hZGVyID1cbiAgKCkgPT4gUHJvbWlzZTxCYWNrb2ZmaWNlTG9hZGVkUGlja2VyRmFjZXRNb2R1bGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0RmFjZXRMb2FkZXIgPVxuICAoKSA9PiBQcm9taXNlPEJhY2tvZmZpY2VMb2FkZWREZXRhaWxMYXlvdXRGYWNldE1vZHVsZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRMb2FkZXIgPSAoXG4gIHBhZ2VJZDogc3RyaW5nLFxuKSA9PiBQcm9taXNlPEJhY2tvZmZpY2VMb2FkZWREZXRhaWxQYWdlRmFjZXRNb2R1bGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbEZhY2V0TG9hZGVyID1cbiAgKCkgPT4gUHJvbWlzZTxCYWNrb2ZmaWNlTG9hZGVkVG9vbEZhY2V0TW9kdWxlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3REZXRhaWxGYWNldExvYWRlck1hcCA9IHtcbiAgbGlzdD86IEJhY2tvZmZpY2VMaXN0RmFjZXRMb2FkZXI7XG4gIHBpY2tlcj86IEJhY2tvZmZpY2VQaWNrZXJGYWNldExvYWRlcjtcbiAgZGV0YWlsTGF5b3V0OiBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0RmFjZXRMb2FkZXI7XG4gIGRldGFpbFBhZ2U6IEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRMb2FkZXI7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbEZhY2V0TG9hZGVyTWFwID0ge1xuICB0b29sOiBCYWNrb2ZmaWNlVG9vbEZhY2V0TG9hZGVyO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUZhY2V0TG9hZGVyTWFwID1cbiAgfCBCYWNrb2ZmaWNlTGlzdERldGFpbEZhY2V0TG9hZGVyTWFwXG4gIHwgQmFja29mZmljZVRvb2xGYWNldExvYWRlck1hcDtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAga2luZDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0S2luZDtcbiAgcm91dGVTZWdtZW50OiBzdHJpbmc7XG4gIGdyb3VwSWQ/OiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIHJvdXRlczogQmFja29mZmljZUVudGl0eVJvdXRlTWFuaWZlc3Q7XG4gIGhhc0xpc3Q6IGJvb2xlYW47XG4gIGRldGFpbFBhZ2VzPzogcmVhZG9ubHkgQmFja29mZmljZURldGFpbFBhZ2VNYW5pZmVzdEl0ZW1bXTtcbiAgZGVmYXVsdERldGFpbFBhZ2VJZD86IHN0cmluZztcbiAgZmFjZXRzOiBCYWNrb2ZmaWNlRW50aXR5RmFjZXRMb2FkZXJNYXA7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5TWFuaWZlc3RNYXAgPSBSZWNvcmQ8XG4gIHN0cmluZyxcbiAgQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbVxuPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0PiA9IEV4dHJhY3Q8XG4gIGtleW9mIFRNYW5pZmVzdCxcbiAgc3RyaW5nXG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTWFuaWZlc3RMaXN0RW50aXR5SWQ8VE1hbmlmZXN0PiA9IHtcbiAgW1RFbnRpdHlJZCBpbiBCYWNrb2ZmaWNlTWFuaWZlc3RFbnRpdHlJZDxUTWFuaWZlc3Q+XTogVE1hbmlmZXN0W1RFbnRpdHlJZF0gZXh0ZW5kcyB7XG4gICAga2luZDogJ2xpc3QtZGV0YWlsJztcbiAgICBoYXNMaXN0OiB0cnVlO1xuICB9XG4gICAgPyBURW50aXR5SWRcbiAgICA6IG5ldmVyO1xufVtCYWNrb2ZmaWNlTWFuaWZlc3RFbnRpdHlJZDxUTWFuaWZlc3Q+XSBleHRlbmRzIGluZmVyIFRFbnRpdHlJZFxuICA/IFtURW50aXR5SWRdIGV4dGVuZHMgW25ldmVyXVxuICAgID8gc3RyaW5nIGV4dGVuZHMgQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0PlxuICAgICAgPyBzdHJpbmdcbiAgICAgIDogbmV2ZXJcbiAgICA6IEV4dHJhY3Q8VEVudGl0eUlkLCBzdHJpbmc+XG4gIDogbmV2ZXI7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VNYW5pZmVzdERldGFpbEVudGl0eUlkPFRNYW5pZmVzdD4gPSB7XG4gIFtURW50aXR5SWQgaW4gQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0Pl06IFRNYW5pZmVzdFtURW50aXR5SWRdIGV4dGVuZHMge1xuICAgIGtpbmQ6ICdsaXN0LWRldGFpbCc7XG4gIH1cbiAgICA/IFRFbnRpdHlJZFxuICAgIDogbmV2ZXI7XG59W0JhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD5dIGV4dGVuZHMgaW5mZXIgVEVudGl0eUlkXG4gID8gW1RFbnRpdHlJZF0gZXh0ZW5kcyBbbmV2ZXJdXG4gICAgPyBzdHJpbmcgZXh0ZW5kcyBCYWNrb2ZmaWNlTWFuaWZlc3RFbnRpdHlJZDxUTWFuaWZlc3Q+XG4gICAgICA/IHN0cmluZ1xuICAgICAgOiBuZXZlclxuICAgIDogRXh0cmFjdDxURW50aXR5SWQsIHN0cmluZz5cbiAgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU1hbmlmZXN0VG9vbElkPFRNYW5pZmVzdD4gPSB7XG4gIFtURW50aXR5SWQgaW4gQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0Pl06IFRNYW5pZmVzdFtURW50aXR5SWRdIGV4dGVuZHMge1xuICAgIGtpbmQ6ICd0b29sJztcbiAgfVxuICAgID8gVEVudGl0eUlkXG4gICAgOiBuZXZlcjtcbn1bQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0Pl0gZXh0ZW5kcyBpbmZlciBURW50aXR5SWRcbiAgPyBbVEVudGl0eUlkXSBleHRlbmRzIFtuZXZlcl1cbiAgICA/IHN0cmluZyBleHRlbmRzIEJhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD5cbiAgICAgID8gc3RyaW5nXG4gICAgICA6IG5ldmVyXG4gICAgOiBFeHRyYWN0PFRFbnRpdHlJZCwgc3RyaW5nPlxuICA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTWFuaWZlc3REZXRhaWxQYWdlSWQ8XG4gIFRNYW5pZmVzdCxcbiAgVEVudGl0eUlkIGV4dGVuZHMgQmFja29mZmljZU1hbmlmZXN0RGV0YWlsRW50aXR5SWQ8VE1hbmlmZXN0Pixcbj4gPSBUTWFuaWZlc3RbVEVudGl0eUlkXSBleHRlbmRzIHtcbiAgZGV0YWlsUGFnZXM6IHJlYWRvbmx5IChpbmZlciBUUGFnZSlbXTtcbn1cbiAgPyBUUGFnZSBleHRlbmRzIHsgaWQ6IGluZmVyIFRQYWdlSWQgfVxuICAgID8gRXh0cmFjdDxUUGFnZUlkLCBzdHJpbmc+XG4gICAgOiBzdHJpbmdcbiAgOiBzdHJpbmc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZExpc3RGYWNldENvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgTGlzdEZyYWdtZW50RGF0YSxcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4gIFRTb3J0IGV4dGVuZHMgc3RyaW5nID0gQmFja29mZmljZU9wZXJhdGlvblNvcnQ8VE9wZXJhdGlvbj4sXG4+ID0gQmFja29mZmljZUxpc3RGYWNldENvbmZpZzxcbiAgVE9wZXJhdGlvbixcbiAgUm93UmVmLFxuICBSb3dWaWV3LFxuICBMaXN0RnJhZ21lbnREYXRhLFxuICBUV2hlcmUsXG4gIFRTb3J0XG4+ICYge1xuICByb3V0ZXM6IEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXM7XG4gIGxpc3RVcmxDb2RlYz86IEJhY2tvZmZpY2VMaXN0VXJsQ29kZWM8VFdoZXJlLCBUU29ydD47XG4gIGxpc3REZWZhdWx0cz86IEJhY2tvZmZpY2VMaXN0U3RhdGU8VFdoZXJlLCBUU29ydD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWRQaWNrZXJGYWNldENvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgUGlja2VyRnJhZ21lbnREYXRhLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbj4gPSBCYWNrb2ZmaWNlUGlja2VyRmFjZXRDb25maWc8XG4gIFRPcGVyYXRpb24sXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgUGlja2VyRnJhZ21lbnREYXRhLFxuICBUV2hlcmVcbj4gJiB7XG4gIHJvdXRlczogQmFja29mZmljZUVudGl0eVJvdXRlcztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0Q29uZmlnPFxuICBMYXlvdXRSZWYgPSBhbnksXG4gIExheW91dFZpZXcgPSBhbnksXG4gIExheW91dFF1ZXJ5RGF0YSA9IHVua25vd24sXG4gIExheW91dEZyYWdtZW50UmVmID0gdW5rbm93bixcbiAgTGF5b3V0UXVlcnlWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbj4gPSBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0RmFjZXRDb25maWc8XG4gIExheW91dFJlZixcbiAgTGF5b3V0VmlldyxcbiAgTGF5b3V0UXVlcnlEYXRhLFxuICBMYXlvdXRGcmFnbWVudFJlZixcbiAgTGF5b3V0UXVlcnlWYXJpYWJsZXNcbj4gJiB7XG4gIHJvdXRlczogQmFja29mZmljZUVudGl0eVJvdXRlcztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbFBhZ2VGYWNldENvbmZpZzxcbiAgTGF5b3V0VmlldyA9IHVua25vd24sXG4gIERldGFpbFJlZiA9IGFueSxcbiAgRGV0YWlsVmlldyA9IGFueSxcbiAgRGV0YWlsUXVlcnlEYXRhID0gdW5rbm93bixcbiAgRGV0YWlsRnJhZ21lbnRSZWYgPSB1bmtub3duLFxuICBEZXRhaWxRdWVyeVZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPiA9IEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRDb25maWc8XG4gIExheW91dFZpZXcsXG4gIERldGFpbFJlZixcbiAgRGV0YWlsVmlldyxcbiAgRGV0YWlsUXVlcnlEYXRhLFxuICBEZXRhaWxGcmFnbWVudFJlZixcbiAgRGV0YWlsUXVlcnlWYXJpYWJsZXNcbj4gJiB7XG4gIHJvdXRlczogQmFja29mZmljZUVudGl0eVJvdXRlcztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZFRvb2xGYWNldENvbmZpZyA9IEJhY2tvZmZpY2VUb29sRmFjZXRDb25maWcgJiB7XG4gIHJvdXRlOiBzdHJpbmc7XG4gIHJvdXRlczogQmFja29mZmljZUVudGl0eVJvdXRlcztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZEVudGl0eUZhY2V0Q29uZmlnQmFzZSA9XG4gIHwgQmFja29mZmljZVJlc29sdmVkTGlzdEZhY2V0Q29uZmlnQmFzZVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZFBpY2tlckZhY2V0Q29uZmlnQmFzZVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbFBhZ2VGYWNldENvbmZpZ0Jhc2VcbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWRUb29sRmFjZXRDb25maWc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZExpc3RGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ2xpc3QnO1xuICBpZDogc3RyaW5nO1xuICBtYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgY29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWRMaXN0RmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICdwaWNrZXInO1xuICBpZDogc3RyaW5nO1xuICBtYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgY29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWRQaWNrZXJGYWNldENvbmZpZ0Jhc2U7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxMYXlvdXRGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ2RldGFpbC1sYXlvdXQnO1xuICBpZDogc3RyaW5nO1xuICBtYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgY29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxMYXlvdXRGYWNldENvbmZpZ0Jhc2U7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxQYWdlRmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICdkZXRhaWwtcGFnZSc7XG4gIGlkOiBzdHJpbmc7XG4gIHBhZ2VJZDogc3RyaW5nO1xuICBtYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgY29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkVG9vbEZhY2V0TW9kdWxlID0ge1xuICBraW5kOiAndG9vbCc7XG4gIGlkOiBzdHJpbmc7XG4gIG1hbmlmZXN0OiBCYWNrb2ZmaWNlRW50aXR5TWFuaWZlc3RJdGVtO1xuICBjb25maWc6IEJhY2tvZmZpY2VSZXNvbHZlZFRvb2xGYWNldENvbmZpZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZEVudGl0eUZhY2V0TW9kdWxlID1cbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWRMaXN0RmFjZXRNb2R1bGVcbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWRQaWNrZXJGYWNldE1vZHVsZVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0TW9kdWxlXG4gIHwgQmFja29mZmljZVJlc29sdmVkRGV0YWlsUGFnZUZhY2V0TW9kdWxlXG4gIHwgQmFja29mZmljZVJlc29sdmVkVG9vbEZhY2V0TW9kdWxlO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdEZhY2V0Q29uZmlnQmFzZSA9IEJhY2tvZmZpY2VSdW50aW1lTGlzdEZhY2V0Q29uZmlnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUGlja2VyRmFjZXRDb25maWdCYXNlID1cbiAgQmFja29mZmljZVJ1bnRpbWVQaWNrZXJGYWNldENvbmZpZztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRGYWNldENvbmZpZzxhbnksIGFueSwgYW55LCBhbnksIGFueT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlID1cbiAgQmFja29mZmljZURldGFpbFBhZ2VGYWNldENvbmZpZzxhbnksIGFueSwgYW55LCBhbnksIGFueSwgYW55PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkTGlzdEZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VSZXNvbHZlZExpc3RGYWNldENvbmZpZzxcbiAgICBhbnksXG4gICAgYW55LFxuICAgIGFueSxcbiAgICBhbnksXG4gICAgUmVjb3JkPHN0cmluZywgYW55PixcbiAgICBhbnlcbiAgPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRDb25maWdCYXNlID1cbiAgQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRDb25maWc8YW55LCBhbnksIGFueSwgYW55LCBSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkRGV0YWlsTGF5b3V0RmFjZXRDb25maWdCYXNlID1cbiAgQmFja29mZmljZVJlc29sdmVkRGV0YWlsTGF5b3V0RmFjZXRDb25maWc8YW55LCBhbnksIGFueSwgYW55LCBhbnk+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlID1cbiAgQmFja29mZmljZVJlc29sdmVkRGV0YWlsUGFnZUZhY2V0Q29uZmlnPGFueSwgYW55LCBhbnksIGFueSwgYW55LCBhbnk+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZVJlc29sdmVkTGlzdEZhY2V0Q29uZmlnID1cbiAgQmFja29mZmljZVJlc29sdmVkTGlzdEZhY2V0Q29uZmlnQmFzZTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVSZXNvbHZlZFBpY2tlckZhY2V0Q29uZmlnID1cbiAgQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRDb25maWdCYXNlO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZUNvbm5lY3Rpb25MaXN0Q29uZmlnID1cbiAgQmFja29mZmljZUNvbm5lY3Rpb25MaXN0Q29uZmlnPGFueSwgYW55LCBhbnksIGFueSwgUmVjb3JkPHN0cmluZywgYW55PiwgYW55PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVSZWNvcmRMaXN0Q29uZmlnID0gQmFja29mZmljZVJlY29yZExpc3RDb25maWc8XG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgUmVjb3JkPHN0cmluZywgYW55PixcbiAgYW55XG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZUVudGl0eUxpc3RDb25maWcgPSBCYWNrb2ZmaWNlRW50aXR5TGlzdENvbmZpZzxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICBhbnlcbj47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSdW50aW1lRW50aXR5UGlja2VyQ29uZmlnID0gQmFja29mZmljZUVudGl0eVBpY2tlckNvbmZpZzxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5RmFjZXRNb2R1bGVDYWNoZUVudHJ5ID0ge1xuICBzdGF0dXM6IEJhY2tvZmZpY2VFbnRpdHlNb2R1bGVTdGF0dXM7XG4gIHByb21pc2U/OiBQcm9taXNlPEJhY2tvZmZpY2VSZXNvbHZlZEVudGl0eUZhY2V0TW9kdWxlPjtcbiAgbW9kdWxlPzogQmFja29mZmljZVJlc29sdmVkRW50aXR5RmFjZXRNb2R1bGU7XG4gIGVycm9yPzogRXJyb3I7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbFZhcmlhYmxlc0NvbnRleHQgPSB7XG4gIHNjb3BlOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgcnVuOiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNsYXNzIEJhY2tvZmZpY2VUb29sVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBwdWJsaWMgbGFiZWw6IEkxOG5MYWJlbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IobGFiZWw6IEkxOG5MYWJlbCkge1xuICAgIHN1cGVyKCdCYWNrb2ZmaWNlIHRvb2wgdmFsaWRhdGlvbiBlcnJvcicpO1xuICAgIHRoaXMubGFiZWwgPSBsYWJlbDtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbE9wZXJhdGlvbiA9IHtcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgc3VidGl0bGU/OiBJMThuTGFiZWw7XG4gIGlucHV0VHlwZVNETD86IHN0cmluZztcbiAgcXVlcnk6IEdyYXBoUUxUYWdnZWROb2RlO1xuICBpbnB1dHM/OiByZWFkb25seSBCYWNrb2ZmaWNlVG9vbElucHV0U3BlY1tdO1xuICBvdXRwdXRzPzogcmVhZG9ubHkgQmFja29mZmljZVRvb2xPdXRwdXRTcGVjW107XG4gIHJlbmRlcj86IChkYXRhOiB1bmtub3duKSA9PiB1bmtub3duO1xuICBzaG93UHJvamVjdFBpY2tlcj86IGJvb2xlYW47XG4gIGJ1aWxkVmFyaWFibGVzPzogKFxuICAgIGlucHV0OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgICBjb250ZXh0OiBCYWNrb2ZmaWNlVG9vbFZhcmlhYmxlc0NvbnRleHQsXG4gICkgPT4gUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbElucHV0U3BlYyA9XG4gIHwge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGtpbmQ6ICd0ZXh0JztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBwbGFjZWhvbGRlcj86IEkxOG5MYWJlbDtcbiAgICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcbiAgICB9XG4gIHwge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGtpbmQ6ICdqc29uJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBwbGFjZWhvbGRlcj86IEkxOG5MYWJlbDtcbiAgICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcbiAgICB9XG4gIHwge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGtpbmQ6ICdlbnVtJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBvcHRpb25zOiByZWFkb25seSB7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBJMThuTGFiZWwgfVtdO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgIH1cbiAgfCB7XG4gICAgICBpZDogc3RyaW5nO1xuICAgICAga2luZDogJ2Jvb2xlYW4nO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIGRlZmF1bHRWYWx1ZT86IGJvb2xlYW47XG4gICAgfVxuICB8IHtcbiAgICAgIGlkOiBzdHJpbmc7XG4gICAgICBraW5kOiAnZW50aXR5SWQnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIGVudGl0eTogc3RyaW5nO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VUb29sT3V0cHV0U3BlYyA9XG4gIHwge1xuICAgICAga2luZDogJ3RhYmxlJztcbiAgICAgIGxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG4gICAgICBjb2x1bW5zOiByZWFkb25seSBCYWNrb2ZmaWNlQ29sdW1uU3BlY1tdO1xuICAgICAgcm93czogKGRhdGE6IHVua25vd24pID0+IHJlYWRvbmx5IHVua25vd25bXTtcbiAgICB9XG4gIHwge1xuICAgICAga2luZDogJ2NvZGUnO1xuICAgICAgbGFiZWw/OiBJMThuTGFiZWw7XG4gICAgICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgICAgIHZhbHVlOiAoZGF0YTogdW5rbm93bikgPT4gc3RyaW5nO1xuICAgIH1cbiAgfCB7XG4gICAgICBraW5kOiAnanNvbic7XG4gICAgICBsYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICAgICAgdmFsdWU6IChkYXRhOiB1bmtub3duKSA9PiB1bmtub3duO1xuICAgIH1cbiAgfCB7XG4gICAgICBraW5kOiAna2V5VmFsdWUnO1xuICAgICAgbGFiZWw/OiBJMThuTGFiZWw7XG4gICAgICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgICAgIGl0ZW1zOiByZWFkb25seSB7XG4gICAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICAgIHZhbHVlOiAoZGF0YTogdW5rbm93bikgPT4gQmFja29mZmljZVZhbHVlTGFiZWw7XG4gICAgICB9W107XG4gICAgfVxuICB8IHtcbiAgICAgIGtpbmQ6ICdwYXlsb2FkJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgICAgIHZhbHVlOiAoZGF0YTogdW5rbm93bikgPT4gdW5rbm93bjtcbiAgICAgIGZvcm1hdD86ICdtYXJrZG93bicgfCAnanNvbicgfCAndGV4dCc7XG4gICAgfVxuICB8IHtcbiAgICAgIGtpbmQ6ICdjdXN0b20nO1xuICAgICAgbGFiZWw/OiBJMThuTGFiZWw7XG4gICAgICByZW5kZXI6IChkYXRhOiB1bmtub3duKSA9PiB1bmtub3duO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VDb25uZWN0aW9uPFJvdz4gPSB7XG4gIGVkZ2VzOiByZWFkb25seSB7IG5vZGU6IFJvdyB9W107XG4gIHRvdGFsQ291bnQ/OiBudW1iZXIgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3REZWZhdWx0czxXaGVyZSwgU29ydCBleHRlbmRzIHN0cmluZz4gPSB7XG4gIHdoZXJlOiBXaGVyZSB8IG51bGw7XG4gIHNvcnQ6IFNvcnQgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVByZXBhcmVkTGlzdFJvdXRlID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBlbnRpdHlNYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgZW50aXR5Q29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWRMaXN0RmFjZXRDb25maWdCYXNlO1xuICBxdWVyeTogUHJlbG9hZGVkUXVlcnk8T3BlcmF0aW9uVHlwZT47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUHJlcGFyZWREZXRhaWxMYXlvdXRSb3V0ZSA9IHtcbiAgZW50aXR5SWQ6IHN0cmluZztcbiAgZW50aXR5TWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGVudGl0eUNvbmZpZzogQmFja29mZmljZVJlc29sdmVkRGV0YWlsTGF5b3V0RmFjZXRDb25maWdCYXNlO1xuICBsYXlvdXRRdWVyeTogUHJlbG9hZGVkUXVlcnk8T3BlcmF0aW9uVHlwZT47XG4gIGlkOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUHJlcGFyZWREZXRhaWxQYWdlUm91dGUgPSB7XG4gIGVudGl0eUlkOiBzdHJpbmc7XG4gIGVudGl0eU1hbmlmZXN0OiBCYWNrb2ZmaWNlRW50aXR5TWFuaWZlc3RJdGVtO1xuICBlbnRpdHlDb25maWc6IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZTtcbiAgaWQ6IHN0cmluZztcbiAgcGFnZUlkOiBzdHJpbmc7XG4gIHBhZ2VQYXRoOiBzdHJpbmc7XG4gIHBhZ2VDb25maWc6IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbFBhZ2VGYWNldENvbmZpZ0Jhc2U7XG4gIHBhZ2VRdWVyeTogUHJlbG9hZGVkUXVlcnk8T3BlcmF0aW9uVHlwZT47XG4gIGRldGFpbElkPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVByZXBhcmVkVG9vbFJvdXRlID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBlbnRpdHlNYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgZW50aXR5Q29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWRUb29sRmFjZXRDb25maWc7XG59O1xuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBbStEQSxNQUFNLE9BQU8sNkJBQThCLFNBQVEsS0FBSztJQUMvQyxLQUFLLENBQVk7SUFFeEIsWUFBbUIsS0FBZ0I7UUFDakMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgdHlwZSB7IFRGdW5jdGlvbiB9IGZyb20gJ2kxOG5leHQnO1xuaW1wb3J0IHR5cGUgeyBQcmVsb2FkZWRRdWVyeSB9IGZyb20gJ3JlYWN0LXJlbGF5JztcbmltcG9ydCB0eXBlIHtcbiAgR3JhcGhRTFRhZ2dlZE5vZGUsXG4gIE9wZXJhdGlvblR5cGUsXG4gIFJlY29yZFNvdXJjZVNlbGVjdG9yUHJveHksXG59IGZyb20gJ3JlbGF5LXJ1bnRpbWUnO1xuaW1wb3J0IHR5cGUgeyBCQUNLT0ZGSUNFX0VOVElUWV9GQUNFVF9LSU5EUyB9IGZyb20gJy4vY29uc3RhbnRzLmpzJztcblxuZXhwb3J0IHR5cGUgSTE4bkxhYmVsID0gKHQ6IFRGdW5jdGlvbikgPT4gc3RyaW5nO1xuXG50eXBlIEJpdmFyaWFudENhbGxiYWNrPEZuPiA9IEZuIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIEEpID0+IGluZmVyIFJcbiAgPyB7IGJpdmFyaWFuY2VIYWNrOiAoLi4uYXJnczogQSkgPT4gUiB9WydiaXZhcmlhbmNlSGFjayddXG4gIDogbmV2ZXI7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25SZW5kZXJOb2RlID0gRXhjbHVkZTxSZWFjdE5vZGUsIFByb21pc2U8dW5rbm93bj4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVmFsdWVMYWJlbCA9IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCBJMThuTGFiZWw7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VCYWRnZVRvbmUgPVxuICB8ICduZXV0cmFsJ1xuICB8ICdpbmZvJ1xuICB8ICdzdWNjZXNzJ1xuICB8ICd3YXJuaW5nJ1xuICB8ICdkYW5nZXInO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTnVtYmVyRm9ybWF0ID0gJ251bWJlcicgfCAnY3VycmVuY3knIHwgJ3BlcmNlbnQnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRmllbGRTaXplID1cbiAgfCAneHMnXG4gIHwgJ3MnXG4gIHwgJ3N0YXR1c0FjdGlvbidcbiAgfCAnbSdcbiAgfCAnbCdcbiAgfCAneGwnXG4gIHwgJ2ZsdWlkJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFjdGlvblZhcmlhbnQgPVxuICB8ICdwcmltYXJ5J1xuICB8ICdzZWNvbmRhcnknXG4gIHwgJ3RleHQnXG4gIHwgJ3N1Y2Nlc3MnXG4gIHwgJ2RhbmdlcidcbiAgfCAnYnJhbmQnXG4gIHwgJ2JyYW5kR2hvc3QnXG4gIHwgJ3RhYidcbiAgfCAnaWNvbic7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25TaXplID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFjdGlvblRvYXN0Vmlld1NwZWM8XG4gIE5vZGUgPSB1bmtub3duLFxuICBSZXNwb25zZSA9IHVua25vd24sXG4+ID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBnZXRUYXJnZXRJZDogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKHJlc3BvbnNlOiBSZXNwb25zZSwgbm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbFxuICA+O1xuICBsYWJlbD86IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25Ub2FzdFNwZWM8Tm9kZSA9IHVua25vd24sIFJlc3BvbnNlID0gdW5rbm93bj4gPSB7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIG1lc3NhZ2U/OiBJMThuTGFiZWw7XG4gIHZpZXc/OiBCYWNrb2ZmaWNlQWN0aW9uVG9hc3RWaWV3U3BlYzxOb2RlLCBSZXNwb25zZT47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uQmFzZTxOb2RlPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgYXJpYUxhYmVsPzogSTE4bkxhYmVsO1xuICB2YXJpYW50PzogQmFja29mZmljZUFjdGlvblZhcmlhbnQ7XG4gIHNpemU/OiBCYWNrb2ZmaWNlQWN0aW9uU2l6ZTtcbiAgaXNWaXNpYmxlPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IGJvb2xlYW4+O1xuICBpc0Rpc2FibGVkPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IGJvb2xlYW4+O1xufTtcblxudHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkQmFzZSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkU3BlYyA9XG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGtpbmQ6ICd0ZXh0JztcbiAgICAgIHBsYWNlaG9sZGVyPzogSTE4bkxhYmVsO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAga2luZDogJ251bWJlcic7XG4gICAgICBwbGFjZWhvbGRlcj86IEkxOG5MYWJlbDtcbiAgICAgIGRlZmF1bHRWYWx1ZT86IG51bWJlcjtcbiAgICAgIHJlcXVpcmVkPzogYm9vbGVhbjtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkQmFzZSAmIHtcbiAgICAgIGtpbmQ6ICdqc29uJztcbiAgICAgIHBsYWNlaG9sZGVyPzogSTE4bkxhYmVsO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAgICAganNvblR5cGU/OiAnb2JqZWN0JyB8ICdhcnJheScgfCAnYW55JztcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRW50aXR5QWN0aW9uRm9ybUZpZWxkQmFzZSAmIHtcbiAgICAgIGtpbmQ6ICdlbnVtJztcbiAgICAgIG9wdGlvbnM6IHJlYWRvbmx5IHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IEkxOG5MYWJlbCB9W107XG4gICAgICBkZWZhdWx0VmFsdWU/OiBzdHJpbmc7XG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XG4gICAgfSlcbiAgfCAoQmFja29mZmljZUVudGl0eUFjdGlvbkZvcm1GaWVsZEJhc2UgJiB7XG4gICAgICBraW5kOiAnYm9vbGVhbic7XG4gICAgICBkZWZhdWx0VmFsdWU/OiBib29sZWFuO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAga2luZDogJ2VudGl0eUlkJztcbiAgICAgIGVudGl0eTogc3RyaW5nO1xuICAgICAgZGVmYXVsdFZhbHVlPzogc3RyaW5nO1xuICAgICAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25Gb3JtRmllbGRCYXNlICYge1xuICAgICAga2luZDogJ211bHRpRW51bSc7XG4gICAgICBvcHRpb25zOiByZWFkb25seSB7IHZhbHVlOiBzdHJpbmc7IGxhYmVsOiBJMThuTGFiZWwgfVtdO1xuICAgICAgZGVmYXVsdFZhbHVlPzogcmVhZG9ubHkgc3RyaW5nW107XG4gICAgICByZXF1aXJlZD86IGJvb2xlYW47XG4gICAgfSk7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25SZXN1bHRTcGVjPE5vZGUsIFJlc3BvbnNlID0gdW5rbm93bj4gPSB7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIGdldFZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocmVzcG9uc2U6IFJlc3BvbnNlLCBub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsXG4gID47XG4gIHJlbmRlcj86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChyZXNwb25zZTogUmVzcG9uc2UsIG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VBY3Rpb25SZW5kZXJOb2RlIHwgbnVsbFxuICA+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUFjdGlvblVwZGF0ZXI8Tm9kZT4gPSBCaXZhcmlhbnRDYWxsYmFjazxcbiAgKHN0b3JlOiBSZWNvcmRTb3VyY2VTZWxlY3RvclByb3h5LCBub2RlOiBOb2RlKSA9PiB2b2lkXG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5TXV0YXRpb25BY3Rpb25TcGVjPFxuICBOb2RlLFxuICBWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgUmVzcG9uc2UgPSB1bmtub3duLFxuPiA9IEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25CYXNlPE5vZGU+ICYge1xuICBraW5kOiAnbXV0YXRpb24nO1xuICBtdXRhdGlvbjogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGdldFZhcmlhYmxlczogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IFZhcmlhYmxlcz47XG4gIHVwZGF0ZXI/OiBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uVXBkYXRlcjxOb2RlPjtcbiAgbWFwRXJyb3JSZWFzb24/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocmVhc29uOiBzdHJpbmcsIG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsXG4gID47XG4gIG9uQ29tcGxldGVkPzogQml2YXJpYW50Q2FsbGJhY2s8KHJlc3BvbnNlOiBSZXNwb25zZSwgbm9kZTogTm9kZSkgPT4gdm9pZD47XG4gIG9uRXJyb3I/OiBCaXZhcmlhbnRDYWxsYmFjazwoZXJyb3I6IEVycm9yLCBub2RlOiBOb2RlKSA9PiB2b2lkPjtcbiAgdG9hc3RzPzoge1xuICAgIHN1Y2Nlc3M/OiBCYWNrb2ZmaWNlQWN0aW9uVG9hc3RTcGVjPE5vZGUsIFJlc3BvbnNlPjtcbiAgICBlcnJvcj86IEJhY2tvZmZpY2VBY3Rpb25Ub2FzdFNwZWM8Tm9kZSwgUmVzcG9uc2U+O1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUZvcm1NdXRhdGlvbkFjdGlvblNwZWM8XG4gIE5vZGUsXG4gIFZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBSZXNwb25zZSA9IHVua25vd24sXG4+ID0gQmFja29mZmljZUVudGl0eUFjdGlvbkJhc2U8Tm9kZT4gJiB7XG4gIGtpbmQ6ICdmb3JtTXV0YXRpb24nO1xuICBtdXRhdGlvbjogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGZpZWxkczogcmVhZG9ubHkgQmFja29mZmljZUVudGl0eUFjdGlvbkZvcm1GaWVsZFNwZWNbXTtcbiAgZ2V0VmFyaWFibGVzOiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSwgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPikgPT4gVmFyaWFibGVzXG4gID47XG4gIHVwZGF0ZXI/OiBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uVXBkYXRlcjxOb2RlPjtcbiAgZ2V0SW5pdGlhbFZhbHVlcz86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gIG1hcEVycm9yUmVhc29uPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKHJlYXNvbjogc3RyaW5nLCBub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbFxuICA+O1xuICBvbkNvbXBsZXRlZD86IEJpdmFyaWFudENhbGxiYWNrPChyZXNwb25zZTogUmVzcG9uc2UsIG5vZGU6IE5vZGUpID0+IHZvaWQ+O1xuICBvbkVycm9yPzogQml2YXJpYW50Q2FsbGJhY2s8KGVycm9yOiBFcnJvciwgbm9kZTogTm9kZSkgPT4gdm9pZD47XG4gIHRvYXN0cz86IHtcbiAgICBzdWNjZXNzPzogQmFja29mZmljZUFjdGlvblRvYXN0U3BlYzxOb2RlLCBSZXNwb25zZT47XG4gICAgZXJyb3I/OiBCYWNrb2ZmaWNlQWN0aW9uVG9hc3RTcGVjPE5vZGUsIFJlc3BvbnNlPjtcbiAgfTtcbiAgcmVzdWx0PzogQmFja29mZmljZUVudGl0eUFjdGlvblJlc3VsdFNwZWM8Tm9kZSwgUmVzcG9uc2U+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eVJvdXRlQWN0aW9uU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VFbnRpdHlBY3Rpb25CYXNlPE5vZGU+ICYge1xuICAgIGtpbmQ6ICdyb3V0ZSc7XG4gICAgdG86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmc+O1xuICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uU3BlYzxOb2RlPiA9XG4gIHwgQmFja29mZmljZUVudGl0eU11dGF0aW9uQWN0aW9uU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VFbnRpdHlGb3JtTXV0YXRpb25BY3Rpb25TcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZUVudGl0eVJvdXRlQWN0aW9uU3BlYzxOb2RlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RBY3Rpb25TcGVjID0gQmFja29mZmljZUVudGl0eUFjdGlvblNwZWM8bnVsbD47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlLaW5kID0gJ2xpc3QtZGV0YWlsJyB8ICd0b29sJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eU1hbmlmZXN0S2luZCA9ICdsaXN0LWRldGFpbCcgfCAndG9vbCc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlGYWNldEtpbmQgPVxuICAodHlwZW9mIEJBQ0tPRkZJQ0VfRU5USVRZX0ZBQ0VUX0tJTkRTKVtudW1iZXJdO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5TW9kdWxlU3RhdHVzID1cbiAgfCAnaWRsZSdcbiAgfCAnbG9hZGluZydcbiAgfCAnbG9hZGVkJ1xuICB8ICdlcnJvcic7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlMb2FkTW9kZSA9ICdjYWNoZS1maXJzdCcgfCAncmVsb2FkJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUNvbmZpZ0FjY2Vzc0tpbmQgPVxuICB8ICdtYW5pZmVzdC1vbmx5J1xuICB8ICdsb2FkZWQtY29uZmlnLXJlcXVpcmVkJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RTdGF0ZTxXaGVyZSwgU29ydCBleHRlbmRzIHN0cmluZz4gPSB7XG4gIHdoZXJlOiBXaGVyZSB8IG51bGw7XG4gIHNvcnQ6IFNvcnQgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RWYXJpYWJsZXM8V2hlcmUsIFNvcnQgZXh0ZW5kcyBzdHJpbmc+ID0ge1xuICB3aGVyZTogV2hlcmUgfCBudWxsO1xuICBzb3J0OiBTb3J0IHwgbnVsbDtcbiAgY291bnQ6IG51bWJlcjtcbiAgY3Vyc29yOiBzdHJpbmcgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU9wZXJhdGlvblZhcmlhYmxlczxUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZT4gPVxuICBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU9wZXJhdGlvblJlc3BvbnNlPFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlPiA9XG4gIFRPcGVyYXRpb25bJ3Jlc3BvbnNlJ107XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gVE9wZXJhdGlvblsndmFyaWFibGVzJ10gZXh0ZW5kcyB7XG4gICAgd2hlcmU/OiBpbmZlciBXaGVyZSB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIH1cbiAgICA/IEV4dHJhY3Q8Tm9uTnVsbGFibGU8V2hlcmU+LCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj5cbiAgICA6IG5ldmVyLFxuPiA9IFRXaGVyZTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU9wZXJhdGlvblNvcnQ8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBUU29ydCA9IFRPcGVyYXRpb25bJ3ZhcmlhYmxlcyddIGV4dGVuZHMge1xuICAgIHNvcnQ/OiBpbmZlciBTb3J0IHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgfVxuICAgID8gRXh0cmFjdDxOb25OdWxsYWJsZTxTb3J0Piwgc3RyaW5nPlxuICAgIDogbmV2ZXIsXG4+ID0gRXh0cmFjdDxUU29ydCwgc3RyaW5nPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURlcml2ZWRPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZT4gPVxuICBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXSBleHRlbmRzIHtcbiAgICB3aGVyZT86IGluZmVyIFdoZXJlIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgfVxuICAgID8gRXh0cmFjdDxOb25OdWxsYWJsZTxXaGVyZT4sIFJlY29yZDxzdHJpbmcsIHVua25vd24+PlxuICAgIDogbmV2ZXI7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXJpdmVkT3BlcmF0aW9uU29ydDxUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZT4gPVxuICBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXSBleHRlbmRzIHtcbiAgICBzb3J0PzogaW5mZXIgU29ydCB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIH1cbiAgICA/IEV4dHJhY3Q8Tm9uTnVsbGFibGU8U29ydD4sIHN0cmluZz5cbiAgICA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFF1ZXJ5SW5wdXQ8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbiAgVFNvcnQgZXh0ZW5kcyBzdHJpbmcgPSBCYWNrb2ZmaWNlT3BlcmF0aW9uU29ydDxUT3BlcmF0aW9uPixcbj4gPSB7XG4gIHdoZXJlOiBUV2hlcmUgfCBudWxsO1xuICBzb3J0OiBUU29ydCB8IG51bGw7XG4gIGNvdW50OiBudW1iZXI7XG4gIGN1cnNvcjogc3RyaW5nIHwgbnVsbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQaWNrZXJTY29wZTxXaGVyZT4gPSBQYXJ0aWFsPHtcbiAgW0tleSBpbiBrZXlvZiBXaGVyZV06IEV4dHJhY3Q8Tm9uTnVsbGFibGU8V2hlcmVbS2V5XT4sIHN0cmluZz47XG59PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVBpY2tlclF1ZXJ5SW5wdXQ8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbj4gPSB7XG4gIHNlYXJjaDogc3RyaW5nO1xuICBzY29wZT86IEJhY2tvZmZpY2VQaWNrZXJTY29wZTxUV2hlcmU+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlbGF0aW9uRmlsdGVyU3BlYzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gQmFja29mZmljZU9wZXJhdGlvbldoZXJlPFRPcGVyYXRpb24+LFxuPiA9IHtcbiAgdGFyZ2V0OiBzdHJpbmc7XG4gIGZpbHRlcklkPzogc3RyaW5nO1xuICB3aGVyZUtleTogRXh0cmFjdDxrZXlvZiBUV2hlcmUsIHN0cmluZz47XG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSdW50aW1lUmVsYXRpb25GaWx0ZXJTcGVjID0ge1xuICB0YXJnZXQ6IHN0cmluZztcbiAgZmlsdGVySWQ/OiBzdHJpbmc7XG4gIHdoZXJlS2V5OiBzdHJpbmc7XG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXMgPSB7XG4gIGxpc3Q6IHN0cmluZztcbiAgZGV0YWlsOiAoaWQ6IHN0cmluZykgPT4gc3RyaW5nO1xuICBkZXRhaWxQYWdlOiAoaWQ6IHN0cmluZywgcGFnZUlkOiBzdHJpbmcpID0+IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlSb3V0ZU1hbmlmZXN0ID0ge1xuICBsaXN0OiBzdHJpbmc7XG4gIGRldGFpbDogKGlkOiBzdHJpbmcpID0+IHN0cmluZztcbiAgZGV0YWlsUGFnZTogKGlkOiBzdHJpbmcsIHBhZ2VJZDogc3RyaW5nKSA9PiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZU1hbmlmZXN0SXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgcGF0aFNlZ21lbnQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgaXNEZWZhdWx0PzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlUm91dGVTcGVjPExheW91dFZpZXcgPSB1bmtub3duPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgcGF0aDogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICBpc1Zpc2libGU/OiBCaXZhcmlhbnRDYWxsYmFjazwobGF5b3V0UGFnZTogTGF5b3V0VmlldykgPT4gYm9vbGVhbj47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkQ29uZmlnID0ge1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBzdWJ0aXRsZT86IEkxOG5MYWJlbDtcbiAgcXVlcnk/OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgd2lkZ2V0czogcmVhZG9ubHkgQmFja29mZmljZURhc2hib2FyZFdpZGdldFtdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldFNpemUgPSAncycgfCAnbScgfCAnbCcgfCAneGwnIHwgJ2Z1bGwnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0U3BhbiA9IDMgfCA0IHwgNiB8IDggfCAxMjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldFRhYmxldFNwYW4gPSAzIHwgNjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldFpvbmUgPVxuICB8ICdzdW1tYXJ5J1xuICB8ICdtYWluJ1xuICB8ICdhc2lkZSdcbiAgfCAnc2Vjb25kYXJ5J1xuICB8ICdmdWxsJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURhc2hib2FyZFdpZGdldExheW91dCA9IHtcbiAgem9uZT86IEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRab25lO1xuICBzcGFuPzogQmFja29mZmljZURhc2hib2FyZFdpZGdldFNwYW47XG4gIHRhYmxldFNwYW4/OiBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0VGFibGV0U3BhbjtcbiAgb3JkZXI/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0UHJpb3JpdHkgPVxuICB8ICdjcml0aWNhbCdcbiAgfCAnaGlnaCdcbiAgfCAnbm9ybWFsJ1xuICB8ICdsb3cnXG4gIHwgJ3ByaW1hcnknXG4gIHwgJ3NlY29uZGFyeSdcbiAgfCAnZGVidWcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0QmFzZSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgdGl0bGU/OiBJMThuTGFiZWw7XG4gIGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICBzaXplPzogQmFja29mZmljZURhc2hib2FyZFdpZGdldFNpemU7XG4gIGxheW91dD86IEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRMYXlvdXQ7XG4gIHByaW9yaXR5PzogQmFja29mZmljZURhc2hib2FyZFdpZGdldFByaW9yaXR5O1xuICBtaW5IZWlnaHQ/OiAnc20nIHwgJ21kJyB8ICdsZyc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0ID1cbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAnZW50aXR5Q291bnQnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIGVudGl0eUlkOiBzdHJpbmc7XG4gICAgICBxdWVyeT86IEdyYXBoUUxUYWdnZWROb2RlO1xuICAgICAgcmVzb2x2ZT86IChkYXRhOiB1bmtub3duKSA9PiB7IGNvdW50OiBudW1iZXIgfCBudWxsIH07XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAnc2hvcnRjdXQnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIGVudGl0eUlkOiBzdHJpbmc7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAndGFibGVQcmV2aWV3JztcbiAgICAgIHRpdGxlOiBJMThuTGFiZWw7XG4gICAgICBxdWVyeT86IEdyYXBoUUxUYWdnZWROb2RlO1xuICAgICAgcmVzb2x2ZTogKGRhdGE6IHVua25vd24pID0+IHtcbiAgICAgICAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWNbXTtcbiAgICAgICAgcm93czogcmVhZG9ubHkgdW5rbm93bltdO1xuICAgICAgfTtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRGFzaGJvYXJkV2lkZ2V0QmFzZSAmIHtcbiAgICAgIGtpbmQ6ICdzdGF0dXNTdW1tYXJ5JztcbiAgICAgIHF1ZXJ5PzogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gICAgICByZXNvbHZlOiAoZGF0YTogdW5rbm93bikgPT4gcmVhZG9ubHkge1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbDtcbiAgICAgICAgdG9uZT86IEJhY2tvZmZpY2VCYWRnZVRvbmU7XG4gICAgICAgIGhyZWY/OiBzdHJpbmc7XG4gICAgICB9W107XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAncmVjZW50SXRlbXMnO1xuICAgICAgbWF4SXRlbXM/OiBudW1iZXI7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZURhc2hib2FyZFdpZGdldEJhc2UgJiB7XG4gICAgICBraW5kOiAncXVpY2tBY3Rpb25zJztcbiAgICAgIGFjdGlvbnM6IHJlYWRvbmx5IHtcbiAgICAgICAgaWQ6IHN0cmluZztcbiAgICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgICAgaHJlZjogc3RyaW5nO1xuICAgICAgICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgICAgICAgdG9uZT86ICdkZWZhdWx0JyB8ICdwcmltYXJ5JyB8ICdkYW5nZXInO1xuICAgICAgfVtdO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRCYXNlICYge1xuICAgICAga2luZDogJ21ldHJpY0dyb3VwJztcbiAgICAgIHF1ZXJ5PzogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gICAgICByZXNvbHZlOiAoZGF0YTogdW5rbm93bikgPT4gcmVhZG9ubHkge1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbDtcbiAgICAgICAgbWV0YT86IEkxOG5MYWJlbDtcbiAgICAgICAgdG9uZT86ICduZXV0cmFsJyB8ICdpbmZvJyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdkYW5nZXInO1xuICAgICAgICBocmVmPzogc3RyaW5nO1xuICAgICAgfVtdO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRCYXNlICYge1xuICAgICAga2luZDogJ2JpbGxpbmdVc2FnZUNoYXJ0JztcbiAgICAgIHRpdGxlOiBJMThuTGFiZWw7XG4gICAgICBxdWVyeT86IEdyYXBoUUxUYWdnZWROb2RlO1xuICAgICAgY2F0ZWdvcmllczogcmVhZG9ubHkge1xuICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICBjb2xvcjogc3RyaW5nO1xuICAgICAgfVtdO1xuICAgICAgZW1wdHlMYWJlbDogSTE4bkxhYmVsO1xuICAgICAgcmFuZ2VQcmVmaXg6IEkxOG5MYWJlbDtcbiAgICAgIGFyaWFMYWJlbDogSTE4bkxhYmVsO1xuICAgICAgcmVzb2x2ZTogKGRhdGE6IHVua25vd24pID0+IHtcbiAgICAgICAgY3VycmVuY3k6IHN0cmluZztcbiAgICAgICAgdG90YWxBbW91bnQ6IG51bWJlcjtcbiAgICAgICAgZnJvbTogc3RyaW5nIHwgbnVsbDtcbiAgICAgICAgdG86IHN0cmluZyB8IG51bGw7XG4gICAgICAgIGJ1Y2tldHM6IHJlYWRvbmx5IHtcbiAgICAgICAgICBkYXk6IHN0cmluZztcbiAgICAgICAgICBjYXRlZ29yeTogc3RyaW5nO1xuICAgICAgICAgIHZhbHVlOiBudW1iZXI7XG4gICAgICAgIH1bXTtcbiAgICAgIH0gfCBudWxsO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VEYXNoYm9hcmRXaWRnZXRCYXNlICYge1xuICAgICAga2luZDogJ3RleHRCbG9jayc7XG4gICAgICB0aXRsZTogSTE4bkxhYmVsO1xuICAgICAgYm9keTogSTE4bkxhYmVsO1xuICAgIH0pO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFVybENvZGVjPFdoZXJlLCBTb3J0IGV4dGVuZHMgc3RyaW5nPiA9IHtcbiAgcGFyc2U6IChzZWFyY2g6IFVSTFNlYXJjaFBhcmFtcykgPT4gQmFja29mZmljZUxpc3RTdGF0ZTxXaGVyZSwgU29ydD47XG4gIHNlcmlhbGl6ZTogKHN0YXRlOiBCYWNrb2ZmaWNlTGlzdFN0YXRlPFdoZXJlLCBTb3J0PikgPT4gVVJMU2VhcmNoUGFyYW1zO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVNvcnRTcGVjPFNvcnQgZXh0ZW5kcyBzdHJpbmcgPSBzdHJpbmc+ID0ge1xuICBpZDogU29ydDtcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSb3dGbGFnU3BlYzxSb3cgPSB1bmtub3duPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gSTE4bkxhYmVsPjtcbiAgcmVuZGVyOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHVua25vd24+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RDb2x1bW5Qcmlvcml0eSA9XG4gIHwgJ3ByaW1hcnknXG4gIHwgJ2ltcG9ydGFudCdcbiAgfCAnc2Vjb25kYXJ5J1xuICB8ICdkZWJ1Zyc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0TW9iaWxlUm9sZSA9XG4gIHwgJ3RpdGxlJ1xuICB8ICdzdWJ0aXRsZSdcbiAgfCAnbWV0YSdcbiAgfCAnYmFkZ2UnXG4gIHwgJ3N0YXR1cydcbiAgfCAnYWN0aW9uJ1xuICB8ICdoaWRkZW4nO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdENvbHVtblZpc2liaWxpdHkgPSB7XG4gIHByaW9yaXR5PzogQmFja29mZmljZUxpc3RDb2x1bW5Qcmlvcml0eTtcbiAgYWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4gIG1vYmlsZT86IEJhY2tvZmZpY2VMaXN0TW9iaWxlUm9sZTtcbiAgdGFibGV0PzogJ3Zpc2libGUnIHwgJ2hpZGRlbic7XG4gIGRlc2t0b3A/OiAndmlzaWJsZScgfCAnaGlkZGVuJztcbiAgbWluVmlzaWJsZUF0PzogJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ3hsJztcbiAgZGVidWdPbmx5PzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0Q29sdW1uQ29weSA9IHtcbiAgc2hvcnRMYWJlbD86IEkxOG5MYWJlbDtcbiAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG4gIGVtcHR5TGFiZWw/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29sdW1uU3BlYzxSb3cgPSB1bmtub3duPiA9IHtcbiAga2V5OiBzdHJpbmc7XG4gIGhlYWRlcjogSTE4bkxhYmVsO1xuICBzaXplOiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICB2aXNpYmlsaXR5PzogQmFja29mZmljZUxpc3RDb2x1bW5WaXNpYmlsaXR5O1xuICBjb3B5PzogQmFja29mZmljZUxpc3RDb2x1bW5Db3B5O1xuICBjZWxsOlxuICAgIHwge1xuICAgICAgICBzaXplPzogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgICAgdHlwZTogJ3RleHQnO1xuICAgICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudW1iZXIgfCBudWxsPjtcbiAgICAgICAgY29weVZhbHVlPzogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgIH1cbiAgICB8IHtcbiAgICAgICAgc2l6ZT86IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICAgIHR5cGU6ICdsaW5rJztcbiAgICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVtYmVyIHwgbnVsbD47XG4gICAgICAgIHRvOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHN0cmluZz47XG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIHNpemU/OiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICAgICAgICB0eXBlOiAnYmFkZ2UnO1xuICAgICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgICAgdG9uZT86XG4gICAgICAgICAgfCBCYWNrb2ZmaWNlQmFkZ2VUb25lXG4gICAgICAgICAgfCBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IEJhY2tvZmZpY2VCYWRnZVRvbmU+O1xuICAgICAgfVxuICAgIHwge1xuICAgICAgICBzaXplPzogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgICAgdHlwZTogJ2RhdGVUaW1lJztcbiAgICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVtYmVyIHwgbnVsbD47XG4gICAgICB9XG4gICAgfCB7XG4gICAgICAgIHNpemU/OiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICAgICAgICB0eXBlOiAnZW50aXR5UmVmJztcbiAgICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHN0cmluZz47XG4gICAgICAgIGxhYmVsPzogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93KSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgIH1cbiAgICB8IHtcbiAgICAgICAgc2l6ZT86IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICAgIHR5cGU6ICdjdXN0b20nO1xuICAgICAgICByZW5kZXI6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gdW5rbm93bj47XG4gICAgICAgIHRleHRWYWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3REZW5zaXR5ID0gJ2NvbXBhY3QnIHwgJ2RlZmF1bHQnIHwgJ2NvbWZvcnRhYmxlJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3REaXNwbGF5TW9kZSA9ICd0YWJsZScgfCAnY2FyZHMnIHwgJ2F1dG8nO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFZpcnR1YWxpemF0aW9uTW9kZSA9ICdhdXRvJyB8ICdhbHdheXMnIHwgJ25ldmVyJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RWaXJ0dWFsaXphdGlvbkNvbmZpZyA9IHtcbiAgbW9kZT86IEJhY2tvZmZpY2VMaXN0VmlydHVhbGl6YXRpb25Nb2RlO1xuICByb3dIZWlnaHRQeD86IG51bWJlcjtcbiAgb3ZlcnNjYW4/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlSW5maW5pdGVTY3JvbGxDb25maWcgPSB7XG4gIGVuYWJsZWQ/OiB0cnVlO1xuICByb290TWFyZ2luPzogc3RyaW5nO1xuICB0aHJlc2hvbGQ/OiBudW1iZXI7XG4gIHRocmVzaG9sZFB4PzogbnVtYmVyO1xuICBhdXRvTG9hZD86IGJvb2xlYW47XG4gIHN0YXR1cz86IHtcbiAgICBzaG93TG9hZGVkQ291bnQ/OiBib29sZWFuO1xuICAgIHNob3dUb3RhbENvdW50PzogYm9vbGVhbjtcbiAgICBzaG93RW5kU3RhdGU/OiBib29sZWFuO1xuICAgIHNob3dJbmNvbnNpc3RlbnRQYWdlSW5mbz86IGJvb2xlYW47XG4gIH07XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFRvb2xiYXJQcm9maWxlID0ge1xuICBkZW5zaXR5PzogQmFja29mZmljZUxpc3REZW5zaXR5O1xuICBkaXNwbGF5TW9kZT86IEJhY2tvZmZpY2VMaXN0RGlzcGxheU1vZGU7XG4gIG1heFByb21vdGVkRmlsdGVycz86IG51bWJlcjtcbiAgc2hvd1JlZnJlc2g/OiBib29sZWFuO1xuICBzaG93U29ydD86IGJvb2xlYW47XG4gIHNob3dGaWx0ZXJDaGlwcz86ICdhdXRvJyB8ICdhbHdheXMnIHwgJ25ldmVyJztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0VWlDb25maWcgPSB7XG4gIGRlbnNpdHk/OiBCYWNrb2ZmaWNlTGlzdERlbnNpdHk7XG4gIGRpc3BsYXlNb2RlPzogQmFja29mZmljZUxpc3REaXNwbGF5TW9kZTtcbiAgaW5maW5pdGVTY3JvbGw/OiBCYWNrb2ZmaWNlSW5maW5pdGVTY3JvbGxDb25maWc7XG4gIHZpcnR1YWxpemF0aW9uPzogQmFja29mZmljZUxpc3RWaXJ0dWFsaXphdGlvbkNvbmZpZztcbiAgdG9vbGJhcj86IEJhY2tvZmZpY2VMaXN0VG9vbGJhclByb2ZpbGU7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTGlzdFJlc3BvbnNpdmVNZXRhSXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw/OiBJMThuTGFiZWw7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIHRvbmU/OiBCYWNrb2ZmaWNlQmFkZ2VUb25lO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RSZXNwb25zaXZlUHJvZmlsZTxSb3cgPSB1bmtub3duPiA9IHtcbiAgbW9kZT86IEJhY2tvZmZpY2VMaXN0RGlzcGxheU1vZGU7XG4gIGRlbnNpdHk/OiBCYWNrb2ZmaWNlTGlzdERlbnNpdHk7XG4gIG1vYmlsZUJyZWFrcG9pbnQ/OiAnc20nIHwgJ21kJyB8ICdsZyc7XG4gIHByaW1hcnlDb2x1bW4/OiBzdHJpbmc7XG4gIGRlZmF1bHRWaXNpYmxlQ29sdW1ucz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBkZWJ1Z0NvbHVtbnM/OiByZWFkb25seSBzdHJpbmdbXTtcbiAgcm93VGl0bGU/OiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3cpID0+IHN0cmluZyB8IG51bGw+O1xuICByb3dTdWJ0aXRsZT86IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvdykgPT4gc3RyaW5nIHwgbnVsbD47XG4gIHJvd01ldGE/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAocm93OiBSb3cpID0+IHJlYWRvbmx5IEJhY2tvZmZpY2VMaXN0UmVzcG9uc2l2ZU1ldGFJdGVtW11cbiAgPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VGaWx0ZXJQbGFjZW1lbnQgPSAncXVpY2snIHwgJ2RyYXdlcicgfCAnYm90aCc7XG5cbnR5cGUgQmFja29mZmljZUZpbHRlckJhc2U8V2hlcmUsIFZhbHVlPiA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcGxhY2VtZW50PzogQmFja29mZmljZUZpbHRlclBsYWNlbWVudDtcbiAgdG9HcmFwaFFMOiAodmFsdWU6IFZhbHVlKSA9PiBQYXJ0aWFsPFdoZXJlPjtcbiAgZnJvbUdyYXBoUUw/OiAod2hlcmU6IFdoZXJlKSA9PiBWYWx1ZSB8IG51bGw7XG4gIHdoZXJlS2V5Pzoga2V5b2YgV2hlcmU7XG4gIHBhdGg/OiByZWFkb25seSBzdHJpbmdbXTtcbiAgcGlja2VyU2NvcGU/OlxuICAgIHwgQmFja29mZmljZVBpY2tlclNjb3BlPFdoZXJlPlxuICAgIHwgKCh3aGVyZTogV2hlcmUgfCBudWxsKSA9PiBCYWNrb2ZmaWNlUGlja2VyU2NvcGU8V2hlcmU+KTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VGaWx0ZXJTcGVjPFdoZXJlPiA9XG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBzdHJpbmc+ICYge1xuICAgICAga2luZDogJ3RleHQnO1xuICAgICAgcGxhY2Vob2xkZXJMYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIHBsYWNlaG9sZGVyVGV4dD86IEkxOG5MYWJlbDtcbiAgICB9KVxuICB8IChCYWNrb2ZmaWNlRmlsdGVyQmFzZTxXaGVyZSwgc3RyaW5nPiAmIHtcbiAgICAgIGtpbmQ6ICdkYXRldGltZSc7XG4gICAgICBtb2RlPzogJ2Zyb20nIHwgJ3RvJyB8ICdleGFjdCc7XG4gICAgICBwbGFjZWhvbGRlckxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgcGxhY2Vob2xkZXJUZXh0PzogSTE4bkxhYmVsO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBudW1iZXI+ICYge1xuICAgICAga2luZDogJ251bWJlcic7XG4gICAgICBwbGFjZWhvbGRlckxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgcGxhY2Vob2xkZXJUZXh0PzogSTE4bkxhYmVsO1xuICAgICAgaW5wdXRNb2RlPzogJ251bWVyaWMnIHwgJ2RlY2ltYWwnO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBzdHJpbmc+ICYge1xuICAgICAga2luZDogJ2VudW0nO1xuICAgICAgb3B0aW9uczogcmVhZG9ubHkge1xuICAgICAgICB2YWx1ZTogc3RyaW5nO1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgfVtdO1xuICAgIH0pXG4gIHwgKEJhY2tvZmZpY2VGaWx0ZXJCYXNlPFdoZXJlLCBib29sZWFuPiAmIHtcbiAgICAgIGtpbmQ6ICdib29sZWFuJztcbiAgICAgIHRydWVMYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIGZhbHNlTGFiZWw/OiBJMThuTGFiZWw7XG4gICAgfSlcbiAgfCAoQmFja29mZmljZUZpbHRlckJhc2U8V2hlcmUsIHN0cmluZz4gJiB7XG4gICAgICBraW5kOiAnZW50aXR5SWQnO1xuICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgfSk7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VDb25uZWN0aW9uTGlzdENvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgTGlzdEZyYWdtZW50RGF0YSA9IHVua25vd24sXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gQmFja29mZmljZU9wZXJhdGlvbldoZXJlPFRPcGVyYXRpb24+LFxuICBUU29ydCBleHRlbmRzIHN0cmluZyA9IEJhY2tvZmZpY2VPcGVyYXRpb25Tb3J0PFRPcGVyYXRpb24+LFxuPiA9IHtcbiAga2luZDogJ2Nvbm5lY3Rpb24nO1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBxdWVyeTogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGZyYWdtZW50OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgYnVpbGRRdWVyeVZhcmlhYmxlczogKFxuICAgIGlucHV0OiBCYWNrb2ZmaWNlTGlzdFF1ZXJ5SW5wdXQ8VE9wZXJhdGlvbiwgVFdoZXJlLCBUU29ydD4sXG4gICkgPT4gVE9wZXJhdGlvblsndmFyaWFibGVzJ107XG4gIGdldENvbm5lY3Rpb246IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChkYXRhOiBMaXN0RnJhZ21lbnREYXRhKSA9PiBCYWNrb2ZmaWNlQ29ubmVjdGlvbjxSb3dSZWY+XG4gID47XG4gIHRvUm93OiBCaXZhcmlhbnRDYWxsYmFjazwocm93UmVmOiBSb3dSZWYpID0+IFJvd1ZpZXc+O1xuICBnZXRSb3dJZDogQml2YXJpYW50Q2FsbGJhY2s8KHJvdzogUm93VmlldykgPT4gc3RyaW5nPjtcbiAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWM8Um93Vmlldz5bXTtcbiAgcm93RmxhZ3M/OiByZWFkb25seSBCYWNrb2ZmaWNlUm93RmxhZ1NwZWM8Um93Vmlldz5bXTtcbiAgc29ydHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VTb3J0U3BlYzxUU29ydD5bXTtcbiAgZmlsdGVyczogcmVhZG9ubHkgQmFja29mZmljZUZpbHRlclNwZWM8VFdoZXJlPltdO1xuICByZXNwb25zaXZlPzogQmFja29mZmljZUxpc3RSZXNwb25zaXZlUHJvZmlsZTxSb3dWaWV3PjtcbiAgdWk/OiBCYWNrb2ZmaWNlTGlzdFVpQ29uZmlnO1xuICBkZWZhdWx0U3RhdGU/OiBCYWNrb2ZmaWNlTGlzdFN0YXRlPFRXaGVyZSwgVFNvcnQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlY29yZExpc3RDb25maWc8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIExpc3RGcmFnbWVudERhdGEgPSB1bmtub3duLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbiAgVFNvcnQgZXh0ZW5kcyBzdHJpbmcgPSBCYWNrb2ZmaWNlT3BlcmF0aW9uU29ydDxUT3BlcmF0aW9uPixcbj4gPSB7XG4gIGtpbmQ6ICdyZWNvcmRzJztcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgcXVlcnk6IEdyYXBoUUxUYWdnZWROb2RlO1xuICBmcmFnbWVudDogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGJ1aWxkUXVlcnlWYXJpYWJsZXM6IChcbiAgICBpbnB1dDogQmFja29mZmljZUxpc3RRdWVyeUlucHV0PFRPcGVyYXRpb24sIFRXaGVyZSwgVFNvcnQ+LFxuICApID0+IFRPcGVyYXRpb25bJ3ZhcmlhYmxlcyddO1xuICBnZXRSb3dzOiBCaXZhcmlhbnRDYWxsYmFjazwoZGF0YTogTGlzdEZyYWdtZW50RGF0YSkgPT4gcmVhZG9ubHkgUm93UmVmW10+O1xuICB0b1JvdzogQml2YXJpYW50Q2FsbGJhY2s8KHJvd1JlZjogUm93UmVmKSA9PiBSb3dWaWV3PjtcbiAgZ2V0TmV4dEN1cnNvcj86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChkYXRhOiBCYWNrb2ZmaWNlT3BlcmF0aW9uUmVzcG9uc2U8VE9wZXJhdGlvbj4pID0+IHN0cmluZyB8IG51bGxcbiAgPjtcbiAgZ2V0Um93SWQ6IEJpdmFyaWFudENhbGxiYWNrPChyb3c6IFJvd1ZpZXcpID0+IHN0cmluZz47XG4gIGNvbHVtbnM6IHJlYWRvbmx5IEJhY2tvZmZpY2VDb2x1bW5TcGVjPFJvd1ZpZXc+W107XG4gIHJvd0ZsYWdzPzogcmVhZG9ubHkgQmFja29mZmljZVJvd0ZsYWdTcGVjPFJvd1ZpZXc+W107XG4gIHNvcnRzOiByZWFkb25seSBCYWNrb2ZmaWNlU29ydFNwZWM8VFNvcnQ+W107XG4gIGZpbHRlcnM6IHJlYWRvbmx5IEJhY2tvZmZpY2VGaWx0ZXJTcGVjPFRXaGVyZT5bXTtcbiAgcmVzcG9uc2l2ZT86IEJhY2tvZmZpY2VMaXN0UmVzcG9uc2l2ZVByb2ZpbGU8Um93Vmlldz47XG4gIHVpPzogQmFja29mZmljZUxpc3RVaUNvbmZpZztcbiAgZGVmYXVsdFN0YXRlPzogQmFja29mZmljZUxpc3RTdGF0ZTxUV2hlcmUsIFRTb3J0Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlMaXN0Q29uZmlnPFxuICBUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZSxcbiAgUm93UmVmLFxuICBSb3dWaWV3LFxuICBMaXN0RnJhZ21lbnREYXRhID0gdW5rbm93bixcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4gIFRTb3J0IGV4dGVuZHMgc3RyaW5nID0gQmFja29mZmljZU9wZXJhdGlvblNvcnQ8VE9wZXJhdGlvbj4sXG4+ID1cbiAgfCBCYWNrb2ZmaWNlQ29ubmVjdGlvbkxpc3RDb25maWc8XG4gICAgICBUT3BlcmF0aW9uLFxuICAgICAgUm93UmVmLFxuICAgICAgUm93VmlldyxcbiAgICAgIExpc3RGcmFnbWVudERhdGEsXG4gICAgICBUV2hlcmUsXG4gICAgICBUU29ydFxuICAgID5cbiAgfCBCYWNrb2ZmaWNlUmVjb3JkTGlzdENvbmZpZzxcbiAgICAgIFRPcGVyYXRpb24sXG4gICAgICBSb3dSZWYsXG4gICAgICBSb3dWaWV3LFxuICAgICAgTGlzdEZyYWdtZW50RGF0YSxcbiAgICAgIFRXaGVyZSxcbiAgICAgIFRTb3J0XG4gICAgPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUJhZGdlSXRlbSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZyB8IEkxOG5MYWJlbDtcbiAgdGl0bGU/OiBzdHJpbmcgfCBJMThuTGFiZWw7XG4gIHRvbmU/OiBCYWNrb2ZmaWNlQmFkZ2VUb25lO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUlubGluZVZhbHVlU3BlYyA9XG4gIHwge1xuICAgICAgdHlwZTogJ3RleHQnO1xuICAgICAgdmFsdWU6IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnZW50aXR5UmVmJztcbiAgICAgIGVudGl0eTogc3RyaW5nO1xuICAgICAgaWQ6IHN0cmluZyB8IG51bGw7XG4gICAgICBsYWJlbD86IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnbGluayc7XG4gICAgICBocmVmOiBzdHJpbmcgfCBudWxsO1xuICAgICAgbGFiZWw6IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJTdWJ0aXRsZUl0ZW08Tm9kZT4gPSB7XG4gIGlkOiBzdHJpbmc7XG4gIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZUlubGluZVZhbHVlU3BlYz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyTWV0YVNwZWM8Tm9kZT4gPVxuICB8IHtcbiAgICAgIHR5cGU/OiAndGV4dCc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdkYXRlVGltZSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudW1iZXIgfCBudWxsPjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2VudGl0eVJlZic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgZW50aXR5OiBzdHJpbmc7XG4gICAgICBpZDogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGw+O1xuICAgICAgdmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdsaW5rJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBocmVmOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyU3RhdHVzU3BlYzxOb2RlPiA9XG4gIHwge1xuICAgICAgdHlwZTogJ2JhZGdlJztcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICAgICAgdG9uZT86XG4gICAgICAgIHwgQmFja29mZmljZUJhZGdlVG9uZVxuICAgICAgICB8IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlQmFkZ2VUb25lPjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2JhZGdlUm93JztcbiAgICAgIGl0ZW1zOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gcmVhZG9ubHkgQmFja29mZmljZUJhZGdlSXRlbVtdPjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGxhY2VtZW50ID0gJ3ByaW1hcnknIHwgJ3NlY29uZGFyeSc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxDb250ZW50R3JvdXAgPVxuICB8ICdzdW1tYXJ5J1xuICB8ICdpZGVudGl0eSdcbiAgfCAnc2NvcGUnXG4gIHwgJ3N0YXR1cydcbiAgfCAncmVsYXRpb25zJ1xuICB8ICdhY3Rpdml0eSdcbiAgfCAnYmlsbGluZydcbiAgfCAndGVjaG5pY2FsJ1xuICB8ICdyYXcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsSW1wb3J0YW5jZSA9XG4gIHwgJ2hlcm8nXG4gIHwgJ3ByaW1hcnknXG4gIHwgJ3NlY29uZGFyeSdcbiAgfCAnZGVidWcnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsQ29sbGFwc2VCZWhhdmlvciA9IHtcbiAgY29sbGFwc2libGU/OiBib29sZWFuO1xuICBkZWZhdWx0Q29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcGVyc2lzdEtleT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb24gPSB7XG4gIGdyb3VwPzogQmFja29mZmljZURldGFpbENvbnRlbnRHcm91cDtcbiAgaW1wb3J0YW5jZT86IEJhY2tvZmZpY2VEZXRhaWxJbXBvcnRhbmNlO1xuICBjb2xsYXBzZT86IEJhY2tvZmZpY2VEZXRhaWxDb2xsYXBzZUJlaGF2aW9yO1xuICBtb2JpbGU/OiAndmlzaWJsZScgfCAnY29sbGFwc2VkJyB8ICdoaWRkZW4nO1xuICBkZXNrdG9wPzogJ3ByaW1hcnknIHwgJ3NlY29uZGFyeScgfCAnZnVsbFdpZHRoJztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VUb25lID1cbiAgfCAnbmV1dHJhbCdcbiAgfCAnaW5mbydcbiAgfCAnc3VjY2VzcydcbiAgfCAnd2FybmluZydcbiAgfCAnZGFuZ2VyJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFjdGlvblRvbmUgPSAnbmV1dHJhbCcgfCAncHJpbWFyeScgfCAnZGFuZ2VyJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURlbnNpdHkgPSAnY29tcGFjdCcgfCAnY29tZm9ydGFibGUnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU2VtYW50aWNEZXRhaWxQbGFjZW1lbnQgPSAnbWFpbicgfCAnc2lkZScgfCAnZnVsbFdpZHRoJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVNlbWFudGljRGV0YWlsUHJpb3JpdHkgPVxuICB8ICdwcmltYXJ5J1xuICB8ICdzZWNvbmRhcnknXG4gIHwgJ2RpYWdub3N0aWMnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVuZGVyYWJsZVZhbHVlID1cbiAgfCBzdHJpbmdcbiAgfCBudW1iZXJcbiAgfCBib29sZWFuXG4gIHwgbnVsbFxuICB8IHVuZGVmaW5lZDtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVN0YXR1c1ZhbHVlID0ge1xuICByZWFkb25seSBsYWJlbDogc3RyaW5nIHwgSTE4bkxhYmVsO1xuICByZWFkb25seSB0b25lOiBCYWNrb2ZmaWNlVG9uZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VTZW1hbnRpY0Jsb2NrQmFzZSA9IHtcbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRpdGxlOiBJMThuTGFiZWw7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICByZWFkb25seSBwbGFjZW1lbnQ/OiBCYWNrb2ZmaWNlU2VtYW50aWNEZXRhaWxQbGFjZW1lbnQ7XG4gIHJlYWRvbmx5IHByaW9yaXR5PzogQmFja29mZmljZVNlbWFudGljRGV0YWlsUHJpb3JpdHk7XG4gIHJlYWRvbmx5IHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVmFsdWVTcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGhyZWY/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGNvcHlWYWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG4gID47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU3VtbWFyeUl0ZW1TcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsXG4gID47XG4gIHJlYWRvbmx5IGhyZWY/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU3VtbWFyeUJsb2NrU3BlYzxOb2RlPiA9IEJhY2tvZmZpY2VTZW1hbnRpY0Jsb2NrQmFzZSAmIHtcbiAgcmVhZG9ubHkga2luZDogJ3N1bW1hcnknO1xuICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZVN1bW1hcnlJdGVtU3BlYzxOb2RlPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUhlcm9TdW1tYXJ5QmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVN1bW1hcnlCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VNZXRyaWNTcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgZm9ybWF0dGVkVmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuICA+O1xuICByZWFkb25seSBoaW50PzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGNvcHlWYWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkXG4gID47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTWV0cmljR3JvdXBCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gICAgcmVhZG9ubHkga2luZDogJ21ldHJpY3MnO1xuICAgIHJlYWRvbmx5IGRlbnNpdHk/OiBCYWNrb2ZmaWNlRGVuc2l0eTtcbiAgICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZU1ldHJpY1NwZWM8Tm9kZT5bXTtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU1ldHJpY0Jsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VNZXRyaWNHcm91cEJsb2NrU3BlYzxOb2RlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVN0YXRlU3BlYzxOb2RlPiA9IHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcmVhZG9ubHkgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlUmVuZGVyYWJsZVZhbHVlPjtcbiAgcmVhZG9ubHkgZ2V0RGlzcGxheTogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKFxuICAgICAgdmFsdWU6IEJhY2tvZmZpY2VSZW5kZXJhYmxlVmFsdWUsXG4gICAgICBub2RlOiBOb2RlLFxuICAgICkgPT4ge1xuICAgICAgcmVhZG9ubHkgbGFiZWw6IHN0cmluZyB8IEkxOG5MYWJlbDtcbiAgICAgIHJlYWRvbmx5IHRvbmU6IEJhY2tvZmZpY2VUb25lO1xuICAgIH1cbiAgPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VTdGF0ZUdyb3VwQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICAgIHJlYWRvbmx5IGtpbmQ6ICdzdGF0ZXMnO1xuICAgIHJlYWRvbmx5IHN0YXRlczogcmVhZG9ubHkgQmFja29mZmljZVN0YXRlU3BlYzxOb2RlPltdO1xuICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlU3RhdGVCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU3RhdGVHcm91cEJsb2NrU3BlYzxOb2RlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUNvbnRleHRJdGVtU3BlYzxOb2RlPiA9IHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcmVhZG9ubHkgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gIHJlYWRvbmx5IGhyZWY/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZD47XG4gIHJlYWRvbmx5IGVtcHR5TGFiZWw/OiBJMThuTGFiZWw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29udGV4dFN0YWNrQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICAgIHJlYWRvbmx5IGtpbmQ6ICdjb250ZXh0JztcbiAgICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZUNvbnRleHRJdGVtU3BlYzxOb2RlPltdO1xuICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29udGV4dEJsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VDb250ZXh0U3RhY2tCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZWxhdGlvblRpbGVTcGVjPE5vZGU+ID0ge1xuICByZWFkb25seSBpZDogc3RyaW5nO1xuICByZWFkb25seSBsYWJlbDogSTE4bkxhYmVsO1xuICByZWFkb25seSBjb3VudD86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgcmVhZG9ubHkgaHJlZj86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkPjtcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWxcbiAgPjtcbiAgcmVhZG9ubHkgdG9uZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVG9uZSB8IHVuZGVmaW5lZD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVsYXRpb25Hcm91cEJsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VTZW1hbnRpY0Jsb2NrQmFzZSAmIHtcbiAgICByZWFkb25seSBraW5kOiAncmVsYXRpb25zJztcbiAgICByZWFkb25seSBpdGVtczogcmVhZG9ubHkgQmFja29mZmljZVJlbGF0aW9uVGlsZVNwZWM8Tm9kZT5bXTtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlbGF0aW9uQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVJlbGF0aW9uR3JvdXBCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VUaW1lbGluZUV2ZW50U3BlYzxOb2RlPiA9IHtcbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcbiAgcmVhZG9ubHkgbGFiZWw6IEkxOG5MYWJlbDtcbiAgcmVhZG9ubHkgdGltZXN0YW1wPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bWJlciB8IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkXG4gID47XG4gIHJlYWRvbmx5IHN0YXRlPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgKG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VTdGF0dXNWYWx1ZSB8IG51bGwgfCB1bmRlZmluZWRcbiAgPjtcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWxcbiAgPjtcbiAgcmVhZG9ubHkgYWN0b3I/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBwYXlsb2FkPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHVua25vd24+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRpbWVsaW5lQmxvY2tTcGVjPE5vZGU+ID0gQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICByZWFkb25seSBraW5kOiAndGltZWxpbmUnO1xuICByZWFkb25seSBldmVudHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VUaW1lbGluZUV2ZW50U3BlYzxOb2RlPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUF1ZGl0SXRlbVNwZWM8Tm9kZT4gPSB7XG4gIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxhYmVsOiBJMThuTGFiZWw7XG4gIHJlYWRvbmx5IHRpbWVzdGFtcD86IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudW1iZXIgfCBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZFxuICA+O1xuICByZWFkb25seSBhY3Rvcj86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gIHJlYWRvbmx5IHNvdXJjZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQXVkaXRCbG9ja1NwZWM8Tm9kZT4gPSBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gIHJlYWRvbmx5IGtpbmQ6ICdhdWRpdCc7XG4gIHJlYWRvbmx5IGl0ZW1zOiByZWFkb25seSBCYWNrb2ZmaWNlQXVkaXRJdGVtU3BlYzxOb2RlPltdO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlZmVyZW5jZVNwZWM8Tm9kZT4gPSB7XG4gIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxhYmVsOiBJMThuTGFiZWw7XG4gIHJlYWRvbmx5IHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBocmVmPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ+O1xuICByZWFkb25seSBjb3B5VmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZFxuICA+O1xuICByZWFkb25seSByZWZLaW5kPzpcbiAgICB8ICdpZCdcbiAgICB8ICdzbHVnJ1xuICAgIHwgJ3BhdGgnXG4gICAgfCAndXJsJ1xuICAgIHwgJ2hhc2gnXG4gICAgfCAnZXh0ZXJuYWwnXG4gICAgfCAndGV4dCc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVmZXJlbmNlR3JvdXBCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gICAgcmVhZG9ubHkga2luZDogJ3JlZmVyZW5jZXMnO1xuICAgIHJlYWRvbmx5IHJlZmVyZW5jZXM6IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWZlcmVuY2VTcGVjPE5vZGU+W107XG4gIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQYXlsb2FkRm9ybWF0ID0gJ2pzb24nIHwgJ21hcmtkb3duJyB8ICd0ZXh0JyB8ICdjb2RlJztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVBheWxvYWRCbG9ja1NwZWM8Tm9kZT4gPSBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gIHJlYWRvbmx5IGtpbmQ6ICdwYXlsb2FkJztcbiAgcmVhZG9ubHkgZm9ybWF0PzogQmFja29mZmljZVBheWxvYWRGb3JtYXQ7XG4gIHJlYWRvbmx5IHN1bW1hcnk/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHVua25vd24+O1xuICByZWFkb25seSBkZWZhdWx0Q29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW1wdHlMYWJlbD86IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VBY3Rpb25SZXN1bHRCbG9ja1NwZWM8Tm9kZT4gPVxuICBCYWNrb2ZmaWNlU2VtYW50aWNCbG9ja0Jhc2UgJiB7XG4gICAgcmVhZG9ubHkga2luZDogJ2FjdGlvblJlc3VsdCc7XG4gICAgcmVhZG9ubHkgc3RhdHVzPzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgICAobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVN0YXR1c1ZhbHVlIHwgbnVsbCB8IHVuZGVmaW5lZFxuICAgID47XG4gICAgcmVhZG9ubHkgbWVzc2FnZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gICAgcmVhZG9ubHkgcmVmZXJlbmNlcz86IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWZlcmVuY2VTcGVjPE5vZGU+W107XG4gICAgcmVhZG9ubHkgcGF5bG9hZD86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiB1bmtub3duPjtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRlY2huaWNhbEZhY3RzQmxvY2tTcGVjPE5vZGU+ID1cbiAgQmFja29mZmljZVNlbWFudGljQmxvY2tCYXNlICYge1xuICAgIHJlYWRvbmx5IGtpbmQ6ICd0ZWNobmljYWxGYWN0cyc7XG4gICAgcmVhZG9ubHkgZmFjdHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VWYWx1ZVNwZWM8Tm9kZT5bXTtcbiAgfTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVNlbWFudGljRGV0YWlsQmxvY2tTcGVjPE5vZGU+ID1cbiAgfCBCYWNrb2ZmaWNlU3VtbWFyeUJsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VNZXRyaWNHcm91cEJsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VTdGF0ZUdyb3VwQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZUNvbnRleHRTdGFja0Jsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VSZWxhdGlvbkdyb3VwQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVRpbWVsaW5lQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZUF1ZGl0QmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVJlZmVyZW5jZUdyb3VwQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVBheWxvYWRCbG9ja1NwZWM8Tm9kZT5cbiAgfCBCYWNrb2ZmaWNlQWN0aW9uUmVzdWx0QmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZVRlY2huaWNhbEZhY3RzQmxvY2tTcGVjPE5vZGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRmxhZ1ZhcmlhbnQgPVxuICB8ICd5ZXNObydcbiAgfCAnY2FwYWJpbGl0eSdcbiAgfCAnZW5hYmxlZCdcbiAgfCAnZmFpbHVyZSdcbiAgfCAnZW5jcnlwdGVkJ1xuICB8ICdsb2NrZWQnXG4gIHwgJ2RlZmF1bHQnXG4gIHwgJ2FnZW50TWFuYWdlZCdcbiAgfCAnZGVwbG95ZWRQcm9kdWN0aW9uJ1xuICB8ICdmb3JjZWQnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsRmllbGRTcGVjPE5vZGU+ID1cbiAgfCB7XG4gICAgICB0eXBlOiAndGV4dCc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICAgICAgY29weVZhbHVlPzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGw+O1xuICAgICAgZnVsbFdpZHRoPzogYm9vbGVhbjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdiYWRnZSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICAgICAgdG9uZT86XG4gICAgICAgIHwgQmFja29mZmljZUJhZGdlVG9uZVxuICAgICAgICB8IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlQmFkZ2VUb25lPjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdiYWRnZVJvdyc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIGl0ZW1zOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gcmVhZG9ubHkgQmFja29mZmljZUJhZGdlSXRlbVtdPjtcbiAgICAgIGZ1bGxXaWR0aD86IGJvb2xlYW47XG4gICAgICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xuICAgIH1cbiAgfCB7XG4gICAgICB0eXBlOiAnZGF0ZVRpbWUnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bWJlciB8IG51bGw+O1xuICAgICAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ251bWJlcic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gbnVtYmVyIHwgbnVsbD47XG4gICAgICBmb3JtYXQ/OiBCYWNrb2ZmaWNlTnVtYmVyRm9ybWF0O1xuICAgICAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2ZsYWcnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IGJvb2xlYW4gfCBudWxsPjtcbiAgICAgIHZhcmlhbnQ6IEJhY2tvZmZpY2VGbGFnVmFyaWFudDtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdlbnRpdHlSZWYnO1xuICAgICAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICBlbnRpdHk6IHN0cmluZztcbiAgICAgIGlkOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nIHwgbnVsbD47XG4gICAgICB2YWx1ZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdsaW5rJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBzaXplOiBCYWNrb2ZmaWNlRmllbGRTaXplO1xuICAgICAgaHJlZjogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHN0cmluZyB8IG51bGw+O1xuICAgICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudW1iZXIgfCBudWxsPjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICd0YWdnZWRWYWx1ZSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHRhZzogQml2YXJpYW50Q2FsbGJhY2s8XG4gICAgICAgIChub2RlOiBOb2RlKSA9PiB7XG4gICAgICAgICAgbGFiZWw6IHN0cmluZyB8IEkxOG5MYWJlbDtcbiAgICAgICAgICB0b25lPzogQmFja29mZmljZUJhZGdlVG9uZTtcbiAgICAgICAgfSB8IG51bGxcbiAgICAgID47XG4gICAgICB2YWx1ZTogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VJbmxpbmVWYWx1ZVNwZWM+O1xuICAgICAgZnVsbFdpZHRoPzogYm9vbGVhbjtcbiAgICAgIHByZXNlbnRhdGlvbj86IEJhY2tvZmZpY2VEZXRhaWxQcmVzZW50YXRpb247XG4gICAgfVxuICB8IHtcbiAgICAgIHR5cGU6ICdyZWxhdGlvbic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgc2l6ZTogQmFja29mZmljZUZpZWxkU2l6ZTtcbiAgICAgIHJlbGF0aW9uOiBCYWNrb2ZmaWNlUnVudGltZVJlbGF0aW9uRmlsdGVyU3BlYztcbiAgICAgIHZhbHVlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gc3RyaW5nPjtcbiAgICAgIGNvdW50PzogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IG51bWJlciB8IG51bGw+O1xuICAgICAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbiAgICB9XG4gIHwge1xuICAgICAgdHlwZTogJ2N1c3RvbSc7XG4gICAgICBsYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIHNpemU6IEJhY2tvZmZpY2VGaWVsZFNpemU7XG4gICAgICByZW5kZXI6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiB1bmtub3duPjtcbiAgICAgIGZ1bGxXaWR0aD86IGJvb2xlYW47XG4gICAgICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJDb25maWc8Tm9kZT4gPSB7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIHRpdGxlVmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSwgdDogVEZ1bmN0aW9uKSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgc3VidGl0bGU/OiBJMThuTGFiZWw7XG4gIHN1YnRpdGxlVmFsdWU/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogTm9kZSwgdDogVEZ1bmN0aW9uKSA9PiBzdHJpbmcgfCBudWxsXG4gID47XG4gIHN1YnRpdGxlSXRlbXM/OiByZWFkb25seSBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyU3VidGl0bGVJdGVtPE5vZGU+W107XG4gIHN1YnRpdGxlU2VwYXJhdG9yPzogc3RyaW5nO1xuICBpZD86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBzdHJpbmcgfCBudWxsPjtcbiAgYmFkZ2VzPzogcmVhZG9ubHkge1xuICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgdmFsdWU6IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gICAgdG9uZT86XG4gICAgICB8IEJhY2tvZmZpY2VCYWRnZVRvbmVcbiAgICAgIHwgQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IEJhY2tvZmZpY2VCYWRnZVRvbmU+O1xuICB9W107XG4gIHN0YXR1cz86IEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJTdGF0dXNTcGVjPE5vZGU+O1xuICBtZXRhPzogcmVhZG9ubHkgQmFja29mZmljZURldGFpbEhlYWRlck1ldGFTcGVjPE5vZGU+W107XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsU2VjdGlvbkNvbmZpZzxOb2RlPiA9IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICBmaWVsZHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxGaWVsZFNwZWM8Tm9kZT5bXTtcbiAgcGxhY2VtZW50PzogQmFja29mZmljZURldGFpbFBsYWNlbWVudDtcbiAgcHJlc2VudGF0aW9uPzogQmFja29mZmljZURldGFpbFByZXNlbnRhdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VGaWVsZFNldEJsb2NrU3BlYzxOb2RlPiA9XG4gIEJhY2tvZmZpY2VEZXRhaWxTZWN0aW9uQ29uZmlnPE5vZGU+ICYge1xuICAgIGtpbmQ6ICdmaWVsZFNldCc7XG4gIH07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxUYWJsZUJsb2NrU3BlYzxOb2RlLCBSb3c+ID0ge1xuICBraW5kOiAndGFibGUnO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWM8Um93PltdO1xuICByb3dzOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gcmVhZG9ubHkgUm93W10+O1xuICBwbGFjZW1lbnQ/OiBCYWNrb2ZmaWNlRGV0YWlsUGxhY2VtZW50O1xuICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRhYmxlQmxvY2tTcGVjPFxuICBOb2RlLFxuICBSb3cgPSB1bmtub3duLFxuPiA9IEJhY2tvZmZpY2VEZXRhaWxUYWJsZUJsb2NrU3BlYzxOb2RlLCBSb3c+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ3VzdG9tQmxvY2tTcGVjPE5vZGU+ID0ge1xuICBraW5kOiAnY3VzdG9tJztcbiAgbGFiZWw/OiBJMThuTGFiZWw7XG4gIHJlbmRlcjogQml2YXJpYW50Q2FsbGJhY2s8KG5vZGU6IE5vZGUpID0+IHVua25vd24+O1xuICBwbGFjZW1lbnQ/OiBCYWNrb2ZmaWNlRGV0YWlsUGxhY2VtZW50O1xuICBwcmVzZW50YXRpb24/OiBCYWNrb2ZmaWNlRGV0YWlsUHJlc2VudGF0aW9uO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbEJsb2NrU3BlYzxOb2RlPiA9XG4gIHwgQmFja29mZmljZVNlbWFudGljRGV0YWlsQmxvY2tTcGVjPE5vZGU+XG4gIHwgQmFja29mZmljZURldGFpbFRhYmxlQmxvY2tTcGVjPE5vZGUsIGFueT5cbiAgfCBCYWNrb2ZmaWNlQ3VzdG9tQmxvY2tTcGVjPE5vZGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsQ29udGVudFNwZWM8Tm9kZT4gPVxuICB8IEJhY2tvZmZpY2VGaWVsZFNldEJsb2NrU3BlYzxOb2RlPlxuICB8IEJhY2tvZmZpY2VEZXRhaWxCbG9ja1NwZWM8Tm9kZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxWaWV3TGF5b3V0U3BlYyA9IHtcbiAgcmVhZG9ubHkgZGVuc2l0eT86IEJhY2tvZmZpY2VEZW5zaXR5O1xuICByZWFkb25seSBjb2x1bW5zPzogJ2F1dG8nIHwgJ3NpbmdsZScgfCAnbWFpblNpZGUnO1xuICByZWFkb25seSB0ZWNobmljYWxEZWZhdWx0Q29sbGFwc2VkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgc2lkZUNvbHVtbj86IHtcbiAgICByZWFkb25seSB3aWR0aD86ICduYXJyb3cnIHwgJ21lZGl1bScgfCAnd2lkZSc7XG4gICAgcmVhZG9ubHkgc3RpY2t5PzogYm9vbGVhbjtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlVmlld1NwZWM8Tm9kZT4gPSB7XG4gIHJlYWRvbmx5IHRpdGxlOiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBzdWJ0aXRsZT86IEJpdmFyaWFudENhbGxiYWNrPChub2RlOiBOb2RlKSA9PiBCYWNrb2ZmaWNlVmFsdWVMYWJlbD47XG4gIHJlYWRvbmx5IGV5ZWJyb3c/OiBCaXZhcmlhbnRDYWxsYmFjazwobm9kZTogTm9kZSkgPT4gQmFja29mZmljZVZhbHVlTGFiZWw+O1xuICByZWFkb25seSBzdGF0dXM/OiBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyU3RhdHVzU3BlYzxOb2RlPjtcbiAgcmVhZG9ubHkgcmVmZXJlbmNlcz86IHJlYWRvbmx5IEJhY2tvZmZpY2VSZWZlcmVuY2VTcGVjPE5vZGU+W107XG4gIHJlYWRvbmx5IGFjdGlvbnM/OiByZWFkb25seSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uU3BlYzxOb2RlPltdO1xuICByZWFkb25seSBsYXlvdXQ/OiBCYWNrb2ZmaWNlRGV0YWlsVmlld0xheW91dFNwZWM7XG4gIHJlYWRvbmx5IGJsb2NrczogcmVhZG9ubHkgQmFja29mZmljZURldGFpbENvbnRlbnRTcGVjPE5vZGU+W107XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZURhdGFDb250ZXh0ID0ge1xuICBpZDogc3RyaW5nO1xuICBkZXRhaWxJZD86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlVmFyaWFibGVzUmVzdWx0PERldGFpbFF1ZXJ5VmFyaWFibGVzPiA9IHtcbiAgdmFyaWFibGVzOiBEZXRhaWxRdWVyeVZhcmlhYmxlcztcbiAgZGV0YWlsSWQ/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsVmFyaWFibGVzPERldGFpbFF1ZXJ5VmFyaWFibGVzPiA9XG4gIEJhY2tvZmZpY2VEZXRhaWxQYWdlVmFyaWFibGVzUmVzdWx0PERldGFpbFF1ZXJ5VmFyaWFibGVzPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU5vZGVRdWVyeVJlc3BvbnNlPE5vZGVSZWY+ID0ge1xuICByZWFkb25seSBub2RlPzogTm9kZVJlZiB8IG51bGw7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQWxpYXNlZE5vZGVRdWVyeVJlc3BvbnNlPFxuICBBbGlhcyBleHRlbmRzIHN0cmluZyxcbiAgTm9kZVJlZixcbj4gPSB7XG4gIHJlYWRvbmx5IG5vZGU/OlxuICAgIHwgKFJlYWRvbmx5PFBhcnRpYWw8UmVjb3JkPEFsaWFzLCBOb2RlUmVmIHwgbnVsbD4+PiAmIHtcbiAgICAgICAgcmVhZG9ubHkgX190eXBlbmFtZT86IHN0cmluZztcbiAgICAgIH0pXG4gICAgfCBudWxsO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUFsaWFzZWRQaWNrZXJWYWx1ZVJlc3BvbnNlPFxuICBBbGlhcyBleHRlbmRzIHN0cmluZyxcbiAgUm93UmVmLFxuPiA9IEJhY2tvZmZpY2VBbGlhc2VkTm9kZVF1ZXJ5UmVzcG9uc2U8QWxpYXMsIFJvd1JlZj47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlRGF0YVNwZWM8XG4gIERldGFpbFZpZXcsXG4gIERldGFpbERhdGEgPSBEZXRhaWxWaWV3LFxuICBEZXRhaWxRdWVyeURhdGEgPSB1bmtub3duLFxuICBEZXRhaWxGcmFnbWVudEtleSA9IHVua25vd24sXG4gIERldGFpbFF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4+ID0ge1xuICBxdWVyeTogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGZyYWdtZW50OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgcmVzb2x2ZU5vZGU6IChcbiAgICBkYXRhOiBEZXRhaWxRdWVyeURhdGEsXG4gICAgY29udGV4dDogQmFja29mZmljZURldGFpbFBhZ2VEYXRhQ29udGV4dCxcbiAgKSA9PiBEZXRhaWxGcmFnbWVudEtleSB8IG51bGw7XG4gIHRvVmlldzogQml2YXJpYW50Q2FsbGJhY2s8KGRhdGE6IERldGFpbERhdGEpID0+IERldGFpbFZpZXc+O1xuICBidWlsZFZhcmlhYmxlcz86IChpbnB1dDoge1xuICAgIGlkOiBzdHJpbmc7XG4gIH0pID0+IEJhY2tvZmZpY2VEZXRhaWxQYWdlVmFyaWFibGVzUmVzdWx0PERldGFpbFF1ZXJ5VmFyaWFibGVzPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxTdGFuZGFyZFRhYiA9XG4gIHwgJ292ZXJ2aWV3J1xuICB8ICdyZWxhdGlvbnMnXG4gIHwgJ2FjdGl2aXR5J1xuICB8ICdiaWxsaW5nJ1xuICB8ICd0ZWNobmljYWwnXG4gIHwgJ3Jhdyc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxUaXRsZU1ldGFJdGVtID0ge1xuICBpZDogc3RyaW5nO1xuICBsYWJlbD86IEkxOG5MYWJlbDtcbiAgdmFsdWU6IHN0cmluZztcbiAgdG9uZT86IEJhY2tvZmZpY2VCYWRnZVRvbmU7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0UHJvZmlsZTxEZXRhaWxWaWV3ID0gdW5rbm93bj4gPSB7XG4gIHN0YW5kYXJkVGFicz86IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxTdGFuZGFyZFRhYltdO1xuICBzdW1tYXJ5RmllbGRzPzogcmVhZG9ubHkgc3RyaW5nW107XG4gIHNjb3BlRmllbGRzPzogcmVhZG9ubHkgc3RyaW5nW107XG4gIHN0YXR1c0ZpZWxkcz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICB0ZWNobmljYWxHcm91cHNDb2xsYXBzZWQ/OiBib29sZWFuO1xuICByYXdHcm91cHNIaWRkZW5Gcm9tT3ZlcnZpZXc/OiBib29sZWFuO1xuICBzaWRlUmFpbD86IHtcbiAgICBncm91cHM6IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxDb250ZW50R3JvdXBbXTtcbiAgICBzdGlja3k/OiBib29sZWFuO1xuICB9O1xuICB0aXRsZU1ldGE/OiBCaXZhcmlhbnRDYWxsYmFjazxcbiAgICAobm9kZTogRGV0YWlsVmlldykgPT4gcmVhZG9ubHkgQmFja29mZmljZURldGFpbFRpdGxlTWV0YUl0ZW1bXVxuICA+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbExheW91dFNwZWM8XG4gIExheW91dFZpZXcsXG4gIExheW91dERhdGEgPSBMYXlvdXRWaWV3LFxuICBMYXlvdXRRdWVyeURhdGEgPSB1bmtub3duLFxuICBMYXlvdXRGcmFnbWVudEtleSA9IHVua25vd24sXG4gIExheW91dFF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4+ID0gQmFja29mZmljZURldGFpbFBhZ2VEYXRhU3BlYzxcbiAgTGF5b3V0VmlldyxcbiAgTGF5b3V0RGF0YSxcbiAgTGF5b3V0UXVlcnlEYXRhLFxuICBMYXlvdXRGcmFnbWVudEtleSxcbiAgTGF5b3V0UXVlcnlWYXJpYWJsZXNcbj47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlU3BlYzxcbiAgRGV0YWlsVmlldyxcbiAgTGF5b3V0VmlldyA9IERldGFpbFZpZXcsXG4gIERldGFpbERhdGEgPSBEZXRhaWxWaWV3LFxuICBEZXRhaWxRdWVyeURhdGEgPSB1bmtub3duLFxuICBEZXRhaWxGcmFnbWVudEtleSA9IHVua25vd24sXG4gIERldGFpbFF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4+ID0gQmFja29mZmljZURldGFpbFBhZ2VEYXRhU3BlYzxcbiAgRGV0YWlsVmlldyxcbiAgRGV0YWlsRGF0YSxcbiAgRGV0YWlsUXVlcnlEYXRhLFxuICBEZXRhaWxGcmFnbWVudEtleSxcbiAgRGV0YWlsUXVlcnlWYXJpYWJsZXNcbj4gJiB7XG4gIGlkOiBzdHJpbmc7XG4gIHBhdGg6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgY29udGVudDogcmVhZG9ubHkgQmFja29mZmljZURldGFpbENvbnRlbnRTcGVjPERldGFpbFZpZXc+W107XG4gIGFjdGlvbnM/OiByZWFkb25seSBCYWNrb2ZmaWNlRW50aXR5QWN0aW9uU3BlYzxEZXRhaWxWaWV3PltdO1xuICBpc1Zpc2libGU/OiBCaXZhcmlhbnRDYWxsYmFjazwobGF5b3V0UGFnZTogTGF5b3V0VmlldykgPT4gYm9vbGVhbj47XG4gIHByb2ZpbGU/OiBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0UHJvZmlsZTxEZXRhaWxWaWV3Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQaWNrZXJWYWx1ZUNvbmZpZzxcbiAgUm93UmVmLFxuICBSb3dWaWV3LFxuICBWYWx1ZVF1ZXJ5RGF0YSA9IHVua25vd24sXG4+ID0ge1xuICBxdWVyeTogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIHJlc29sdmVSb3c6IChkYXRhOiBWYWx1ZVF1ZXJ5RGF0YSkgPT4gUm93UmVmIHwgbnVsbDtcbiAgdG9Sb3c6IEJpdmFyaWFudENhbGxiYWNrPChyb3dSZWY6IFJvd1JlZikgPT4gUm93Vmlldz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5RGV0YWlsQ29uZmlnPFxuICBMYXlvdXREYXRhID0gYW55LFxuICBMYXlvdXRWaWV3ID0gYW55LFxuICBNYWluRGF0YSA9IExheW91dERhdGEsXG4gIE1haW5WaWV3ID0gTGF5b3V0VmlldyxcbiAgU3ViRGF0YSA9IE1haW5EYXRhLFxuICBTdWJWaWV3ID0gTWFpblZpZXcsXG4gIExheW91dFF1ZXJ5RGF0YSA9IHVua25vd24sXG4gIE1haW5RdWVyeURhdGEgPSB1bmtub3duLFxuICBTdWJRdWVyeURhdGEgPSBNYWluUXVlcnlEYXRhLFxuICBMYXlvdXRGcmFnbWVudEtleSA9IHVua25vd24sXG4gIE1haW5GcmFnbWVudEtleSA9IHVua25vd24sXG4gIFN1YkZyYWdtZW50S2V5ID0gTWFpbkZyYWdtZW50S2V5LFxuICBMYXlvdXRRdWVyeVZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBNYWluUXVlcnlWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgU3ViUXVlcnlWYXJpYWJsZXMgPSBNYWluUXVlcnlWYXJpYWJsZXMsXG4+ID0ge1xuICB0aXRsZTogSTE4bkxhYmVsO1xuICBoZWFkZXI6IEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJDb25maWc8TGF5b3V0Vmlldz47XG4gIHByb2ZpbGU/OiBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0UHJvZmlsZTxMYXlvdXRWaWV3PjtcbiAgbGF5b3V0UGFnZTogQmFja29mZmljZURldGFpbExheW91dFNwZWM8XG4gICAgTGF5b3V0VmlldyxcbiAgICBMYXlvdXREYXRhLFxuICAgIExheW91dFF1ZXJ5RGF0YSxcbiAgICBMYXlvdXRGcmFnbWVudEtleSxcbiAgICBMYXlvdXRRdWVyeVZhcmlhYmxlc1xuICA+O1xuICBtYWluUGFnZTogQmFja29mZmljZURldGFpbFBhZ2VTcGVjPFxuICAgIE1haW5WaWV3LFxuICAgIExheW91dFZpZXcsXG4gICAgTWFpbkRhdGEsXG4gICAgTWFpblF1ZXJ5RGF0YSxcbiAgICBNYWluRnJhZ21lbnRLZXksXG4gICAgTWFpblF1ZXJ5VmFyaWFibGVzXG4gID47XG4gIHN1YlBhZ2VzPzogcmVhZG9ubHkgQmFja29mZmljZURldGFpbFBhZ2VTcGVjPFxuICAgIFN1YlZpZXcsXG4gICAgTGF5b3V0VmlldyxcbiAgICBTdWJEYXRhLFxuICAgIFN1YlF1ZXJ5RGF0YSxcbiAgICBTdWJGcmFnbWVudEtleSxcbiAgICBTdWJRdWVyeVZhcmlhYmxlc1xuICA+W107XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRW50aXR5UGlja2VyQ29uZmlnPFxuICBUT3BlcmF0aW9uIGV4dGVuZHMgT3BlcmF0aW9uVHlwZSxcbiAgUm93UmVmLFxuICBSb3dWaWV3LFxuICBQaWNrZXJGcmFnbWVudERhdGEgPSB1bmtub3duLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbiAgVmFsdWVRdWVyeURhdGEgPSBCYWNrb2ZmaWNlQWxpYXNlZFBpY2tlclZhbHVlUmVzcG9uc2U8c3RyaW5nLCBSb3dSZWY+LFxuPiA9IHtcbiAgcXVlcnk6IEdyYXBoUUxUYWdnZWROb2RlO1xuICBmcmFnbWVudDogR3JhcGhRTFRhZ2dlZE5vZGU7XG4gIGJ1aWxkUXVlcnlWYXJpYWJsZXM6IChcbiAgICBpbnB1dDogQmFja29mZmljZVBpY2tlclF1ZXJ5SW5wdXQ8VE9wZXJhdGlvbiwgVFdoZXJlPixcbiAgKSA9PiBUT3BlcmF0aW9uWyd2YXJpYWJsZXMnXTtcbiAgdmFsdWU/OiBCYWNrb2ZmaWNlUGlja2VyVmFsdWVDb25maWc8Um93UmVmLCBSb3dWaWV3LCBWYWx1ZVF1ZXJ5RGF0YT47XG4gIGdldENvbm5lY3Rpb246IEJpdmFyaWFudENhbGxiYWNrPFxuICAgIChkYXRhOiBQaWNrZXJGcmFnbWVudERhdGEpID0+IEJhY2tvZmZpY2VDb25uZWN0aW9uPFJvd1JlZj5cbiAgPjtcbiAgdG9Sb3c6IEJpdmFyaWFudENhbGxiYWNrPChyb3dSZWY6IFJvd1JlZikgPT4gUm93Vmlldz47XG4gIGdldFJvd0lkOiBCaXZhcmlhbnRDYWxsYmFjazwocm93OiBSb3dWaWV3KSA9PiBzdHJpbmc+O1xuICBzZWFyY2hFbmFibGVkPzogYm9vbGVhbjtcbiAgc2VhcmNoUmVxdWlyZWQ/OiBib29sZWFuO1xuICBzZWFyY2hQbGFjZWhvbGRlcj86IEkxOG5MYWJlbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VUb29sRW50aXR5Q29uZmlnID0ge1xuICBraW5kOiAndG9vbCc7XG4gIGlkOiBzdHJpbmc7XG4gIGxhYmVsPzogSTE4bkxhYmVsO1xuICByb3V0ZT86IHN0cmluZztcbiAgb3BlcmF0aW9uOiBCYWNrb2ZmaWNlVG9vbE9wZXJhdGlvbjtcbiAgbGlzdD86IG5ldmVyO1xuICBkZXRhaWw/OiBuZXZlcjtcbiAgcGlja2VyPzogbmV2ZXI7XG4gIHJvdXRlcz86IG5ldmVyO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RGYWNldENvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgTGlzdEZyYWdtZW50RGF0YSxcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4gIFRTb3J0IGV4dGVuZHMgc3RyaW5nID0gQmFja29mZmljZU9wZXJhdGlvblNvcnQ8VE9wZXJhdGlvbj4sXG4+ID0ge1xuICBraW5kOiAnbGlzdCc7XG4gIGlkOiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIGxpc3Q6IEJhY2tvZmZpY2VFbnRpdHlMaXN0Q29uZmlnPFxuICAgIFRPcGVyYXRpb24sXG4gICAgUm93UmVmLFxuICAgIFJvd1ZpZXcsXG4gICAgTGlzdEZyYWdtZW50RGF0YSxcbiAgICBUV2hlcmUsXG4gICAgVFNvcnRcbiAgPjtcbiAgbGlzdEFjdGlvbnM/OiByZWFkb25seSBCYWNrb2ZmaWNlTGlzdEFjdGlvblNwZWNbXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQaWNrZXJGYWNldENvbmZpZzxcbiAgVE9wZXJhdGlvbiBleHRlbmRzIE9wZXJhdGlvblR5cGUsXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgUGlja2VyRnJhZ21lbnREYXRhLFxuICBUV2hlcmUgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IEJhY2tvZmZpY2VPcGVyYXRpb25XaGVyZTxUT3BlcmF0aW9uPixcbiAgVmFsdWVRdWVyeURhdGEgPSBCYWNrb2ZmaWNlQWxpYXNlZFBpY2tlclZhbHVlUmVzcG9uc2U8c3RyaW5nLCBSb3dSZWY+LFxuPiA9IHtcbiAga2luZDogJ3BpY2tlcic7XG4gIGlkOiBzdHJpbmc7XG4gIGxhYmVsOiBJMThuTGFiZWw7XG4gIHBpY2tlcjogQmFja29mZmljZUVudGl0eVBpY2tlckNvbmZpZzxcbiAgICBUT3BlcmF0aW9uLFxuICAgIFJvd1JlZixcbiAgICBSb3dWaWV3LFxuICAgIFBpY2tlckZyYWdtZW50RGF0YSxcbiAgICBUV2hlcmUsXG4gICAgVmFsdWVRdWVyeURhdGFcbiAgPjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxQYWdlc1NwZWM8XG4gIExheW91dFZpZXcgPSB1bmtub3duLFxuICBQYWdlIGV4dGVuZHMgQmFja29mZmljZURldGFpbFBhZ2VSb3V0ZVNwZWM8TGF5b3V0Vmlldz4gPVxuICAgIEJhY2tvZmZpY2VEZXRhaWxQYWdlUm91dGVTcGVjPExheW91dFZpZXc+LFxuPiA9IHtcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgaGVhZGVyOiBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyQ29uZmlnPExheW91dFZpZXc+O1xuICBtYWluUGFnZTogUGFnZTtcbiAgc3ViUGFnZXM/OiByZWFkb25seSBQYWdlW107XG4gIGRlZmF1bHRQYWdlSWQ6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRGYWNldENvbmZpZzxcbiAgTGF5b3V0RGF0YSA9IGFueSxcbiAgTGF5b3V0VmlldyA9IGFueSxcbiAgTGF5b3V0UXVlcnlEYXRhID0gdW5rbm93bixcbiAgTGF5b3V0RnJhZ21lbnRLZXkgPSB1bmtub3duLFxuICBMYXlvdXRRdWVyeVZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPiA9IHtcbiAga2luZDogJ2RldGFpbC1sYXlvdXQnO1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICBoZWFkZXI6IEJhY2tvZmZpY2VEZXRhaWxIZWFkZXJDb25maWc8TGF5b3V0Vmlldz47XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIGxheW91dFBhZ2U6IEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRTcGVjPFxuICAgIExheW91dFZpZXcsXG4gICAgTGF5b3V0RGF0YSxcbiAgICBMYXlvdXRRdWVyeURhdGEsXG4gICAgTGF5b3V0RnJhZ21lbnRLZXksXG4gICAgTGF5b3V0UXVlcnlWYXJpYWJsZXNcbiAgPjtcbiAgcGFnZXM6IEJhY2tvZmZpY2VEZXRhaWxQYWdlc1NwZWM8TGF5b3V0Vmlldz47XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0Q29uZmlnPFxuICBMYXlvdXRWaWV3ID0gdW5rbm93bixcbiAgRGV0YWlsRGF0YSA9IGFueSxcbiAgRGV0YWlsVmlldyA9IGFueSxcbiAgRGV0YWlsUXVlcnlEYXRhID0gdW5rbm93bixcbiAgRGV0YWlsRnJhZ21lbnRLZXkgPSB1bmtub3duLFxuICBEZXRhaWxRdWVyeVZhcmlhYmxlcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuPiA9IHtcbiAga2luZDogJ2RldGFpbC1wYWdlJztcbiAgaWQ6IHN0cmluZztcbiAgbGFiZWw6IEkxOG5MYWJlbDtcbiAgdGl0bGU6IEkxOG5MYWJlbDtcbiAgaGVhZGVyOiBCYWNrb2ZmaWNlRGV0YWlsSGVhZGVyQ29uZmlnPExheW91dFZpZXc+O1xuICBwYWdlOiBCYWNrb2ZmaWNlRGV0YWlsUGFnZVNwZWM8XG4gICAgRGV0YWlsVmlldyxcbiAgICBMYXlvdXRWaWV3LFxuICAgIERldGFpbERhdGEsXG4gICAgRGV0YWlsUXVlcnlEYXRhLFxuICAgIERldGFpbEZyYWdtZW50S2V5LFxuICAgIERldGFpbFF1ZXJ5VmFyaWFibGVzXG4gID47XG4gIHBhZ2VzOiBCYWNrb2ZmaWNlRGV0YWlsUGFnZXNTcGVjPExheW91dFZpZXc+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRvb2xGYWNldENvbmZpZyA9IHtcbiAga2luZDogJ3Rvb2wnO1xuICBpZDogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICB0b29sOiBCYWNrb2ZmaWNlVG9vbEVudGl0eUNvbmZpZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlGYWNldENvbmZpZ0Jhc2UgPVxuICB8IEJhY2tvZmZpY2VMaXN0RmFjZXRDb25maWdCYXNlXG4gIHwgQmFja29mZmljZVBpY2tlckZhY2V0Q29uZmlnQmFzZVxuICB8IEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRGYWNldENvbmZpZ0Jhc2VcbiAgfCBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0Q29uZmlnQmFzZVxuICB8IEJhY2tvZmZpY2VUb29sRmFjZXRDb25maWc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMb2FkZWRMaXN0RmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICdsaXN0JztcbiAgaWQ6IHN0cmluZztcbiAgY29uZmlnOiBCYWNrb2ZmaWNlTGlzdEZhY2V0Q29uZmlnQmFzZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMb2FkZWRQaWNrZXJGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ3BpY2tlcic7XG4gIGlkOiBzdHJpbmc7XG4gIGNvbmZpZzogQmFja29mZmljZVBpY2tlckZhY2V0Q29uZmlnQmFzZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMb2FkZWREZXRhaWxMYXlvdXRGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ2RldGFpbC1sYXlvdXQnO1xuICBpZDogc3RyaW5nO1xuICBjb25maWc6IEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRGYWNldENvbmZpZ0Jhc2U7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTG9hZGVkRGV0YWlsUGFnZUZhY2V0TW9kdWxlID0ge1xuICBraW5kOiAnZGV0YWlsLXBhZ2UnO1xuICBpZDogc3RyaW5nO1xuICBwYWdlSWQ6IHN0cmluZztcbiAgY29uZmlnOiBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0Q29uZmlnQmFzZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMb2FkZWRUb29sRmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICd0b29sJztcbiAgaWQ6IHN0cmluZztcbiAgY29uZmlnOiBCYWNrb2ZmaWNlVG9vbEZhY2V0Q29uZmlnO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVPcGVyYXRpb24gPSBPcGVyYXRpb25UeXBlICYge1xuICB2YXJpYWJsZXM6IHtcbiAgICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xuICAgIHdoZXJlPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIHNvcnQ/OiBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkO1xuICAgIGNvdW50PzogbnVtYmVyO1xuICAgIGN1cnNvcj86IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIH07XG4gIHJlc3BvbnNlOiB1bmtub3duO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVMaXN0RmFjZXRDb25maWcgPSBCYWNrb2ZmaWNlTGlzdEZhY2V0Q29uZmlnPFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIFJlY29yZDxzdHJpbmcsIGFueT4sXG4gIGFueVxuPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVQaWNrZXJGYWNldENvbmZpZyA9IEJhY2tvZmZpY2VQaWNrZXJGYWNldENvbmZpZzxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTG9hZGVkRW50aXR5RmFjZXRNb2R1bGUgPVxuICB8IEJhY2tvZmZpY2VMb2FkZWRMaXN0RmFjZXRNb2R1bGVcbiAgfCBCYWNrb2ZmaWNlTG9hZGVkUGlja2VyRmFjZXRNb2R1bGVcbiAgfCBCYWNrb2ZmaWNlTG9hZGVkRGV0YWlsTGF5b3V0RmFjZXRNb2R1bGVcbiAgfCBCYWNrb2ZmaWNlTG9hZGVkRGV0YWlsUGFnZUZhY2V0TW9kdWxlXG4gIHwgQmFja29mZmljZUxvYWRlZFRvb2xGYWNldE1vZHVsZTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RGYWNldExvYWRlciA9XG4gICgpID0+IFByb21pc2U8QmFja29mZmljZUxvYWRlZExpc3RGYWNldE1vZHVsZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQaWNrZXJGYWNldExvYWRlciA9XG4gICgpID0+IFByb21pc2U8QmFja29mZmljZUxvYWRlZFBpY2tlckZhY2V0TW9kdWxlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZURldGFpbExheW91dEZhY2V0TG9hZGVyID1cbiAgKCkgPT4gUHJvbWlzZTxCYWNrb2ZmaWNlTG9hZGVkRGV0YWlsTGF5b3V0RmFjZXRNb2R1bGU+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0TG9hZGVyID0gKFxuICBwYWdlSWQ6IHN0cmluZyxcbikgPT4gUHJvbWlzZTxCYWNrb2ZmaWNlTG9hZGVkRGV0YWlsUGFnZUZhY2V0TW9kdWxlPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRvb2xGYWNldExvYWRlciA9XG4gICgpID0+IFByb21pc2U8QmFja29mZmljZUxvYWRlZFRvb2xGYWNldE1vZHVsZT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0RGV0YWlsRmFjZXRMb2FkZXJNYXAgPSB7XG4gIGxpc3Q/OiBCYWNrb2ZmaWNlTGlzdEZhY2V0TG9hZGVyO1xuICBwaWNrZXI/OiBCYWNrb2ZmaWNlUGlja2VyRmFjZXRMb2FkZXI7XG4gIGRldGFpbExheW91dDogQmFja29mZmljZURldGFpbExheW91dEZhY2V0TG9hZGVyO1xuICBkZXRhaWxQYWdlOiBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0TG9hZGVyO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRvb2xGYWNldExvYWRlck1hcCA9IHtcbiAgdG9vbDogQmFja29mZmljZVRvb2xGYWNldExvYWRlcjtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlGYWNldExvYWRlck1hcCA9XG4gIHwgQmFja29mZmljZUxpc3REZXRhaWxGYWNldExvYWRlck1hcFxuICB8IEJhY2tvZmZpY2VUb29sRmFjZXRMb2FkZXJNYXA7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW0gPSB7XG4gIGlkOiBzdHJpbmc7XG4gIGtpbmQ6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEtpbmQ7XG4gIHJvdXRlU2VnbWVudDogc3RyaW5nO1xuICBncm91cElkPzogc3RyaW5nO1xuICBsYWJlbDogSTE4bkxhYmVsO1xuICByb3V0ZXM6IEJhY2tvZmZpY2VFbnRpdHlSb3V0ZU1hbmlmZXN0O1xuICBoYXNMaXN0OiBib29sZWFuO1xuICBkZXRhaWxQYWdlcz86IHJlYWRvbmx5IEJhY2tvZmZpY2VEZXRhaWxQYWdlTWFuaWZlc3RJdGVtW107XG4gIGRlZmF1bHREZXRhaWxQYWdlSWQ/OiBzdHJpbmc7XG4gIGZhY2V0czogQmFja29mZmljZUVudGl0eUZhY2V0TG9hZGVyTWFwO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eU1hbmlmZXN0TWFwID0gUmVjb3JkPFxuICBzdHJpbmcsXG4gIEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW1cbj47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD4gPSBFeHRyYWN0PFxuICBrZXlvZiBUTWFuaWZlc3QsXG4gIHN0cmluZ1xuPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU1hbmlmZXN0TGlzdEVudGl0eUlkPFRNYW5pZmVzdD4gPSB7XG4gIFtURW50aXR5SWQgaW4gQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0Pl06IFRNYW5pZmVzdFtURW50aXR5SWRdIGV4dGVuZHMge1xuICAgIGtpbmQ6ICdsaXN0LWRldGFpbCc7XG4gICAgaGFzTGlzdDogdHJ1ZTtcbiAgfVxuICAgID8gVEVudGl0eUlkXG4gICAgOiBuZXZlcjtcbn1bQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0Pl0gZXh0ZW5kcyBpbmZlciBURW50aXR5SWRcbiAgPyBbVEVudGl0eUlkXSBleHRlbmRzIFtuZXZlcl1cbiAgICA/IHN0cmluZyBleHRlbmRzIEJhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD5cbiAgICAgID8gc3RyaW5nXG4gICAgICA6IG5ldmVyXG4gICAgOiBFeHRyYWN0PFRFbnRpdHlJZCwgc3RyaW5nPlxuICA6IG5ldmVyO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlTWFuaWZlc3REZXRhaWxFbnRpdHlJZDxUTWFuaWZlc3Q+ID0ge1xuICBbVEVudGl0eUlkIGluIEJhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD5dOiBUTWFuaWZlc3RbVEVudGl0eUlkXSBleHRlbmRzIHtcbiAgICBraW5kOiAnbGlzdC1kZXRhaWwnO1xuICB9XG4gICAgPyBURW50aXR5SWRcbiAgICA6IG5ldmVyO1xufVtCYWNrb2ZmaWNlTWFuaWZlc3RFbnRpdHlJZDxUTWFuaWZlc3Q+XSBleHRlbmRzIGluZmVyIFRFbnRpdHlJZFxuICA/IFtURW50aXR5SWRdIGV4dGVuZHMgW25ldmVyXVxuICAgID8gc3RyaW5nIGV4dGVuZHMgQmFja29mZmljZU1hbmlmZXN0RW50aXR5SWQ8VE1hbmlmZXN0PlxuICAgICAgPyBzdHJpbmdcbiAgICAgIDogbmV2ZXJcbiAgICA6IEV4dHJhY3Q8VEVudGl0eUlkLCBzdHJpbmc+XG4gIDogbmV2ZXI7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VNYW5pZmVzdFRvb2xJZDxUTWFuaWZlc3Q+ID0ge1xuICBbVEVudGl0eUlkIGluIEJhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD5dOiBUTWFuaWZlc3RbVEVudGl0eUlkXSBleHRlbmRzIHtcbiAgICBraW5kOiAndG9vbCc7XG4gIH1cbiAgICA/IFRFbnRpdHlJZFxuICAgIDogbmV2ZXI7XG59W0JhY2tvZmZpY2VNYW5pZmVzdEVudGl0eUlkPFRNYW5pZmVzdD5dIGV4dGVuZHMgaW5mZXIgVEVudGl0eUlkXG4gID8gW1RFbnRpdHlJZF0gZXh0ZW5kcyBbbmV2ZXJdXG4gICAgPyBzdHJpbmcgZXh0ZW5kcyBCYWNrb2ZmaWNlTWFuaWZlc3RFbnRpdHlJZDxUTWFuaWZlc3Q+XG4gICAgICA/IHN0cmluZ1xuICAgICAgOiBuZXZlclxuICAgIDogRXh0cmFjdDxURW50aXR5SWQsIHN0cmluZz5cbiAgOiBuZXZlcjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZU1hbmlmZXN0RGV0YWlsUGFnZUlkPFxuICBUTWFuaWZlc3QsXG4gIFRFbnRpdHlJZCBleHRlbmRzIEJhY2tvZmZpY2VNYW5pZmVzdERldGFpbEVudGl0eUlkPFRNYW5pZmVzdD4sXG4+ID0gVE1hbmlmZXN0W1RFbnRpdHlJZF0gZXh0ZW5kcyB7XG4gIGRldGFpbFBhZ2VzOiByZWFkb25seSAoaW5mZXIgVFBhZ2UpW107XG59XG4gID8gVFBhZ2UgZXh0ZW5kcyB7IGlkOiBpbmZlciBUUGFnZUlkIH1cbiAgICA/IEV4dHJhY3Q8VFBhZ2VJZCwgc3RyaW5nPlxuICAgIDogc3RyaW5nXG4gIDogc3RyaW5nO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWRMaXN0RmFjZXRDb25maWc8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIExpc3RGcmFnbWVudERhdGEsXG4gIFRXaGVyZSBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0gQmFja29mZmljZU9wZXJhdGlvbldoZXJlPFRPcGVyYXRpb24+LFxuICBUU29ydCBleHRlbmRzIHN0cmluZyA9IEJhY2tvZmZpY2VPcGVyYXRpb25Tb3J0PFRPcGVyYXRpb24+LFxuPiA9IEJhY2tvZmZpY2VMaXN0RmFjZXRDb25maWc8XG4gIFRPcGVyYXRpb24sXG4gIFJvd1JlZixcbiAgUm93VmlldyxcbiAgTGlzdEZyYWdtZW50RGF0YSxcbiAgVFdoZXJlLFxuICBUU29ydFxuPiAmIHtcbiAgcm91dGVzOiBCYWNrb2ZmaWNlRW50aXR5Um91dGVzO1xuICBsaXN0VXJsQ29kZWM/OiBCYWNrb2ZmaWNlTGlzdFVybENvZGVjPFRXaGVyZSwgVFNvcnQ+O1xuICBsaXN0RGVmYXVsdHM/OiBCYWNrb2ZmaWNlTGlzdFN0YXRlPFRXaGVyZSwgVFNvcnQ+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRDb25maWc8XG4gIFRPcGVyYXRpb24gZXh0ZW5kcyBPcGVyYXRpb25UeXBlLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIFBpY2tlckZyYWdtZW50RGF0YSxcbiAgVFdoZXJlIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSBCYWNrb2ZmaWNlT3BlcmF0aW9uV2hlcmU8VE9wZXJhdGlvbj4sXG4+ID0gQmFja29mZmljZVBpY2tlckZhY2V0Q29uZmlnPFxuICBUT3BlcmF0aW9uLFxuICBSb3dSZWYsXG4gIFJvd1ZpZXcsXG4gIFBpY2tlckZyYWdtZW50RGF0YSxcbiAgVFdoZXJlXG4+ICYge1xuICByb3V0ZXM6IEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXM7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxMYXlvdXRGYWNldENvbmZpZzxcbiAgTGF5b3V0UmVmID0gYW55LFxuICBMYXlvdXRWaWV3ID0gYW55LFxuICBMYXlvdXRRdWVyeURhdGEgPSB1bmtub3duLFxuICBMYXlvdXRGcmFnbWVudFJlZiA9IHVua25vd24sXG4gIExheW91dFF1ZXJ5VmFyaWFibGVzID0gUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4+ID0gQmFja29mZmljZURldGFpbExheW91dEZhY2V0Q29uZmlnPFxuICBMYXlvdXRSZWYsXG4gIExheW91dFZpZXcsXG4gIExheW91dFF1ZXJ5RGF0YSxcbiAgTGF5b3V0RnJhZ21lbnRSZWYsXG4gIExheW91dFF1ZXJ5VmFyaWFibGVzXG4+ICYge1xuICByb3V0ZXM6IEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXM7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxQYWdlRmFjZXRDb25maWc8XG4gIExheW91dFZpZXcgPSB1bmtub3duLFxuICBEZXRhaWxSZWYgPSBhbnksXG4gIERldGFpbFZpZXcgPSBhbnksXG4gIERldGFpbFF1ZXJ5RGF0YSA9IHVua25vd24sXG4gIERldGFpbEZyYWdtZW50UmVmID0gdW5rbm93bixcbiAgRGV0YWlsUXVlcnlWYXJpYWJsZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbj4gPSBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0Q29uZmlnPFxuICBMYXlvdXRWaWV3LFxuICBEZXRhaWxSZWYsXG4gIERldGFpbFZpZXcsXG4gIERldGFpbFF1ZXJ5RGF0YSxcbiAgRGV0YWlsRnJhZ21lbnRSZWYsXG4gIERldGFpbFF1ZXJ5VmFyaWFibGVzXG4+ICYge1xuICByb3V0ZXM6IEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXM7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWRUb29sRmFjZXRDb25maWcgPSBCYWNrb2ZmaWNlVG9vbEZhY2V0Q29uZmlnICYge1xuICByb3V0ZTogc3RyaW5nO1xuICByb3V0ZXM6IEJhY2tvZmZpY2VFbnRpdHlSb3V0ZXM7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWRFbnRpdHlGYWNldENvbmZpZ0Jhc2UgPVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZExpc3RGYWNldENvbmZpZ0Jhc2VcbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWRQaWNrZXJGYWNldENvbmZpZ0Jhc2VcbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxMYXlvdXRGYWNldENvbmZpZ0Jhc2VcbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlXG4gIHwgQmFja29mZmljZVJlc29sdmVkVG9vbEZhY2V0Q29uZmlnO1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWRMaXN0RmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICdsaXN0JztcbiAgaWQ6IHN0cmluZztcbiAgbWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGNvbmZpZzogQmFja29mZmljZVJlc29sdmVkTGlzdEZhY2V0Q29uZmlnQmFzZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZFBpY2tlckZhY2V0TW9kdWxlID0ge1xuICBraW5kOiAncGlja2VyJztcbiAgaWQ6IHN0cmluZztcbiAgbWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGNvbmZpZzogQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkRGV0YWlsTGF5b3V0RmFjZXRNb2R1bGUgPSB7XG4gIGtpbmQ6ICdkZXRhaWwtbGF5b3V0JztcbiAgaWQ6IHN0cmluZztcbiAgbWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGNvbmZpZzogQmFja29mZmljZVJlc29sdmVkRGV0YWlsTGF5b3V0RmFjZXRDb25maWdCYXNlO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkRGV0YWlsUGFnZUZhY2V0TW9kdWxlID0ge1xuICBraW5kOiAnZGV0YWlsLXBhZ2UnO1xuICBpZDogc3RyaW5nO1xuICBwYWdlSWQ6IHN0cmluZztcbiAgbWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGNvbmZpZzogQmFja29mZmljZVJlc29sdmVkRGV0YWlsUGFnZUZhY2V0Q29uZmlnQmFzZTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZFRvb2xGYWNldE1vZHVsZSA9IHtcbiAga2luZDogJ3Rvb2wnO1xuICBpZDogc3RyaW5nO1xuICBtYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgY29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWRUb29sRmFjZXRDb25maWc7XG59O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUmVzb2x2ZWRFbnRpdHlGYWNldE1vZHVsZSA9XG4gIHwgQmFja29mZmljZVJlc29sdmVkTGlzdEZhY2V0TW9kdWxlXG4gIHwgQmFja29mZmljZVJlc29sdmVkUGlja2VyRmFjZXRNb2R1bGVcbiAgfCBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxMYXlvdXRGYWNldE1vZHVsZVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbFBhZ2VGYWNldE1vZHVsZVxuICB8IEJhY2tvZmZpY2VSZXNvbHZlZFRvb2xGYWNldE1vZHVsZTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUxpc3RGYWNldENvbmZpZ0Jhc2UgPSBCYWNrb2ZmaWNlUnVudGltZUxpc3RGYWNldENvbmZpZztcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVBpY2tlckZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VSdW50aW1lUGlja2VyRmFjZXRDb25maWc7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VEZXRhaWxMYXlvdXRGYWNldENvbmZpZ0Jhc2UgPVxuICBCYWNrb2ZmaWNlRGV0YWlsTGF5b3V0RmFjZXRDb25maWc8YW55LCBhbnksIGFueSwgYW55LCBhbnk+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlRGV0YWlsUGFnZUZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VEZXRhaWxQYWdlRmFjZXRDb25maWc8YW55LCBhbnksIGFueSwgYW55LCBhbnksIGFueT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZExpc3RGYWNldENvbmZpZ0Jhc2UgPVxuICBCYWNrb2ZmaWNlUmVzb2x2ZWRMaXN0RmFjZXRDb25maWc8XG4gICAgYW55LFxuICAgIGFueSxcbiAgICBhbnksXG4gICAgYW55LFxuICAgIFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICAgYW55XG4gID47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZFBpY2tlckZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VSZXNvbHZlZFBpY2tlckZhY2V0Q29uZmlnPGFueSwgYW55LCBhbnksIGFueSwgUmVjb3JkPHN0cmluZywgYW55Pj47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0Q29uZmlnPGFueSwgYW55LCBhbnksIGFueSwgYW55PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJlc29sdmVkRGV0YWlsUGFnZUZhY2V0Q29uZmlnQmFzZSA9XG4gIEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbFBhZ2VGYWNldENvbmZpZzxhbnksIGFueSwgYW55LCBhbnksIGFueSwgYW55PjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVSZXNvbHZlZExpc3RGYWNldENvbmZpZyA9XG4gIEJhY2tvZmZpY2VSZXNvbHZlZExpc3RGYWNldENvbmZpZ0Jhc2U7XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSdW50aW1lUmVzb2x2ZWRQaWNrZXJGYWNldENvbmZpZyA9XG4gIEJhY2tvZmZpY2VSZXNvbHZlZFBpY2tlckZhY2V0Q29uZmlnQmFzZTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVDb25uZWN0aW9uTGlzdENvbmZpZyA9XG4gIEJhY2tvZmZpY2VDb25uZWN0aW9uTGlzdENvbmZpZzxhbnksIGFueSwgYW55LCBhbnksIFJlY29yZDxzdHJpbmcsIGFueT4sIGFueT47XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VSdW50aW1lUmVjb3JkTGlzdENvbmZpZyA9IEJhY2tvZmZpY2VSZWNvcmRMaXN0Q29uZmlnPFxuICBhbnksXG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIFJlY29yZDxzdHJpbmcsIGFueT4sXG4gIGFueVxuPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVJ1bnRpbWVFbnRpdHlMaXN0Q29uZmlnID0gQmFja29mZmljZUVudGl0eUxpc3RDb25maWc8XG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgUmVjb3JkPHN0cmluZywgYW55PixcbiAgYW55XG4+O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlUnVudGltZUVudGl0eVBpY2tlckNvbmZpZyA9IEJhY2tvZmZpY2VFbnRpdHlQaWNrZXJDb25maWc8XG4gIGFueSxcbiAgYW55LFxuICBhbnksXG4gIGFueSxcbiAgUmVjb3JkPHN0cmluZywgYW55PlxuPjtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZUVudGl0eUZhY2V0TW9kdWxlQ2FjaGVFbnRyeSA9IHtcbiAgc3RhdHVzOiBCYWNrb2ZmaWNlRW50aXR5TW9kdWxlU3RhdHVzO1xuICBwcm9taXNlPzogUHJvbWlzZTxCYWNrb2ZmaWNlUmVzb2x2ZWRFbnRpdHlGYWNldE1vZHVsZT47XG4gIG1vZHVsZT86IEJhY2tvZmZpY2VSZXNvbHZlZEVudGl0eUZhY2V0TW9kdWxlO1xuICBlcnJvcj86IEVycm9yO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRvb2xWYXJpYWJsZXNDb250ZXh0ID0ge1xuICBzY29wZTogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIHJ1bjogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjbGFzcyBCYWNrb2ZmaWNlVG9vbFZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcHVibGljIGxhYmVsOiBJMThuTGFiZWw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKGxhYmVsOiBJMThuTGFiZWwpIHtcbiAgICBzdXBlcignQmFja29mZmljZSB0b29sIHZhbGlkYXRpb24gZXJyb3InKTtcbiAgICB0aGlzLmxhYmVsID0gbGFiZWw7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRvb2xPcGVyYXRpb24gPSB7XG4gIHRpdGxlOiBJMThuTGFiZWw7XG4gIHN1YnRpdGxlPzogSTE4bkxhYmVsO1xuICBpbnB1dFR5cGVTREw/OiBzdHJpbmc7XG4gIHF1ZXJ5OiBHcmFwaFFMVGFnZ2VkTm9kZTtcbiAgaW5wdXRzPzogcmVhZG9ubHkgQmFja29mZmljZVRvb2xJbnB1dFNwZWNbXTtcbiAgb3V0cHV0cz86IHJlYWRvbmx5IEJhY2tvZmZpY2VUb29sT3V0cHV0U3BlY1tdO1xuICByZW5kZXI/OiAoZGF0YTogdW5rbm93bikgPT4gdW5rbm93bjtcbiAgc2hvd1Byb2plY3RQaWNrZXI/OiBib29sZWFuO1xuICBidWlsZFZhcmlhYmxlcz86IChcbiAgICBpbnB1dDogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgY29udGV4dDogQmFja29mZmljZVRvb2xWYXJpYWJsZXNDb250ZXh0LFxuICApID0+IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVRvb2xJbnB1dFNwZWMgPVxuICB8IHtcbiAgICAgIGlkOiBzdHJpbmc7XG4gICAgICBraW5kOiAndGV4dCc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgcGxhY2Vob2xkZXI/OiBJMThuTGFiZWw7XG4gICAgICBkZWZhdWx0VmFsdWU/OiBzdHJpbmc7XG4gICAgfVxuICB8IHtcbiAgICAgIGlkOiBzdHJpbmc7XG4gICAgICBraW5kOiAnanNvbic7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgcGxhY2Vob2xkZXI/OiBJMThuTGFiZWw7XG4gICAgICBkZWZhdWx0VmFsdWU/OiBzdHJpbmc7XG4gICAgfVxuICB8IHtcbiAgICAgIGlkOiBzdHJpbmc7XG4gICAgICBraW5kOiAnZW51bSc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgb3B0aW9uczogcmVhZG9ubHkgeyB2YWx1ZTogc3RyaW5nOyBsYWJlbDogSTE4bkxhYmVsIH1bXTtcbiAgICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcbiAgICB9XG4gIHwge1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGtpbmQ6ICdib29sZWFuJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBkZWZhdWx0VmFsdWU/OiBib29sZWFuO1xuICAgIH1cbiAgfCB7XG4gICAgICBpZDogc3RyaW5nO1xuICAgICAga2luZDogJ2VudGl0eUlkJztcbiAgICAgIGxhYmVsOiBJMThuTGFiZWw7XG4gICAgICBlbnRpdHk6IHN0cmluZztcbiAgICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlVG9vbE91dHB1dFNwZWMgPVxuICB8IHtcbiAgICAgIGtpbmQ6ICd0YWJsZSc7XG4gICAgICBsYWJlbD86IEkxOG5MYWJlbDtcbiAgICAgIGRlc2NyaXB0aW9uPzogSTE4bkxhYmVsO1xuICAgICAgY29sdW1uczogcmVhZG9ubHkgQmFja29mZmljZUNvbHVtblNwZWNbXTtcbiAgICAgIHJvd3M6IChkYXRhOiB1bmtub3duKSA9PiByZWFkb25seSB1bmtub3duW107XG4gICAgfVxuICB8IHtcbiAgICAgIGtpbmQ6ICdjb2RlJztcbiAgICAgIGxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG4gICAgICB2YWx1ZTogKGRhdGE6IHVua25vd24pID0+IHN0cmluZztcbiAgICB9XG4gIHwge1xuICAgICAga2luZDogJ2pzb24nO1xuICAgICAgbGFiZWw/OiBJMThuTGFiZWw7XG4gICAgICBkZXNjcmlwdGlvbj86IEkxOG5MYWJlbDtcbiAgICAgIHZhbHVlOiAoZGF0YTogdW5rbm93bikgPT4gdW5rbm93bjtcbiAgICB9XG4gIHwge1xuICAgICAga2luZDogJ2tleVZhbHVlJztcbiAgICAgIGxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG4gICAgICBpdGVtczogcmVhZG9ubHkge1xuICAgICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgICB2YWx1ZTogKGRhdGE6IHVua25vd24pID0+IEJhY2tvZmZpY2VWYWx1ZUxhYmVsO1xuICAgICAgfVtdO1xuICAgIH1cbiAgfCB7XG4gICAgICBraW5kOiAncGF5bG9hZCc7XG4gICAgICBsYWJlbDogSTE4bkxhYmVsO1xuICAgICAgZGVzY3JpcHRpb24/OiBJMThuTGFiZWw7XG4gICAgICB2YWx1ZTogKGRhdGE6IHVua25vd24pID0+IHVua25vd247XG4gICAgICBmb3JtYXQ/OiAnbWFya2Rvd24nIHwgJ2pzb24nIHwgJ3RleHQnO1xuICAgIH1cbiAgfCB7XG4gICAgICBraW5kOiAnY3VzdG9tJztcbiAgICAgIGxhYmVsPzogSTE4bkxhYmVsO1xuICAgICAgcmVuZGVyOiAoZGF0YTogdW5rbm93bikgPT4gdW5rbm93bjtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBCYWNrb2ZmaWNlQ29ubmVjdGlvbjxSb3c+ID0ge1xuICBlZGdlczogcmVhZG9ubHkgeyBub2RlOiBSb3cgfVtdO1xuICB0b3RhbENvdW50PzogbnVtYmVyIHwgbnVsbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VMaXN0RGVmYXVsdHM8V2hlcmUsIFNvcnQgZXh0ZW5kcyBzdHJpbmc+ID0ge1xuICB3aGVyZTogV2hlcmUgfCBudWxsO1xuICBzb3J0OiBTb3J0IHwgbnVsbDtcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQcmVwYXJlZExpc3RSb3V0ZSA9IHtcbiAgZW50aXR5SWQ6IHN0cmluZztcbiAgZW50aXR5TWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGVudGl0eUNvbmZpZzogQmFja29mZmljZVJlc29sdmVkTGlzdEZhY2V0Q29uZmlnQmFzZTtcbiAgcXVlcnk6IFByZWxvYWRlZFF1ZXJ5PE9wZXJhdGlvblR5cGU+O1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVByZXBhcmVkRGV0YWlsTGF5b3V0Um91dGUgPSB7XG4gIGVudGl0eUlkOiBzdHJpbmc7XG4gIGVudGl0eU1hbmlmZXN0OiBCYWNrb2ZmaWNlRW50aXR5TWFuaWZlc3RJdGVtO1xuICBlbnRpdHlDb25maWc6IEJhY2tvZmZpY2VSZXNvbHZlZERldGFpbExheW91dEZhY2V0Q29uZmlnQmFzZTtcbiAgbGF5b3V0UXVlcnk6IFByZWxvYWRlZFF1ZXJ5PE9wZXJhdGlvblR5cGU+O1xuICBpZDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgQmFja29mZmljZVByZXBhcmVkRGV0YWlsUGFnZVJvdXRlID0ge1xuICBlbnRpdHlJZDogc3RyaW5nO1xuICBlbnRpdHlNYW5pZmVzdDogQmFja29mZmljZUVudGl0eU1hbmlmZXN0SXRlbTtcbiAgZW50aXR5Q29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxMYXlvdXRGYWNldENvbmZpZ0Jhc2U7XG4gIGlkOiBzdHJpbmc7XG4gIHBhZ2VJZDogc3RyaW5nO1xuICBwYWdlUGF0aDogc3RyaW5nO1xuICBwYWdlQ29uZmlnOiBCYWNrb2ZmaWNlUmVzb2x2ZWREZXRhaWxQYWdlRmFjZXRDb25maWdCYXNlO1xuICBwYWdlUXVlcnk6IFByZWxvYWRlZFF1ZXJ5PE9wZXJhdGlvblR5cGU+O1xuICBkZXRhaWxJZD86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJhY2tvZmZpY2VQcmVwYXJlZFRvb2xSb3V0ZSA9IHtcbiAgZW50aXR5SWQ6IHN0cmluZztcbiAgZW50aXR5TWFuaWZlc3Q6IEJhY2tvZmZpY2VFbnRpdHlNYW5pZmVzdEl0ZW07XG4gIGVudGl0eUNvbmZpZzogQmFja29mZmljZVJlc29sdmVkVG9vbEZhY2V0Q29uZmlnO1xufTtcbiJdfQ==