diff --git a/build/formsy-react.js b/build/formsy-react.js index 5adeb08..1010b03 100755 --- a/build/formsy-react.js +++ b/build/formsy-react.js @@ -235,7 +235,7 @@ Formsy.Form = React.createClass({displayName: "Form", } var isValid = true; - if (component.validate) { + if (component.validate && typeof component.validate === 'function') { isValid = component.validate(); } else if (component.props.required || component._validations) { isValid = this.runValidation(component); @@ -639,4 +639,4 @@ module.exports = { },{}]},{},["./src/main.js"]) -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy9tYWluLmpzIiwiL1VzZXJzL2NocmlzdGlhbmFsZm9uaS9Eb2N1bWVudHMvZGV2L2Zvcm1zeS1yZWFjdC9zcmMvTWl4aW4uanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy91dGlscy5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3JjL3ZhbGlkYXRpb25SdWxlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUNBQSxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM3QyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7QUFDaEIsSUFBSSxlQUFlLEdBQUcsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDdEQsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ2xDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNsQyxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7O0FBRWpCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDOztBQUVyQixNQUFNLENBQUMsUUFBUSxHQUFHLFVBQVUsYUFBYSxFQUFFO0VBQ3pDLE9BQU8sR0FBRyxhQUFhLENBQUM7QUFDMUIsQ0FBQyxDQUFDOztBQUVGLE1BQU0sQ0FBQyxpQkFBaUIsR0FBRyxVQUFVLElBQUksRUFBRSxJQUFJLEVBQUU7RUFDL0MsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztBQUMvQixDQUFDLENBQUM7O0FBRUYsTUFBTSxDQUFD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SyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztHQUNuQztFQUNELFNBQVMsRUFBRSxVQUFVLEtBQUssRUFBRTtJQUMxQixPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7R0FDckM7RUFDRCxnQkFBZ0IsRUFBRSxVQUFVLEtBQUssRUFBRTtJQUNqQyxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztHQUNsRDtFQUNELFFBQVEsRUFBRSxVQUFVLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFO0lBQ25DLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtNQUNyQixPQUFPLEtBQUssQ0FBQyxNQUFNLElBQUksR0FBRyxJQUFJLEtBQUssQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDO0tBQ25EO0lBQ0QsT0FBTyxLQUFLLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQztHQUM1QjtFQUNELE1BQU0sRUFBRSxVQUFVLEtBQUssRUFBRSxHQUFHLEVBQUU7SUFDNUIsT0FBTyxLQUFLLElBQUksR0FBRyxDQUFDO0dBQ3JCO0VBQ0QsV0FBVyxFQUFFLFVBQVUsS0FBSyxFQUFFLEtBQUssRUFBRTtJQUNuQyxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7R0FDN0I7QUFDSCxDQUFDLENBQUM7O0FBRUYiLCJmaWxlIjoiZ2VuZXJhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiBlKHQsbixyKXtmdW5jdGlvbiBzKG8sdSl7aWYoIW5bb10pe2lmKCF0W29dKXt2YXIgYT10eXBlb2YgcmVxdWlyZT09XCJmdW5jdGlvblwiJiZyZXF1aXJlO2lmKCF1JiZhKXJldHVybiBhKG8sITApO2lmKGkpcmV0dXJuIGkobywhMCk7dmFyIGY9bmV3IEVycm9yKFwiQ2Fubm90IGZpbmQgbW9kdWxlICdcIitvK1wiJ1wiKTt0aHJvdyBmLmNvZGU9XCJNT0RVTEVfTk9UX0ZPVU5EXCIsZn12YXIgbD1uW29dPXtleHBvcnRzOnt9fTt0W29dWzBdLmNhbGwobC5leHBvcnRzLGZ1bmN0aW9uKGUpe3ZhciBuPXRbb11bMV1bZV07cmV0dXJuIHMobj9uOmUpfSxsLGwuZXhwb3J0cyxlLHQsbixyKX1yZXR1cm4gbltvXS5leHBvcnRzfXZhciBpPXR5cGVvZiByZXF1aXJlPT1cImZ1bmN0aW9uXCImJnJlcXVpcmU7Zm9yKHZhciBvPTA7bzxyLmxlbmd0aDtvKyspcyhyW29dKTtyZXR1cm4gc30pIiwidmFyIFJlYWN0ID0gZ2xvYmFsLlJlYWN0IHx8IHJlcXVpcmUoJ3JlYWN0Jyk7XG52YXIgRm9ybXN5ID0ge307XG52YXIgdmFsaWRhdGlvblJ1bGVzID0gcmVxdWlyZSgnLi92YWxpZGF0aW9uUnVsZXMuanMnKTtcbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vdXRpbHMuanMnKTtcbnZhciBNaXhpbiA9IHJlcXVpcmUoJy4vTWl4aW4uanMnKTtcbnZhciBvcHRpb25zID0ge307XG5cbkZvcm1zeS5NaXhpbiA9IE1peGluO1xuXG5Gb3Jtc3kuZGVmYXVsdHMgPSBmdW5jdGlvbiAocGFzc2VkT3B0aW9ucykge1xuICBvcHRpb25zID0gcGFzc2VkT3B0aW9ucztcbn07XG5cbkZvcm1zeS5hZGRWYWxpZGF0aW9uUnVsZSA9IGZ1bmN0aW9uIChuYW1lLCBmdW5jKSB7XG4gIHZhbGlkYXRpb25SdWxlc1tuYW1lXSA9IGZ1bmM7XG59O1xuXG5Gb3Jtc3kuRm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJGb3JtXCIsXG4gIGdldEluaXRpYWxTdGF0ZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc1ZhbGlkOiB0cnVlLFxuICAgICAgaXNTdWJtaXR0aW5nOiBmYWxzZSxcbiAgICAgIGNhbkNoYW5nZTogZmFsc2VcbiAgICB9O1xuICB9LFxuICBnZXREZWZhdWx0UHJvcHM6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaGVhZGVyczoge30sXG4gICAgICBvblN1Y2Nlc3M6IGZ1bmN0aW9uICgpIHt9LFxuICAgICAgb25FcnJvcjogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblN1Ym1pdDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblZhbGlkU3VibWl0OiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uSW52YWxpZFN1Ym1pdDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblN1Ym1pdHRlZDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblZhbGlkOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uSW52YWxpZDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKCkge31cbiAgICB9O1xuICB9LFxuXG4gIC8vIEFkZCBhIG1hcCB0byBzdG9yZSB0aGUgaW5wdXRzIG9mIHRoZSBmb3JtLCBhIG1vZGVsIHRvIHN0b3JlXG4gIC8vIHRoZSB2YWx1ZXMgb2YgdGhlIGZvcm0gYW5kIHJlZ2lzdGVyIGNoaWxkIGlucHV0c1xuICBjb21wb25lbnRXaWxsTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLmlucHV0cyA9IHt9O1xuICAgIHRoaXMubW9kZWwgPSB7fTtcbiAgICB0aGlzLnJlZ2lzdGVySW5wdXRzKHRoaXMucHJvcHMuY2hpbGRyZW4pO1xuICB9LFxuXG4gIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcy52YWxpZGF0ZUZvcm0oKTtcbiAgfSxcblxuICBjb21wb25lbnRXaWxsVXBkYXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGlucHV0S2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKTtcblxuICAgIC8vIFRoZSB1cGRhdGVkIGNoaWxkcmVuIGFycmF5IGlzIG5vdCBhdmFpbGFibGUgaGVyZSBmb3Igc29tZSByZWFzb24sXG4gICAgLy8gd2UgbmVlZCB0byB3YWl0IGZvciBuZXh0IGV2ZW50IGxvb3BcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblxuICAgICAgLy8gVGhlIGNvbXBvbmVudCBtaWdodCBoYXZlIGJlZW4gdW5tb3VudGVkIG9uIGFuXG4gICAgICAvLyB1cGRhdGVcbiAgICAgIGlmICh0aGlzLmlzTW91bnRlZCgpKSB7XG5cbiAgICAgICAgdGhpcy5yZWdpc3RlcklucHV0cyh0aGlzLnByb3BzLmNoaWxkcmVuKTtcblxuICAgICAgIGlmICh0aGlzLnByb3BzLnZhbGlkYXRpb25FcnJvcnMpIHtcbiAgICAgICAgICB0aGlzLnNldElucHV0VmFsaWRhdGlvbkVycm9ycyh0aGlzLnByb3BzLnZhbGlkYXRpb25FcnJvcnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIG5ld0lucHV0S2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKTtcbiAgICAgICAgaWYgKHV0aWxzLmFycmF5c0RpZmZlcihpbnB1dEtleXMsIG5ld0lucHV0S2V5cykpIHtcbiAgICAgICAgICB0aGlzLnZhbGlkYXRlRm9ybSgpO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH0uYmluZCh0aGlzKSwgMCk7XG4gIH0sXG5cbiAgLy8gVXBkYXRlIG1vZGVsLCBzdWJtaXQgdG8gdXJsIHByb3AgYW5kIHNlbmQgdGhlIG1vZGVsXG4gIHN1Ym1pdDogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIC8vIFRyaWdnZXIgZm9ybSBhcyBub3QgcHJpc3RpbmUuXG4gICAgLy8gSWYgYW55IGlucHV0cyBoYXZlIG5vdCBiZWVuIHRvdWNoZWQgeWV0IHRoaXMgd2lsbCBtYWtlIHRoZW0gZGlydHlcbiAgICAvLyBzbyB2YWxpZGF0aW9uIGJlY29tZXMgdmlzaWJsZSAoaWYgYmFzZWQgb24gaXNQcmlzdGluZSlcbiAgICB0aGlzLnNldEZvcm1QcmlzdGluZShmYWxzZSk7XG5cbiAgICAvLyBUbyBzdXBwb3J0IHVzZSBjYXNlcyB3aGVyZSBubyBhc3luYyBvciByZXF1ZXN0IG9wZXJhdGlvbiBpcyBuZWVkZWQuXG4gICAgLy8gVGhlIFwib25TdWJtaXRcIiBjYWxsYmFjayBpcyBjYWxsZWQgd2l0aCB0aGUgbW9kZWwgZS5nLiB7ZmllbGROYW1lOiBcIm15VmFsdWVcIn0sXG4gICAgLy8gaWYgd2FudGluZyB0byByZXNldCB0aGUgZW50aXJlIGZvcm0gdG8gb3JpZ2luYWwgc3RhdGUsIHRoZSBzZWNvbmQgcGFyYW0gaXMgYSBjYWxsYmFjayBmb3IgdGhpcy5cbiAgICBpZiAoIXRoaXMucHJvcHMudXJsKSB7XG4gICAgICB0aGlzLnVwZGF0ZU1vZGVsKCk7XG4gICAgICB2YXIgbW9kZWwgPSB0aGlzLm1hcE1vZGVsKCk7XG4gICAgICB0aGlzLnByb3BzLm9uU3VibWl0KG1vZGVsLCB0aGlzLnJlc2V0TW9kZWwsIHRoaXMudXBkYXRlSW5wdXRzV2l0aEVycm9yKTtcbiAgICAgIHRoaXMuc3RhdGUuaXNWYWxpZCA/IHRoaXMucHJvcHMub25WYWxpZFN1Ym1pdChtb2RlbCwgdGhpcy5yZXNldE1vZGVsKSA6IHRoaXMucHJvcHMub25JbnZhbGlkU3VibWl0KG1vZGVsLCB0aGlzLnJlc2V0TW9kZWwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlTW9kZWwoKTtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGlzU3VibWl0dGluZzogdHJ1ZVxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcy5vblN1Ym1pdCh0aGlzLm1hcE1vZGVsKCksIHRoaXMucmVzZXRNb2RlbCwgdGhpcy51cGRhdGVJbnB1dHNXaXRoRXJyb3IpO1xuXG4gICAgdmFyIGhlYWRlcnMgPSAoT2JqZWN0LmtleXModGhpcy5wcm9wcy5oZWFkZXJzKS5sZW5ndGggJiYgdGhpcy5wcm9wcy5oZWFkZXJzKSB8fCBvcHRpb25zLmhlYWRlcnMgfHwge307XG5cbiAgICB2YXIgbWV0aG9kID0gdGhpcy5wcm9wcy5tZXRob2QgJiYgdXRpbHMuYWpheFt0aGlzLnByb3BzLm1ldGhvZC50b0xvd2VyQ2FzZSgpXSA/IHRoaXMucHJvcHMubWV0aG9kLnRvTG93ZXJDYXNlKCkgOiAncG9zdCc7XG4gICAgdXRpbHMuYWpheFttZXRob2RdKHRoaXMucHJvcHMudXJsLCB0aGlzLm1hcE1vZGVsKCksIHRoaXMucHJvcHMuY29udGVudFR5cGUgfHwgb3B0aW9ucy5jb250ZW50VHlwZSB8fCAnanNvbicsIGhlYWRlcnMpXG4gICAgICAudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHtcbiAgICAgICAgdGhpcy5wcm9wcy5vblN1Y2Nlc3MocmVzcG9uc2UpO1xuICAgICAgICB0aGlzLnByb3BzLm9uU3VibWl0dGVkKCk7XG4gICAgICB9LmJpbmQodGhpcykpXG4gICAgICAuY2F0Y2godGhpcy5mYWlsU3VibWl0KTtcbiAgfSxcblxuICBtYXBNb2RlbDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLm1hcHBpbmcgPyB0aGlzLnByb3BzLm1hcHBpbmcodGhpcy5tb2RlbCkgOiB0aGlzLm1vZGVsO1xuICB9LFxuXG4gIC8vIEdvZXMgdGhyb3VnaCBhbGwgcmVnaXN0ZXJlZCBjb21wb25lbnRzIGFuZFxuICAvLyB1cGRhdGVzIHRoZSBtb2RlbCB2YWx1ZXNcbiAgdXBkYXRlTW9kZWw6IGZ1bmN0aW9uICgpIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmlucHV0cykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuICAgICAgdGhpcy5tb2RlbFtuYW1lXSA9IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcblxuICAvLyBSZXNldCBlYWNoIGtleSBpbiB0aGUgbW9kZWwgdG8gdGhlIG9yaWdpbmFsIC8gaW5pdGlhbCB2YWx1ZVxuICByZXNldE1vZGVsOiBmdW5jdGlvbiAoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5pbnB1dHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHRoaXMuaW5wdXRzW25hbWVdLnJlc2V0VmFsdWUoKTtcbiAgICB9LmJpbmQodGhpcykpO1xuICAgIHRoaXMudmFsaWRhdGVGb3JtKCk7XG4gIH0sXG5cbiAgc2V0SW5wdXRWYWxpZGF0aW9uRXJyb3JzOiBmdW5jdGlvbiAoZXJyb3JzKSB7XG4gICAgIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuICAgICAgdmFyIGFyZ3MgPSBbe1xuICAgICAgICBfaXNWYWxpZDogIShuYW1lIGluIGVycm9ycyksXG4gICAgICAgIF9zZXJ2ZXJFcnJvcjogZXJyb3JzW25hbWVdXG4gICAgICB9XTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZS5hcHBseShjb21wb25lbnQsIGFyZ3MpO1xuICAgIH0uYmluZCh0aGlzKSk7ICAgXG4gIH0sXG5cbiAgLy8gR28gdGhyb3VnaCBlcnJvcnMgZnJvbSBzZXJ2ZXIgYW5kIGdyYWIgdGhlIGNvbXBvbmVudHNcbiAgLy8gc3RvcmVkIGluIHRoZSBpbnB1dHMgbWFwLiBDaGFuZ2UgdGhlaXIgc3RhdGUgdG8gaW52YWxpZFxuICAvLyBhbmQgc2V0IHRoZSBzZXJ2ZXJFcnJvciBtZXNzYWdlXG4gIHVwZGF0ZUlucHV0c1dpdGhFcnJvcjogZnVuY3Rpb24gKGVycm9ycykge1xuICAgIE9iamVjdC5rZXlzKGVycm9ycykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSwgaW5kZXgpIHtcbiAgICAgIHZhciBjb21wb25lbnQgPSB0aGlzLmlucHV0c1tuYW1lXTtcblxuICAgICAgaWYgKCFjb21wb25lbnQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdZb3UgYXJlIHRyeWluZyB0byB1cGRhdGUgYW4gaW5wdXQgdGhhdCBkb2VzIG5vdCBleGlzdHMuIFZlcmlmeSBlcnJvcnMgb2JqZWN0IHdpdGggaW5wdXQgbmFtZXMuICcgKyBKU09OLnN0cmluZ2lmeShlcnJvcnMpKTtcbiAgICAgIH1cblxuICAgICAgdmFyIGFyZ3MgPSBbe1xuICAgICAgICBfaXNWYWxpZDogZmFsc2UsXG4gICAgICAgIF9zZXJ2ZXJFcnJvcjogZXJyb3JzW25hbWVdXG4gICAgICB9XTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZS5hcHBseShjb21wb25lbnQsIGFyZ3MpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG5cbiAgZmFpbFN1Ym1pdDogZnVuY3Rpb24gKGVycm9ycykge1xuICAgIHRoaXMudXBkYXRlSW5wdXRzV2l0aEVycm9yKGVycm9ycyk7XG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBpc1N1Ym1pdHRpbmc6IGZhbHNlXG4gICAgfSk7XG4gICAgdGhpcy5wcm9wcy5vbkVycm9yKGVycm9ycyk7XG4gICAgdGhpcy5wcm9wcy5vblN1Ym1pdHRlZCgpO1xuICB9LFxuXG4gIC8vIFRyYXZlcnNlIHRoZSBjaGlsZHJlbiBhbmQgY2hpbGRyZW4gb2YgY2hpbGRyZW4gdG8gZmluZFxuICAvLyBhbGwgaW5wdXRzIGJ5IGNoZWNraW5nIHRoZSBuYW1lIHByb3AuIE1heWJlIGRvIGEgYmV0dGVyXG4gIC8vIGNoZWNrIGhlcmVcbiAgcmVnaXN0ZXJJbnB1dHM6IGZ1bmN0aW9uIChjaGlsZHJlbikge1xuICAgIFJlYWN0LkNoaWxkcmVuLmZvckVhY2goY2hpbGRyZW4sIGZ1bmN0aW9uIChjaGlsZCkge1xuXG4gICAgICBpZiAoY2hpbGQgJiYgY2hpbGQucHJvcHMgJiYgY2hpbGQucHJvcHMubmFtZSkge1xuICAgICAgICBjaGlsZC5wcm9wcy5fYXR0YWNoVG9Gb3JtID0gdGhpcy5hdHRhY2hUb0Zvcm07XG4gICAgICAgIGNoaWxkLnByb3BzLl9kZXRhY2hGcm9tRm9ybSA9IHRoaXMuZGV0YWNoRnJvbUZvcm07XG4gICAgICAgIGNoaWxkLnByb3BzLl92YWxpZGF0ZSA9IHRoaXMudmFsaWRhdGU7XG4gICAgICAgIGNoaWxkLnByb3BzLl9pc0Zvcm1EaXNhYmxlZCA9IHRoaXMuaXNGb3JtRGlzYWJsZWQ7XG4gICAgICAgIGNoaWxkLnByb3BzLl9pc1ZhbGlkVmFsdWUgPSB0aGlzLnJ1blZhbGlkYXRpb247XG4gICAgICB9XG5cbiAgICAgIGlmIChjaGlsZCAmJiBjaGlsZC5wcm9wcyAmJiBjaGlsZC5wcm9wcy5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnJlZ2lzdGVySW5wdXRzKGNoaWxkLnByb3BzLmNoaWxkcmVuKTtcbiAgICAgIH1cblxuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG5cbiAgaXNGb3JtRGlzYWJsZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kaXNhYmxlZDtcbiAgfSxcblxuICBnZXRDdXJyZW50VmFsdWVzOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKS5yZWR1Y2UoZnVuY3Rpb24gKGRhdGEsIG5hbWUpIHtcbiAgICAgIHZhciBjb21wb25lbnQgPSB0aGlzLmlucHV0c1tuYW1lXTtcbiAgICAgIGRhdGFbbmFtZV0gPSBjb21wb25lbnQuc3RhdGUuX3ZhbHVlO1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfS5iaW5kKHRoaXMpLCB7fSk7XG4gIH0sXG5cbiAgc2V0Rm9ybVByaXN0aW5lOiBmdW5jdGlvbiAoaXNQcmlzdGluZSkge1xuICAgIHZhciBpbnB1dHMgPSB0aGlzLmlucHV0cztcbiAgICB2YXIgaW5wdXRLZXlzID0gT2JqZWN0LmtleXMoaW5wdXRzKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGNvbXBvbmVudCBhbmQgc2V0IGl0IGFzIHByaXN0aW5lXG4gICAgLy8gb3IgXCJkaXJ0eVwiLlxuICAgIGlucHV0S2V5cy5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IGlucHV0c1tuYW1lXTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZSh7XG4gICAgICAgIF9pc1ByaXN0aW5lOiBpc1ByaXN0aW5lXG4gICAgICB9KTtcbiAgICB9LmJpbmQodGhpcykpO1xuICB9LFxuXG4gIC8vIFVzZSB0aGUgYmluZGVkIHZhbHVlcyBhbmQgdGhlIGFjdHVhbCBpbnB1dCB2YWx1ZSB0b1xuICAvLyB2YWxpZGF0ZSB0aGUgaW5wdXQgYW5kIHNldCBpdHMgc3RhdGUuIFRoZW4gY2hlY2sgdGhlXG4gIC8vIHN0YXRlIG9mIHRoZSBmb3JtIGl0c2VsZlxuICB2YWxpZGF0ZTogZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuXG4gICAgLy8gVHJpZ2dlciBvbkNoYW5nZVxuICAgIGlmICh0aGlzLnN0YXRlLmNhbkNoYW5nZSkge1xuICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZSh0aGlzLmdldEN1cnJlbnRWYWx1ZXMoKSk7XG4gICAgfVxuXG4gICAgdmFyIGlzVmFsaWQgPSB0cnVlO1xuICAgIGlmIChjb21wb25lbnQudmFsaWRhdGUpIHtcbiAgICAgIGlzVmFsaWQgPSBjb21wb25lbnQudmFsaWRhdGUoKTtcbiAgICB9IGVsc2UgaWYgKGNvbXBvbmVudC5wcm9wcy5yZXF1aXJlZCB8fCBjb21wb25lbnQuX3ZhbGlkYXRpb25zKSB7XG4gICAgICBpc1ZhbGlkID0gdGhpcy5ydW5WYWxpZGF0aW9uKGNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgLy8gUnVuIHRocm91Z2ggdGhlIHZhbGlkYXRpb25zLCBzcGxpdCB0aGVtIHVwIGFuZCBjYWxsXG4gICAgLy8gdGhlIHZhbGlkYXRvciBJRiB0aGVyZSBpcyBhIHZhbHVlIG9yIGl0IGlzIHJlcXVpcmVkXG4gICAgY29tcG9uZW50LnNldFN0YXRlKHtcbiAgICAgIF9pc1ZhbGlkOiBpc1ZhbGlkLFxuICAgICAgX3NlcnZlckVycm9yOiBudWxsXG4gICAgfSwgdGhpcy52YWxpZGF0ZUZvcm0pO1xuXG4gIH0sXG5cbiAgLy8gQ2hlY2tzIHZhbGlkYXRpb24gb24gY3VycmVudCB2YWx1ZSBvciBhIHBhc3NlZCB2YWx1ZVxuICBydW5WYWxpZGF0aW9uOiBmdW5jdGlvbiAoY29tcG9uZW50LCB2YWx1ZSkge1xuXG4gICAgdmFyIGlzVmFsaWQgPSB0cnVlO1xuICAgIFxuICAgIHZhbHVlID0gYXJndW1lbnRzLmxlbmd0aCA9PT0gMiA/IHZhbHVlIDogY29tcG9uZW50LnN0YXRlLl92YWx1ZTtcbiAgICBpZiAoY29tcG9uZW50Ll92YWxpZGF0aW9ucy5sZW5ndGggJiYgKGNvbXBvbmVudC5wcm9wcy5yZXF1aXJlZCB8fCB2YWx1ZSAhPT0gJycpKSB7XG4gICAgICBjb21wb25lbnQuX3ZhbGlkYXRpb25zLnNwbGl0KC9cXCwoPyFbXntcXFtdKlt9XFxdXSkvZykuZm9yRWFjaChmdW5jdGlvbiAodmFsaWRhdGlvbikge1xuICAgICAgICB2YXIgYXJncyA9IHZhbGlkYXRpb24uc3BsaXQoJzonKTtcbiAgICAgICAgdmFyIHZhbGlkYXRlTWV0aG9kID0gYXJncy5zaGlmdCgpO1xuICAgICAgICBhcmdzID0gYXJncy5tYXAoZnVuY3Rpb24gKGFyZykge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShhcmcpO1xuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHJldHVybiBhcmc7IC8vIEl0IGlzIGEgc3RyaW5nIGlmIGl0IGNhbiBub3QgcGFyc2UgaXRcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBhcmdzID0gW3ZhbHVlXS5jb25jYXQoYXJncyk7XG4gICAgICAgIGlmICghdmFsaWRhdGlvblJ1bGVzW3ZhbGlkYXRlTWV0aG9kXSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRm9ybXN5IGRvZXMgbm90IGhhdmUgdGhlIHZhbGlkYXRpb24gcnVsZTogJyArIHZhbGlkYXRlTWV0aG9kKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXZhbGlkYXRpb25SdWxlc1t2YWxpZGF0ZU1ldGhvZF0uYXBwbHkodGhpcy5nZXRDdXJyZW50VmFsdWVzKCksIGFyZ3MpKSB7XG4gICAgICAgICAgaXNWYWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9LmJpbmQodGhpcykpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIGNvbXBvbmVudC5jaGVja1ZhbGlkaXR5ID09PSBcImZ1bmN0aW9uXCIpIHtcbiAgICAgIC8vIHRoZSBjb21wb25lbnQgZGVmaW5lcyBhbiBleHBsaWNpdCBjaGVja1ZhbGlkaXR5IGZ1bmN0aW9uXG4gICAgICBpc1ZhbGlkID0gY29tcG9uZW50LmNoZWNrVmFsaWRpdHkoKVxuICAgIH1cblxuICAgIHJldHVybiBpc1ZhbGlkO1xuICB9LFxuXG4gIC8vIFZhbGlkYXRlIHRoZSBmb3JtIGJ5IGdvaW5nIHRocm91Z2ggYWxsIGNoaWxkIGlucHV0IGNvbXBvbmVudHNcbiAgLy8gYW5kIGNoZWNrIHRoZWlyIHN0YXRlXG4gIHZhbGlkYXRlRm9ybTogZnVuY3Rpb24gKCkge1xuICAgIHZhciBhbGxJc1ZhbGlkID0gdHJ1ZTtcbiAgICB2YXIgaW5wdXRzID0gdGhpcy5pbnB1dHM7XG4gICAgdmFyIGlucHV0S2V5cyA9IE9iamVjdC5rZXlzKGlucHV0cyk7XG5cbiAgICAvLyBXZSBuZWVkIGEgY2FsbGJhY2sgYXMgd2UgYXJlIHZhbGlkYXRpbmcgYWxsIGlucHV0cyBhZ2Fpbi4gVGhpcyB3aWxsXG4gICAgLy8gcnVuIHdoZW4gdGhlIGxhc3QgY29tcG9uZW50IGhhcyBzZXQgaXRzIHN0YXRlXG4gICAgdmFyIG9uVmFsaWRhdGlvbkNvbXBsZXRlID0gZnVuY3Rpb24gKCkge1xuICAgICAgaW5wdXRLZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgICAgaWYgKCFpbnB1dHNbbmFtZV0uc3RhdGUuX2lzVmFsaWQpIHtcbiAgICAgICAgICBhbGxJc1ZhbGlkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0uYmluZCh0aGlzKSk7XG5cbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBpc1ZhbGlkOiBhbGxJc1ZhbGlkXG4gICAgICB9KTtcblxuICAgICAgaWYgKGFsbElzVmFsaWQpIHtcbiAgICAgICAgdGhpcy5wcm9wcy5vblZhbGlkKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnByb3BzLm9uSW52YWxpZCgpO1xuICAgICAgfVxuXG4gICAgICAvLyBUZWxsIHRoZSBmb3JtIHRoYXQgaXQgY2FuIHN0YXJ0IHRvIHRyaWdnZXIgY2hhbmdlIGV2ZW50c1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgIGNhbkNoYW5nZTogdHJ1ZVxuICAgICAgfSk7XG5cbiAgICB9LmJpbmQodGhpcyk7XG5cbiAgICAvLyBSdW4gdmFsaWRhdGlvbiBhZ2FpbiBpbiBjYXNlIGFmZmVjdGVkIGJ5IG90aGVyIGlucHV0cy4gVGhlXG4gICAgLy8gbGFzdCBjb21wb25lbnQgdmFsaWRhdGVkIHdpbGwgcnVuIHRoZSBvblZhbGlkYXRpb25Db21wbGV0ZSBjYWxsYmFja1xuICAgIGlucHV0S2V5cy5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IGlucHV0c1tuYW1lXTtcbiAgICAgIHZhciBpc1ZhbGlkID0gdGhpcy5ydW5WYWxpZGF0aW9uKGNvbXBvbmVudCk7XG4gICAgICBjb21wb25lbnQuc2V0U3RhdGUoe1xuICAgICAgICBfaXNWYWxpZDogaXNWYWxpZCxcbiAgICAgICAgX3NlcnZlckVycm9yOiBudWxsXG4gICAgICB9LCBpbmRleCA9PT0gaW5wdXRLZXlzLmxlbmd0aCAtIDEgPyBvblZhbGlkYXRpb25Db21wbGV0ZSA6IG51bGwpO1xuICAgIH0uYmluZCh0aGlzKSk7XG5cbiAgICAvLyBJZiB0aGVyZSBhcmUgbm8gaW5wdXRzLCBzZXQgc3RhdGUgd2hlcmUgZm9ybSBpcyByZWFkeSB0byB0cmlnZ2VyXG4gICAgLy8gY2hhbmdlIGV2ZW50LiBOZXcgaW5wdXRzIG1pZ2h0IGJlIGFkZGVkIGxhdGVyXG4gICAgaWYgKCFpbnB1dEtleXMubGVuZ3RoICYmIHRoaXMuaXNNb3VudGVkKCkpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBjYW5DaGFuZ2U6IHRydWVcbiAgICAgIH0pO1xuICAgIH1cbiAgfSxcblxuICAvLyBNZXRob2QgcHV0IG9uIGVhY2ggaW5wdXQgY29tcG9uZW50IHRvIHJlZ2lzdGVyXG4gIC8vIGl0c2VsZiB0byB0aGUgZm9ybVxuICBhdHRhY2hUb0Zvcm06IGZ1bmN0aW9uIChjb21wb25lbnQpIHtcbiAgICB0aGlzLmlucHV0c1tjb21wb25lbnQucHJvcHMubmFtZV0gPSBjb21wb25lbnQ7XG4gICAgdGhpcy5tb2RlbFtjb21wb25lbnQucHJvcHMubmFtZV0gPSBjb21wb25lbnQuc3RhdGUuX3ZhbHVlO1xuICAgIHRoaXMudmFsaWRhdGUoY29tcG9uZW50KTtcbiAgfSxcblxuICAvLyBNZXRob2QgcHV0IG9uIGVhY2ggaW5wdXQgY29tcG9uZW50IHRvIHVucmVnaXN0ZXJcbiAgLy8gaXRzZWxmIGZyb20gdGhlIGZvcm1cbiAgZGV0YWNoRnJvbUZvcm06IGZ1bmN0aW9uIChjb21wb25lbnQpIHtcbiAgICBkZWxldGUgdGhpcy5pbnB1dHNbY29tcG9uZW50LnByb3BzLm5hbWVdO1xuICAgIGRlbGV0ZSB0aGlzLm1vZGVsW2NvbXBvbmVudC5wcm9wcy5uYW1lXTtcbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG5cbiAgICByZXR1cm4gUmVhY3QuRE9NLmZvcm0oe1xuICAgICAgICBvblN1Ym1pdDogdGhpcy5zdWJtaXQsXG4gICAgICAgIGNsYXNzTmFtZTogdGhpcy5wcm9wcy5jbGFzc05hbWVcbiAgICAgIH0sXG4gICAgICB0aGlzLnByb3BzLmNoaWxkcmVuXG4gICAgKTtcblxuICB9XG59KTtcblxuaWYgKCFnbG9iYWwuZXhwb3J0cyAmJiAhZ2xvYmFsLm1vZHVsZSAmJiAoIWdsb2JhbC5kZWZpbmUgfHwgIWdsb2JhbC5kZWZpbmUuYW1kKSkge1xuICBnbG9iYWwuRm9ybXN5ID0gRm9ybXN5O1xufVxuXG5tb2R1bGUuZXhwb3J0cyA9IEZvcm1zeTtcblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjbU12YldGcGJpNXFjeUlzSW5OdmRYSmpaWE1pT2xzaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdmJXRnBiaTVxY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFTeEpRVUZKTEV0QlFVc3NSMEZCUnl4TlFVRk5MRU5CUVVNc1MwRkJTeXhKUVVGSkxFOUJRVThzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXp0QlFVTTNReXhKUVVGSkxFMUJRVTBzUjBGQlJ5eEZRVUZGTEVOQlFVTTdRVUZEYUVJc1NVRkJTU3hsUVVGbExFZEJRVWNzVDBGQlR5eERRVUZETEhOQ1FVRnpRaXhEUVVGRExFTkJRVU03UVVGRGRFUXNTVUZCU1N4TFFVRkxMRWRCUVVjc1QwRkJUeXhEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzBGQlEyeERMRWxCUVVrc1MwRkJTeXhIUVVGSExFOUJRVThzUTBGQlF5eFpRVUZaTEVOQlFVTXNRMEZCUXp0QlFVTnNReXhKUVVGSkxFOUJRVThzUjBGQlJ5eEZRVUZGTEVOQlFVTTdPMEZCUldwQ0xFMUJRVTBzUTBGQlF5eExRVUZMTEVkQlFVY3NTMEZCU3l4RFFVRkRPenRCUVVWeVFpeE5RVUZOTEVOQlFVTXNVVUZCVVN4SFFVRkhMRlZCUVZVc1lVRkJZU3hGUVVGRk8wVkJRM3BETEU5QlFVOHNSMEZCUnl4aFFVRmhMRU5CUVVNN1FVRkRNVUlzUTBGQlF5eERRVUZET3p0QlFVVkdMRTFCUVUwc1EwRkJReXhwUWtGQmFVSXNSMEZCUnl4VlFVRlZMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVU3UlVGREwwTXNaVUZCWlN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dEJRVU12UWl4RFFVRkRMRU5CUVVNN08wRkJSVVlzYVVOQlFXbERMRzlDUVVGQk8wVkJReTlDTEdWQlFXVXNSVUZCUlN4WlFVRlpPMGxCUXpOQ0xFOUJRVTg3VFVGRFRDeFBRVUZQTEVWQlFVVXNTVUZCU1R0TlFVTmlMRmxCUVZrc1JVRkJSU3hMUVVGTE8wMUJRMjVDTEZOQlFWTXNSVUZCUlN4TFFVRkxPMHRCUTJwQ0xFTkJRVU03UjBGRFNEdEZRVU5FTEdWQlFXVXNSVUZCUlN4WlFVRlpPMGxCUXpOQ0xFOUJRVTg3VFVGRFRDeFBRVUZQTEVWQlFVVXNSVUZCUlR0TlFVTllMRk5CUVZNc1JVRkJSU3haUVVGWkxFVkJRVVU3VFVGRGVrSXNUMEZCVHl4RlFVRkZMRmxCUVZrc1JVRkJSVHROUVVOMlFpeFJRVUZSTEVWQlFVVXNXVUZCV1N4RlFVRkZPMDFCUTNoQ0xHRkJRV0VzUlVGQlJTeFpRVUZaTEVWQlFVVTdUVUZETjBJc1pVRkJaU3hGUVVGRkxGbEJRVmtzUlVGQlJUdE5RVU12UWl4WFFVRlhMRVZCUVVVc1dVRkJXU3hGUVVGRk8wMUJRek5DTEU5QlFVOHNSVUZCUlN4WlFVRlpMRVZCUVVVN1RVRkRka0lzVTBGQlV5eEZRVUZGTEZsQlFWa3NSVUZCUlR0TlFVTjZRaXhSUVVGUkxFVkJRVVVzV1VGQldTeEZRVUZGTzB0QlEzcENMRU5CUVVNN1FVRkRUaXhIUVVGSE8wRkJRMGc3UVVGRFFUczdSVUZGUlN4clFrRkJhMElzUlVGQlJTeFpRVUZaTzBsQlF6bENMRWxCUVVrc1EwRkJReXhOUVVGTkxFZEJRVWNzUlVGQlJTeERRVUZETzBsQlEycENMRWxCUVVrc1EwRkJReXhMUVVGTExFZEJRVWNzUlVGQlJTeERRVUZETzBsQlEyaENMRWxCUVVrc1EwRkJReXhqUVVGakxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRCUVVNM1F5eEhRVUZIT3p0RlFVVkVMR2xDUVVGcFFpeEZRVUZGTEZsQlFWazdTVUZETjBJc1NVRkJTU3hEUVVGRExGbEJRVmtzUlVGQlJTeERRVUZETzBGQlEzaENMRWRCUVVjN08wVkJSVVFzYlVKQlFXMUNMRVZCUVVVc1dVRkJXVHRCUVVOdVF5eEpRVUZKTEVsQlFVa3NVMEZCVXl4SFFVRkhMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMEZCUXpkRE8wRkJRMEU3TzBGQlJVRXNTVUZCU1N4VlFVRlZMRU5CUVVNc1dVRkJXVHRCUVVNelFqdEJRVU5CT3p0QlFVVkJMRTFCUVUwc1NVRkJTU3hKUVVGSkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVWQlFVVTdPMEZCUlRWQ0xGRkJRVkVzU1VGQlNTeERRVUZETEdOQlFXTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZET3p0UFFVVXhReXhKUVVGSkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVU3VlVGRE9VSXNTVUZCU1N4RFFVRkRMSGRDUVVGM1FpeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1owSkJRV2RDTEVOQlFVTXNRMEZCUXp0QlFVTnlSU3hUUVVGVE96dFJRVVZFTEVsQlFVa3NXVUZCV1N4SFFVRkhMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRPMUZCUXpWRExFbEJRVWtzUzBGQlN5eERRVUZETEZsQlFWa3NRMEZCUXl4VFFVRlRMRVZCUVVVc1dVRkJXU3hEUVVGRExFVkJRVVU3VlVGREwwTXNTVUZCU1N4RFFVRkRMRmxCUVZrc1JVRkJSU3hEUVVGRE8wRkJRemxDTEZOQlFWTTdPMEZCUlZRc1QwRkJUenM3UzBGRlJpeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU55UWl4SFFVRkhPMEZCUTBnN08wVkJSVVVzVFVGQlRTeEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMEZCUXpOQ0xFbEJRVWtzUzBGQlN5eERRVUZETEdOQlFXTXNSVUZCUlN4RFFVRkRPMEZCUXpOQ08wRkJRMEU3UVVGRFFUczdRVUZGUVN4SlFVRkpMRWxCUVVrc1EwRkJReXhsUVVGbExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdRVUZEYUVNN1FVRkRRVHRCUVVOQk96dEpRVVZKTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzUlVGQlJUdE5RVU51UWl4SlFVRkpMRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU03VFVGRGJrSXNTVUZCU1N4TFFVRkxMRWRCUVVjc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeERRVUZETzAxQlF6VkNMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NSVUZCUlN4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFbEJRVWtzUTBGQlF5eHhRa0ZCY1VJc1EwRkJReXhEUVVGRE8wMUJRM2hGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4RFFVRkRMRXRCUVVzc1JVRkJSU3hKUVVGSkxFTkJRVU1zVlVGQlZTeERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU1zUzBGQlN5eEZRVUZGTEVsQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJRenROUVVNelNDeFBRVUZQTzBGQlEySXNTMEZCU3pzN1NVRkZSQ3hKUVVGSkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTTdTVUZEYmtJc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF6dE5RVU5hTEZsQlFWa3NSVUZCUlN4SlFVRkpPMEZCUTNoQ0xFdEJRVXNzUTBGQlF5eERRVUZET3p0QlFVVlFMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRkxFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNTVUZCU1N4RFFVRkRMSEZDUVVGeFFpeERRVUZETEVOQlFVTTdPMEZCUlhSR0xFbEJRVWtzU1VGQlNTeFBRVUZQTEVkQlFVY3NRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1RVRkJUU3hKUVVGSkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4TFFVRkxMRTlCUVU4c1EwRkJReXhQUVVGUExFbEJRVWtzUlVGQlJTeERRVUZET3p0SlFVVjBSeXhKUVVGSkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1NVRkJTU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVkQlFVY3NUVUZCVFN4RFFVRkRPMGxCUTNwSUxFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEhRVUZITEVWQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNWMEZCVnl4SlFVRkpMRTlCUVU4c1EwRkJReXhYUVVGWExFbEJRVWtzVFVGQlRTeEZRVUZGTEU5QlFVOHNRMEZCUXp0UFFVTnNTQ3hKUVVGSkxFTkJRVU1zVlVGQlZTeFJRVUZSTEVWQlFVVTdVVUZEZUVJc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNN1VVRkRMMElzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4WFFVRlhMRVZCUVVVc1EwRkJRenRQUVVNeFFpeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRQUVVOYUxFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRU5CUVVNN1FVRkRPVUlzUjBGQlJ6czdSVUZGUkN4UlFVRlJMRVZCUVVVc1dVRkJXVHRKUVVOd1FpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRPMEZCUXpWRkxFZEJRVWM3UVVGRFNEdEJRVU5CT3p0RlFVVkZMRmRCUVZjc1JVRkJSU3haUVVGWk8wbEJRM1pDTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4VlFVRlZMRWxCUVVrc1JVRkJSVHROUVVNdlF5eEpRVUZKTEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzAxQlEyeERMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03UzBGRE0wTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU5zUWl4SFFVRkhPMEZCUTBnN08wVkJSVVVzVlVGQlZTeEZRVUZGTEZsQlFWazdTVUZEZEVJc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExGVkJRVlVzU1VGQlNTeEZRVUZGTzAxQlF5OURMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNWVUZCVlN4RlFVRkZMRU5CUVVNN1MwRkRhRU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVOa0xFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNRMEZCUXp0QlFVTjRRaXhIUVVGSE96dEZRVVZFTEhkQ1FVRjNRaXhGUVVGRkxGVkJRVlVzVFVGQlRTeEZRVUZGTzB0QlEzcERMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhWUVVGVkxFbEJRVWtzUlVGQlJTeExRVUZMTEVWQlFVVTdUVUZEZGtRc1NVRkJTU3hUUVVGVExFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenROUVVOc1F5eEpRVUZKTEVsQlFVa3NSMEZCUnl4RFFVRkRPMUZCUTFZc1VVRkJVU3hGUVVGRkxFVkJRVVVzU1VGQlNTeEpRVUZKTEUxQlFVMHNRMEZCUXp0UlFVTXpRaXhaUVVGWkxFVkJRVVVzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXp0UFFVTXpRaXhEUVVGRExFTkJRVU03VFVGRFNDeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRXRCUVVzc1EwRkJReXhUUVVGVExFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdTMEZETTBNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTnNRaXhIUVVGSE8wRkJRMGc3UVVGRFFUdEJRVU5CT3p0RlFVVkZMSEZDUVVGeFFpeEZRVUZGTEZWQlFWVXNUVUZCVFN4RlFVRkZPMGxCUTNaRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExGVkJRVlVzU1VGQlNTeEZRVUZGTEV0QlFVc3NSVUZCUlR0QlFVTjJSQ3hOUVVGTkxFbEJRVWtzVTBGQlV5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03TzAxQlJXeERMRWxCUVVrc1EwRkJReXhUUVVGVExFVkJRVVU3VVVGRFpDeE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMR2xIUVVGcFJ5eEhRVUZITEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU53U2l4UFFVRlBPenROUVVWRUxFbEJRVWtzU1VGQlNTeEhRVUZITEVOQlFVTTdVVUZEVml4UlFVRlJMRVZCUVVVc1MwRkJTenRSUVVObUxGbEJRVmtzUlVGQlJTeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRPMDlCUXpOQ0xFTkJRVU1zUTBGQlF6dE5RVU5JTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZCUXp0TFFVTXpReXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTJ4Q0xFZEJRVWM3TzBWQlJVUXNWVUZCVlN4RlFVRkZMRlZCUVZVc1RVRkJUU3hGUVVGRk8wbEJRelZDTEVsQlFVa3NRMEZCUXl4eFFrRkJjVUlzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTnVReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETzAxQlExb3NXVUZCV1N4RlFVRkZMRXRCUVVzN1MwRkRjRUlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdTVUZETTBJc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXp0QlFVTTNRaXhIUVVGSE8wRkJRMGc3UVVGRFFUdEJRVU5CT3p0RlFVVkZMR05CUVdNc1JVRkJSU3hWUVVGVkxGRkJRVkVzUlVGQlJUdEJRVU4wUXl4SlFVRkpMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zVDBGQlR5eERRVUZETEZGQlFWRXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHM3VFVGRmFFUXNTVUZCU1N4TFFVRkxMRWxCUVVrc1MwRkJTeXhEUVVGRExFdEJRVXNzU1VGQlNTeExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1JVRkJSVHRSUVVNMVF5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMR0ZCUVdFc1IwRkJSeXhKUVVGSkxFTkJRVU1zV1VGQldTeERRVUZETzFGQlF6bERMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zWlVGQlpTeEhRVUZITEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNN1VVRkRiRVFzUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRWRCUVVjc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF6dFJRVU4wUXl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExHVkJRV1VzUjBGQlJ5eEpRVUZKTEVOQlFVTXNZMEZCWXl4RFFVRkRPMUZCUTJ4RUxFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4SFFVRkhMRWxCUVVrc1EwRkJReXhoUVVGaExFTkJRVU03UVVGRGRrUXNUMEZCVHpzN1RVRkZSQ3hKUVVGSkxFdEJRVXNzU1VGQlNTeExRVUZMTEVOQlFVTXNTMEZCU3l4SlFVRkpMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeEZRVUZGTzFGQlEyaEVMRWxCUVVrc1EwRkJReXhqUVVGakxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRCUVVOc1JDeFBRVUZQT3p0TFFVVkdMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZEYkVJc1IwRkJSenM3UlVGRlJDeGpRVUZqTEVWQlFVVXNXVUZCV1R0SlFVTXhRaXhQUVVGUExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RFFVRkRPMEZCUXk5Q0xFZEJRVWM3TzBWQlJVUXNaMEpCUVdkQ0xFVkJRVVVzV1VGQldUdEpRVU0xUWl4UFFVRlBMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJReXhWUVVGVkxFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVTdUVUZETTBRc1NVRkJTU3hUUVVGVExFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenROUVVOc1F5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTTdUVUZEY0VNc1QwRkJUeXhKUVVGSkxFTkJRVU03UzBGRFlpeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEJRVU4wUWl4SFFVRkhPenRGUVVWRUxHVkJRV1VzUlVGQlJTeFZRVUZWTEZWQlFWVXNSVUZCUlR0SlFVTnlReXhKUVVGSkxFMUJRVTBzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRPMEZCUXpkQ0xFbEJRVWtzU1VGQlNTeFRRVUZUTEVkQlFVY3NUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEJRVU40UXp0QlFVTkJPenRKUVVWSkxGTkJRVk1zUTBGQlF5eFBRVUZQTEVOQlFVTXNWVUZCVlN4SlFVRkpMRVZCUVVVc1MwRkJTeXhGUVVGRk8wMUJRM1pETEVsQlFVa3NVMEZCVXl4SFFVRkhMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU0zUWl4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRE8xRkJRMnBDTEZkQlFWY3NSVUZCUlN4VlFVRlZPMDlCUTNoQ0xFTkJRVU1zUTBGQlF6dExRVU5LTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRGJFSXNSMEZCUnp0QlFVTklPMEZCUTBFN1FVRkRRVHM3UVVGRlFTeEZRVUZGTEZGQlFWRXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSVHRCUVVOcVF6czdTVUZGU1N4SlFVRkpMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eEZRVUZGTzAxQlEzaENMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4blFrRkJaMElzUlVGQlJTeERRVUZETEVOQlFVTTdRVUZEYmtRc1MwRkJTenM3U1VGRlJDeEpRVUZKTEU5QlFVOHNSMEZCUnl4SlFVRkpMRU5CUVVNN1NVRkRia0lzU1VGQlNTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RlFVRkZPMDFCUTNSQ0xFOUJRVThzUjBGQlJ5eFRRVUZUTEVOQlFVTXNVVUZCVVN4RlFVRkZMRU5CUVVNN1MwRkRhRU1zVFVGQlRTeEpRVUZKTEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hKUVVGSkxGTkJRVk1zUTBGQlF5eFpRVUZaTEVWQlFVVTdUVUZETjBRc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eGhRVUZoTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNN1FVRkRPVU1zUzBGQlN6dEJRVU5NTzBGQlEwRTdPMGxCUlVrc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF6dE5RVU5xUWl4UlFVRlJMRVZCUVVVc1QwRkJUenROUVVOcVFpeFpRVUZaTEVWQlFVVXNTVUZCU1R0QlFVTjRRaXhMUVVGTExFVkJRVVVzU1VGQlNTeERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPenRCUVVVeFFpeEhRVUZITzBGQlEwZzdPMEZCUlVFc1JVRkJSU3hoUVVGaExFVkJRVVVzVlVGQlZTeFRRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZPenRCUVVVM1F5eEpRVUZKTEVsQlFVa3NUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJRenM3U1VGRmJrSXNTMEZCU3l4SFFVRkhMRk5CUVZNc1EwRkJReXhOUVVGTkxFdEJRVXNzUTBGQlF5eEhRVUZITEV0QlFVc3NSMEZCUnl4VFFVRlRMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF6dEpRVU5vUlN4SlFVRkpMRk5CUVZNc1EwRkJReXhaUVVGWkxFTkJRVU1zVFVGQlRTeExRVUZMTEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hKUVVGSkxFdEJRVXNzUzBGQlN5eEZRVUZGTEVOQlFVTXNSVUZCUlR0TlFVTXZSU3hUUVVGVExFTkJRVU1zV1VGQldTeERRVUZETEV0QlFVc3NRMEZCUXl4eFFrRkJjVUlzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4VlFVRlZMRlZCUVZVc1JVRkJSVHRSUVVOb1JpeEpRVUZKTEVsQlFVa3NSMEZCUnl4VlFVRlZMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFGQlEycERMRWxCUVVrc1kwRkJZeXhIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVWQlFVVXNRMEZCUXp0UlFVTnNReXhKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4VlFVRlZMRWRCUVVjc1JVRkJSVHRWUVVNM1FpeEpRVUZKTzFsQlEwWXNUMEZCVHl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFZEJRVWNzUTBGQlF5eERRVUZETzFkQlEzaENMRU5CUVVNc1QwRkJUeXhEUVVGRExFVkJRVVU3V1VGRFZpeFBRVUZQTEVkQlFVY3NRMEZCUXp0WFFVTmFPMU5CUTBZc1EwRkJReXhEUVVGRE8xRkJRMGdzU1VGQlNTeEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzFGQlF6VkNMRWxCUVVrc1EwRkJReXhsUVVGbExFTkJRVU1zWTBGQll5eERRVUZETEVWQlFVVTdWVUZEY0VNc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5dzBRMEZCTkVNc1IwRkJSeXhqUVVGakxFTkJRVU1zUTBGQlF6dFRRVU5vUmp0UlFVTkVMRWxCUVVrc1EwRkJReXhsUVVGbExFTkJRVU1zWTBGQll5eERRVUZETEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RlFVRkZMRWxCUVVrc1EwRkJReXhGUVVGRk8xVkJRM3BGTEU5QlFVOHNSMEZCUnl4TFFVRkxMRU5CUVVNN1UwRkRha0k3VDBGRFJpeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE8wdEJRMlk3UVVGRFRDeEpRVUZKTEVsQlFVa3NUMEZCVHl4VFFVRlRMRU5CUVVNc1lVRkJZU3hMUVVGTExGVkJRVlVzUlVGQlJUczdUVUZGYWtRc1QwRkJUeXhIUVVGSExGTkJRVk1zUTBGQlF5eGhRVUZoTEVWQlFVVTdRVUZEZWtNc1MwRkJTenM3U1VGRlJDeFBRVUZQTEU5QlFVOHNRMEZCUXp0QlFVTnVRaXhIUVVGSE8wRkJRMGc3UVVGRFFUczdSVUZGUlN4WlFVRlpMRVZCUVVVc1dVRkJXVHRKUVVONFFpeEpRVUZKTEZWQlFWVXNSMEZCUnl4SlFVRkpMRU5CUVVNN1NVRkRkRUlzU1VGQlNTeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJRenRCUVVNM1FpeEpRVUZKTEVsQlFVa3NVMEZCVXl4SFFVRkhMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdRVUZEZUVNN1FVRkRRVHM3U1VGRlNTeEpRVUZKTEc5Q1FVRnZRaXhIUVVGSExGbEJRVms3VFVGRGNrTXNVMEZCVXl4RFFVRkRMRTlCUVU4c1EwRkJReXhWUVVGVkxFbEJRVWtzUlVGQlJUdFJRVU5vUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRVZCUVVVN1ZVRkRhRU1zVlVGQlZTeEhRVUZITEV0QlFVc3NRMEZCUXp0VFFVTndRanRCUVVOVUxFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRenM3VFVGRlpDeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMUZCUTFvc1QwRkJUeXhGUVVGRkxGVkJRVlU3UVVGRE0wSXNUMEZCVHl4RFFVRkRMRU5CUVVNN08wMUJSVWdzU1VGQlNTeFZRVUZWTEVWQlFVVTdVVUZEWkN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFOUJRVThzUlVGQlJTeERRVUZETzA5QlEzUkNMRTFCUVUwN1VVRkRUQ3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNSVUZCUlN4RFFVRkRPMEZCUXk5Q0xFOUJRVTg3UVVGRFVEczdUVUZGVFN4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRE8xRkJRMW9zVTBGQlV5eEZRVUZGTEVsQlFVazdRVUZEZGtJc1QwRkJUeXhEUVVGRExFTkJRVU03TzBGQlJWUXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEJRVU5xUWp0QlFVTkJPenRKUVVWSkxGTkJRVk1zUTBGQlF5eFBRVUZQTEVOQlFVTXNWVUZCVlN4SlFVRkpMRVZCUVVVc1MwRkJTeXhGUVVGRk8wMUJRM1pETEVsQlFVa3NVMEZCVXl4SFFVRkhMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU0zUWl4SlFVRkpMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU1zWVVGQllTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRPMDFCUXpWRExGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTTdVVUZEYWtJc1VVRkJVU3hGUVVGRkxFOUJRVTg3VVVGRGFrSXNXVUZCV1N4RlFVRkZMRWxCUVVrN1QwRkRia0lzUlVGQlJTeExRVUZMTEV0QlFVc3NVMEZCVXl4RFFVRkRMRTFCUVUwc1IwRkJSeXhEUVVGRExFZEJRVWNzYjBKQlFXOUNMRWRCUVVjc1NVRkJTU3hEUVVGRExFTkJRVU03UVVGRGRrVXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEyeENPMEZCUTBFN08wbEJSVWtzU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4TlFVRk5MRWxCUVVrc1NVRkJTU3hEUVVGRExGTkJRVk1zUlVGQlJTeEZRVUZGTzAxQlEzcERMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU03VVVGRFdpeFRRVUZUTEVWQlFVVXNTVUZCU1R0UFFVTm9RaXhEUVVGRExFTkJRVU03UzBGRFNqdEJRVU5NTEVkQlFVYzdRVUZEU0R0QlFVTkJPenRGUVVWRkxGbEJRVmtzUlVGQlJTeFZRVUZWTEZOQlFWTXNSVUZCUlR0SlFVTnFReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETzBsQlF6bERMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhUUVVGVExFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTXhSQ3hKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRPMEZCUXpkQ0xFZEJRVWM3UVVGRFNEdEJRVU5CT3p0RlFVVkZMR05CUVdNc1JVRkJSU3hWUVVGVkxGTkJRVk1zUlVGQlJUdEpRVU51UXl4UFFVRlBMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRKUVVONlF5eFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0SFFVTjZRenRCUVVOSUxFVkJRVVVzVFVGQlRTeEZRVUZGTEZsQlFWazdPMGxCUld4Q0xFOUJRVThzUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4SlFVRkpMRU5CUVVNN1VVRkRiRUlzVVVGQlVTeEZRVUZGTEVsQlFVa3NRMEZCUXl4TlFVRk5PMUZCUTNKQ0xGTkJRVk1zUlVGQlJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNN1QwRkRhRU03VFVGRFJDeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRkZCUVZFN1FVRkRla0lzUzBGQlN5eERRVUZET3p0SFFVVklPMEZCUTBnc1EwRkJReXhEUVVGRExFTkJRVU03TzBGQlJVZ3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhQUVVGUExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFMUJRVTBzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExFVkJRVVU3UlVGREwwVXNUVUZCVFN4RFFVRkRMRTFCUVUwc1IwRkJSeXhOUVVGTkxFTkJRVU03UVVGRGVrSXNRMEZCUXpzN1FVRkZSQ3hOUVVGTkxFTkJRVU1zVDBGQlR5eEhRVUZITEUxQlFVMHNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkluWmhjaUJTWldGamRDQTlJR2RzYjJKaGJDNVNaV0ZqZENCOGZDQnlaWEYxYVhKbEtDZHlaV0ZqZENjcE8xeHVkbUZ5SUVadmNtMXplU0E5SUh0OU8xeHVkbUZ5SUhaaGJHbGtZWFJwYjI1U2RXeGxjeUE5SUhKbGNYVnBjbVVvSnk0dmRtRnNhV1JoZEdsdmJsSjFiR1Z6TG1wekp5azdYRzUyWVhJZ2RYUnBiSE1nUFNCeVpYRjFhWEpsS0NjdUwzVjBhV3h6TG1wekp5azdYRzUyWVhJZ1RXbDRhVzRnUFNCeVpYRjFhWEpsS0NjdUwwMXBlR2x1TG1wekp5azdYRzUyWVhJZ2IzQjBhVzl1Y3lBOUlIdDlPMXh1WEc1R2IzSnRjM2t1VFdsNGFXNGdQU0JOYVhocGJqdGNibHh1Um05eWJYTjVMbVJsWm1GMWJIUnpJRDBnWm5WdVkzUnBiMjRnS0hCaGMzTmxaRTl3ZEdsdmJuTXBJSHRjYmlBZ2IzQjBhVzl1Y3lBOUlIQmhjM05sWkU5d2RHbHZibk03WEc1OU8xeHVYRzVHYjNKdGMza3VZV1JrVm1Gc2FXUmhkR2x2YmxKMWJHVWdQU0JtZFc1amRHbHZiaUFvYm1GdFpTd2dablZ1WXlrZ2UxeHVJQ0IyWVd4cFpHRjBhVzl1VW5Wc1pYTmJibUZ0WlYwZ1BTQm1kVzVqTzF4dWZUdGNibHh1Um05eWJYTjVMa1p2Y20wZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUdkbGRFbHVhWFJwWVd4VGRHRjBaVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhKbGRIVnliaUI3WEc0Z0lDQWdJQ0JwYzFaaGJHbGtPaUIwY25WbExGeHVJQ0FnSUNBZ2FYTlRkV0p0YVhSMGFXNW5PaUJtWVd4elpTeGNiaUFnSUNBZ0lHTmhia05vWVc1blpUb2dabUZzYzJWY2JpQWdJQ0I5TzF4dUlDQjlMRnh1SUNCblpYUkVaV1poZFd4MFVISnZjSE02SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnYUdWaFpHVnljem9nZTMwc1hHNGdJQ0FnSUNCdmJsTjFZMk5sYzNNNklHWjFibU4wYVc5dUlDZ3BJSHQ5TEZ4dUlDQWdJQ0FnYjI1RmNuSnZjam9nWm5WdVkzUnBiMjRnS0NrZ2UzMHNYRzRnSUNBZ0lDQnZibE4xWW0xcGREb2dablZ1WTNScGIyNGdLQ2tnZTMwc1hHNGdJQ0FnSUNCdmJsWmhiR2xrVTNWaWJXbDBPaUJtZFc1amRHbHZiaUFvS1NCN2ZTeGNiaUFnSUNBZ0lHOXVTVzUyWVd4cFpGTjFZbTFwZERvZ1puVnVZM1JwYjI0Z0tDa2dlMzBzWEc0Z0lDQWdJQ0J2YmxOMVltMXBkSFJsWkRvZ1puVnVZM1JwYjI0Z0tDa2dlMzBzWEc0Z0lDQWdJQ0J2YmxaaGJHbGtPaUJtZFc1amRHbHZiaUFvS1NCN2ZTeGNiaUFnSUNBZ0lHOXVTVzUyWVd4cFpEb2dablZ1WTNScGIyNGdLQ2tnZTMwc1hHNGdJQ0FnSUNCdmJrTm9ZVzVuWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMzFjYmlBZ0lDQjlPMXh1SUNCOUxGeHVYRzRnSUM4dklFRmtaQ0JoSUcxaGNDQjBieUJ6ZEc5eVpTQjBhR1VnYVc1d2RYUnpJRzltSUhSb1pTQm1iM0p0TENCaElHMXZaR1ZzSUhSdklITjBiM0psWEc0Z0lDOHZJSFJvWlNCMllXeDFaWE1nYjJZZ2RHaGxJR1p2Y20wZ1lXNWtJSEpsWjJsemRHVnlJR05vYVd4a0lHbHVjSFYwYzF4dUlDQmpiMjF3YjI1bGJuUlhhV3hzVFc5MWJuUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0IwYUdsekxtbHVjSFYwY3lBOUlIdDlPMXh1SUNBZ0lIUm9hWE11Ylc5a1pXd2dQU0I3ZlR0Y2JpQWdJQ0IwYUdsekxuSmxaMmx6ZEdWeVNXNXdkWFJ6S0hSb2FYTXVjSEp2Y0hNdVkyaHBiR1J5Wlc0cE8xeHVJQ0I5TEZ4dVhHNGdJR052YlhCdmJtVnVkRVJwWkUxdmRXNTBPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnZEdocGN5NTJZV3hwWkdGMFpVWnZjbTBvS1R0Y2JpQWdmU3hjYmx4dUlDQmpiMjF3YjI1bGJuUlhhV3hzVlhCa1lYUmxPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnZG1GeUlHbHVjSFYwUzJWNWN5QTlJRTlpYW1WamRDNXJaWGx6S0hSb2FYTXVhVzV3ZFhSektUdGNibHh1SUNBZ0lDOHZJRlJvWlNCMWNHUmhkR1ZrSUdOb2FXeGtjbVZ1SUdGeWNtRjVJR2x6SUc1dmRDQmhkbUZwYkdGaWJHVWdhR1Z5WlNCbWIzSWdjMjl0WlNCeVpXRnpiMjRzWEc0Z0lDQWdMeThnZDJVZ2JtVmxaQ0IwYnlCM1lXbDBJR1p2Y2lCdVpYaDBJR1YyWlc1MElHeHZiM0JjYmlBZ0lDQnpaWFJVYVcxbGIzVjBLR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0FnSUNBZ0x5OGdWR2hsSUdOdmJYQnZibVZ1ZENCdGFXZG9kQ0JvWVhabElHSmxaVzRnZFc1dGIzVnVkR1ZrSUc5dUlHRnVYRzRnSUNBZ0lDQXZMeUIxY0dSaGRHVmNiaUFnSUNBZ0lHbG1JQ2gwYUdsekxtbHpUVzkxYm5SbFpDZ3BLU0I3WEc1Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV5WldkcGMzUmxja2x1Y0hWMGN5aDBhR2x6TG5CeWIzQnpMbU5vYVd4a2NtVnVLVHRjYmx4dUlDQWdJQ0FnSUdsbUlDaDBhR2x6TG5CeWIzQnpMblpoYkdsa1lYUnBiMjVGY25KdmNuTXBJSHRjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMbk5sZEVsdWNIVjBWbUZzYVdSaGRHbHZia1Z5Y205eWN5aDBhR2x6TG5CeWIzQnpMblpoYkdsa1lYUnBiMjVGY25KdmNuTXBPMXh1SUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ2RtRnlJRzVsZDBsdWNIVjBTMlY1Y3lBOUlFOWlhbVZqZEM1clpYbHpLSFJvYVhNdWFXNXdkWFJ6S1R0Y2JpQWdJQ0FnSUNBZ2FXWWdLSFYwYVd4ekxtRnljbUY1YzBScFptWmxjaWhwYm5CMWRFdGxlWE1zSUc1bGQwbHVjSFYwUzJWNWN5a3BJSHRjYmlBZ0lDQWdJQ0FnSUNCMGFHbHpMblpoYkdsa1lYUmxSbTl5YlNncE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJSDB1WW1sdVpDaDBhR2x6S1N3Z01DazdYRzRnSUgwc1hHNWNiaUFnTHk4Z1ZYQmtZWFJsSUcxdlpHVnNMQ0J6ZFdKdGFYUWdkRzhnZFhKc0lIQnliM0FnWVc1a0lITmxibVFnZEdobElHMXZaR1ZzWEc0Z0lITjFZbTFwZERvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnWlhabGJuUXVjSEpsZG1WdWRFUmxabUYxYkhRb0tUdGNibHh1SUNBZ0lDOHZJRlJ5YVdkblpYSWdabTl5YlNCaGN5QnViM1FnY0hKcGMzUnBibVV1WEc0Z0lDQWdMeThnU1dZZ1lXNTVJR2x1Y0hWMGN5Qm9ZWFpsSUc1dmRDQmlaV1Z1SUhSdmRXTm9aV1FnZVdWMElIUm9hWE1nZDJsc2JDQnRZV3RsSUhSb1pXMGdaR2x5ZEhsY2JpQWdJQ0F2THlCemJ5QjJZV3hwWkdGMGFXOXVJR0psWTI5dFpYTWdkbWx6YVdKc1pTQW9hV1lnWW1GelpXUWdiMjRnYVhOUWNtbHpkR2x1WlNsY2JpQWdJQ0IwYUdsekxuTmxkRVp2Y20xUWNtbHpkR2x1WlNobVlXeHpaU2s3WEc1Y2JpQWdJQ0F2THlCVWJ5QnpkWEJ3YjNKMElIVnpaU0JqWVhObGN5QjNhR1Z5WlNCdWJ5QmhjM2x1WXlCdmNpQnlaWEYxWlhOMElHOXdaWEpoZEdsdmJpQnBjeUJ1WldWa1pXUXVYRzRnSUNBZ0x5OGdWR2hsSUZ3aWIyNVRkV0p0YVhSY0lpQmpZV3hzWW1GamF5QnBjeUJqWVd4c1pXUWdkMmwwYUNCMGFHVWdiVzlrWld3Z1pTNW5MaUI3Wm1sbGJHUk9ZVzFsT2lCY0ltMTVWbUZzZFdWY0luMHNYRzRnSUNBZ0x5OGdhV1lnZDJGdWRHbHVaeUIwYnlCeVpYTmxkQ0IwYUdVZ1pXNTBhWEpsSUdadmNtMGdkRzhnYjNKcFoybHVZV3dnYzNSaGRHVXNJSFJvWlNCelpXTnZibVFnY0dGeVlXMGdhWE1nWVNCallXeHNZbUZqYXlCbWIzSWdkR2hwY3k1Y2JpQWdJQ0JwWmlBb0lYUm9hWE11Y0hKdmNITXVkWEpzS1NCN1hHNGdJQ0FnSUNCMGFHbHpMblZ3WkdGMFpVMXZaR1ZzS0NrN1hHNGdJQ0FnSUNCMllYSWdiVzlrWld3Z1BTQjBhR2x6TG0xaGNFMXZaR1ZzS0NrN1hHNGdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxtOXVVM1ZpYldsMEtHMXZaR1ZzTENCMGFHbHpMbkpsYzJWMFRXOWtaV3dzSUhSb2FYTXVkWEJrWVhSbFNXNXdkWFJ6VjJsMGFFVnljbTl5S1R0Y2JpQWdJQ0FnSUhSb2FYTXVjM1JoZEdVdWFYTldZV3hwWkNBL0lIUm9hWE11Y0hKdmNITXViMjVXWVd4cFpGTjFZbTFwZENodGIyUmxiQ3dnZEdocGN5NXlaWE5sZEUxdlpHVnNLU0E2SUhSb2FYTXVjSEp2Y0hNdWIyNUpiblpoYkdsa1UzVmliV2wwS0cxdlpHVnNMQ0IwYUdsekxuSmxjMlYwVFc5a1pXd3BPMXh1SUNBZ0lDQWdjbVYwZFhKdU8xeHVJQ0FnSUgxY2JseHVJQ0FnSUhSb2FYTXVkWEJrWVhSbFRXOWtaV3dvS1R0Y2JpQWdJQ0IwYUdsekxuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lHbHpVM1ZpYldsMGRHbHVaem9nZEhKMVpWeHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2RHaHBjeTV3Y205d2N5NXZibE4xWW0xcGRDaDBhR2x6TG0xaGNFMXZaR1ZzS0Nrc0lIUm9hWE11Y21WelpYUk5iMlJsYkN3Z2RHaHBjeTUxY0dSaGRHVkpibkIxZEhOWGFYUm9SWEp5YjNJcE8xeHVYRzRnSUNBZ2RtRnlJR2hsWVdSbGNuTWdQU0FvVDJKcVpXTjBMbXRsZVhNb2RHaHBjeTV3Y205d2N5NW9aV0ZrWlhKektTNXNaVzVuZEdnZ0ppWWdkR2hwY3k1d2NtOXdjeTVvWldGa1pYSnpLU0I4ZkNCdmNIUnBiMjV6TG1obFlXUmxjbk1nZkh3Z2UzMDdYRzVjYmlBZ0lDQjJZWElnYldWMGFHOWtJRDBnZEdocGN5NXdjbTl3Y3k1dFpYUm9iMlFnSmlZZ2RYUnBiSE11WVdwaGVGdDBhR2x6TG5CeWIzQnpMbTFsZEdodlpDNTBiMHh2ZDJWeVEyRnpaU2dwWFNBL0lIUm9hWE11Y0hKdmNITXViV1YwYUc5a0xuUnZURzkzWlhKRFlYTmxLQ2tnT2lBbmNHOXpkQ2M3WEc0Z0lDQWdkWFJwYkhNdVlXcGhlRnR0WlhSb2IyUmRLSFJvYVhNdWNISnZjSE11ZFhKc0xDQjBhR2x6TG0xaGNFMXZaR1ZzS0Nrc0lIUm9hWE11Y0hKdmNITXVZMjl1ZEdWdWRGUjVjR1VnZkh3Z2IzQjBhVzl1Y3k1amIyNTBaVzUwVkhsd1pTQjhmQ0FuYW5OdmJpY3NJR2hsWVdSbGNuTXBYRzRnSUNBZ0lDQXVkR2hsYmlobWRXNWpkR2x2YmlBb2NtVnpjRzl1YzJVcElIdGNiaUFnSUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTV2YmxOMVkyTmxjM01vY21WemNHOXVjMlVwTzF4dUlDQWdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxtOXVVM1ZpYldsMGRHVmtLQ2s3WEc0Z0lDQWdJQ0I5TG1KcGJtUW9kR2hwY3lrcFhHNGdJQ0FnSUNBdVkyRjBZMmdvZEdocGN5NW1ZV2xzVTNWaWJXbDBLVHRjYmlBZ2ZTeGNibHh1SUNCdFlYQk5iMlJsYkRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCMGFHbHpMbkJ5YjNCekxtMWhjSEJwYm1jZ1B5QjBhR2x6TG5CeWIzQnpMbTFoY0hCcGJtY29kR2hwY3k1dGIyUmxiQ2tnT2lCMGFHbHpMbTF2WkdWc08xeHVJQ0I5TEZ4dVhHNGdJQzh2SUVkdlpYTWdkR2h5YjNWbmFDQmhiR3dnY21WbmFYTjBaWEpsWkNCamIyMXdiMjVsYm5SeklHRnVaRnh1SUNBdkx5QjFjR1JoZEdWeklIUm9aU0J0YjJSbGJDQjJZV3gxWlhOY2JpQWdkWEJrWVhSbFRXOWtaV3c2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCUFltcGxZM1F1YTJWNWN5aDBhR2x6TG1sdWNIVjBjeWt1Wm05eVJXRmphQ2htZFc1amRHbHZiaUFvYm1GdFpTa2dlMXh1SUNBZ0lDQWdkbUZ5SUdOdmJYQnZibVZ1ZENBOUlIUm9hWE11YVc1d2RYUnpXMjVoYldWZE8xeHVJQ0FnSUNBZ2RHaHBjeTV0YjJSbGJGdHVZVzFsWFNBOUlHTnZiWEJ2Ym1WdWRDNXpkR0YwWlM1ZmRtRnNkV1U3WEc0Z0lDQWdmUzVpYVc1a0tIUm9hWE1wS1R0Y2JpQWdmU3hjYmx4dUlDQXZMeUJTWlhObGRDQmxZV05vSUd0bGVTQnBiaUIwYUdVZ2JXOWtaV3dnZEc4Z2RHaGxJRzl5YVdkcGJtRnNJQzhnYVc1cGRHbGhiQ0IyWVd4MVpWeHVJQ0J5WlhObGRFMXZaR1ZzT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ1QySnFaV04wTG10bGVYTW9kR2hwY3k1cGJuQjFkSE1wTG1admNrVmhZMmdvWm5WdVkzUnBiMjRnS0c1aGJXVXBJSHRjYmlBZ0lDQWdJSFJvYVhNdWFXNXdkWFJ6VzI1aGJXVmRMbkpsYzJWMFZtRnNkV1VvS1R0Y2JpQWdJQ0I5TG1KcGJtUW9kR2hwY3lrcE8xeHVJQ0FnSUhSb2FYTXVkbUZzYVdSaGRHVkdiM0p0S0NrN1hHNGdJSDBzWEc1Y2JpQWdjMlYwU1c1d2RYUldZV3hwWkdGMGFXOXVSWEp5YjNKek9pQm1kVzVqZEdsdmJpQW9aWEp5YjNKektTQjdYRzRnSUNBZ0lFOWlhbVZqZEM1clpYbHpLSFJvYVhNdWFXNXdkWFJ6S1M1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNodVlXMWxMQ0JwYm1SbGVDa2dlMXh1SUNBZ0lDQWdkbUZ5SUdOdmJYQnZibVZ1ZENBOUlIUm9hWE11YVc1d2RYUnpXMjVoYldWZE8xeHVJQ0FnSUNBZ2RtRnlJR0Z5WjNNZ1BTQmJlMXh1SUNBZ0lDQWdJQ0JmYVhOV1lXeHBaRG9nSVNodVlXMWxJR2x1SUdWeWNtOXljeWtzWEc0Z0lDQWdJQ0FnSUY5elpYSjJaWEpGY25KdmNqb2daWEp5YjNKelcyNWhiV1ZkWEc0Z0lDQWdJQ0I5WFR0Y2JpQWdJQ0FnSUdOdmJYQnZibVZ1ZEM1elpYUlRkR0YwWlM1aGNIQnNlU2hqYjIxd2IyNWxiblFzSUdGeVozTXBPMXh1SUNBZ0lIMHVZbWx1WkNoMGFHbHpLU2s3SUNBZ1hHNGdJSDBzWEc1Y2JpQWdMeThnUjI4Z2RHaHliM1ZuYUNCbGNuSnZjbk1nWm5KdmJTQnpaWEoyWlhJZ1lXNWtJR2R5WVdJZ2RHaGxJR052YlhCdmJtVnVkSE5jYmlBZ0x5OGdjM1J2Y21Wa0lHbHVJSFJvWlNCcGJuQjFkSE1nYldGd0xpQkRhR0Z1WjJVZ2RHaGxhWElnYzNSaGRHVWdkRzhnYVc1MllXeHBaRnh1SUNBdkx5QmhibVFnYzJWMElIUm9aU0J6WlhKMlpYSkZjbkp2Y2lCdFpYTnpZV2RsWEc0Z0lIVndaR0YwWlVsdWNIVjBjMWRwZEdoRmNuSnZjam9nWm5WdVkzUnBiMjRnS0dWeWNtOXljeWtnZTF4dUlDQWdJRTlpYW1WamRDNXJaWGx6S0dWeWNtOXljeWt1Wm05eVJXRmphQ2htZFc1amRHbHZiaUFvYm1GdFpTd2dhVzVrWlhncElIdGNiaUFnSUNBZ0lIWmhjaUJqYjIxd2IyNWxiblFnUFNCMGFHbHpMbWx1Y0hWMGMxdHVZVzFsWFR0Y2JseHVJQ0FnSUNBZ2FXWWdLQ0ZqYjIxd2IyNWxiblFwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFVnljbTl5S0NkWmIzVWdZWEpsSUhSeWVXbHVaeUIwYnlCMWNHUmhkR1VnWVc0Z2FXNXdkWFFnZEdoaGRDQmtiMlZ6SUc1dmRDQmxlR2x6ZEhNdUlGWmxjbWxtZVNCbGNuSnZjbk1nYjJKcVpXTjBJSGRwZEdnZ2FXNXdkWFFnYm1GdFpYTXVJQ2NnS3lCS1UwOU9Mbk4wY21sdVoybG1lU2hsY25KdmNuTXBLVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnZG1GeUlHRnlaM01nUFNCYmUxeHVJQ0FnSUNBZ0lDQmZhWE5XWVd4cFpEb2dabUZzYzJVc1hHNGdJQ0FnSUNBZ0lGOXpaWEoyWlhKRmNuSnZjam9nWlhKeWIzSnpXMjVoYldWZFhHNGdJQ0FnSUNCOVhUdGNiaUFnSUNBZ0lHTnZiWEJ2Ym1WdWRDNXpaWFJUZEdGMFpTNWhjSEJzZVNoamIyMXdiMjVsYm5Rc0lHRnlaM01wTzF4dUlDQWdJSDB1WW1sdVpDaDBhR2x6S1NrN1hHNGdJSDBzWEc1Y2JpQWdabUZwYkZOMVltMXBkRG9nWm5WdVkzUnBiMjRnS0dWeWNtOXljeWtnZTF4dUlDQWdJSFJvYVhNdWRYQmtZWFJsU1c1d2RYUnpWMmwwYUVWeWNtOXlLR1Z5Y205eWN5azdYRzRnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0JwYzFOMVltMXBkSFJwYm1jNklHWmhiSE5sWEc0Z0lDQWdmU2s3WEc0Z0lDQWdkR2hwY3k1d2NtOXdjeTV2YmtWeWNtOXlLR1Z5Y205eWN5azdYRzRnSUNBZ2RHaHBjeTV3Y205d2N5NXZibE4xWW0xcGRIUmxaQ2dwTzF4dUlDQjlMRnh1WEc0Z0lDOHZJRlJ5WVhabGNuTmxJSFJvWlNCamFHbHNaSEpsYmlCaGJtUWdZMmhwYkdSeVpXNGdiMllnWTJocGJHUnlaVzRnZEc4Z1ptbHVaRnh1SUNBdkx5QmhiR3dnYVc1d2RYUnpJR0o1SUdOb1pXTnJhVzVuSUhSb1pTQnVZVzFsSUhCeWIzQXVJRTFoZVdKbElHUnZJR0VnWW1WMGRHVnlYRzRnSUM4dklHTm9aV05ySUdobGNtVmNiaUFnY21WbmFYTjBaWEpKYm5CMWRITTZJR1oxYm1OMGFXOXVJQ2hqYUdsc1pISmxiaWtnZTF4dUlDQWdJRkpsWVdOMExrTm9hV3hrY21WdUxtWnZja1ZoWTJnb1kyaHBiR1J5Wlc0c0lHWjFibU4wYVc5dUlDaGphR2xzWkNrZ2UxeHVYRzRnSUNBZ0lDQnBaaUFvWTJocGJHUWdKaVlnWTJocGJHUXVjSEp2Y0hNZ0ppWWdZMmhwYkdRdWNISnZjSE11Ym1GdFpTa2dlMXh1SUNBZ0lDQWdJQ0JqYUdsc1pDNXdjbTl3Y3k1ZllYUjBZV05vVkc5R2IzSnRJRDBnZEdocGN5NWhkSFJoWTJoVWIwWnZjbTA3WEc0Z0lDQWdJQ0FnSUdOb2FXeGtMbkJ5YjNCekxsOWtaWFJoWTJoR2NtOXRSbTl5YlNBOUlIUm9hWE11WkdWMFlXTm9Sbkp2YlVadmNtMDdYRzRnSUNBZ0lDQWdJR05vYVd4a0xuQnliM0J6TGw5MllXeHBaR0YwWlNBOUlIUm9hWE11ZG1Gc2FXUmhkR1U3WEc0Z0lDQWdJQ0FnSUdOb2FXeGtMbkJ5YjNCekxsOXBjMFp2Y20xRWFYTmhZbXhsWkNBOUlIUm9hWE11YVhOR2IzSnRSR2x6WVdKc1pXUTdYRzRnSUNBZ0lDQWdJR05vYVd4a0xuQnliM0J6TGw5cGMxWmhiR2xrVm1Gc2RXVWdQU0IwYUdsekxuSjFibFpoYkdsa1lYUnBiMjQ3WEc0Z0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUdsbUlDaGphR2xzWkNBbUppQmphR2xzWkM1d2NtOXdjeUFtSmlCamFHbHNaQzV3Y205d2N5NWphR2xzWkhKbGJpa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuSmxaMmx6ZEdWeVNXNXdkWFJ6S0dOb2FXeGtMbkJ5YjNCekxtTm9hV3hrY21WdUtUdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lIMHVZbWx1WkNoMGFHbHpLU2s3WEc0Z0lIMHNYRzVjYmlBZ2FYTkdiM0p0UkdsellXSnNaV1E2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXdjbTl3Y3k1a2FYTmhZbXhsWkR0Y2JpQWdmU3hjYmx4dUlDQm5aWFJEZFhKeVpXNTBWbUZzZFdWek9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlFOWlhbVZqZEM1clpYbHpLSFJvYVhNdWFXNXdkWFJ6S1M1eVpXUjFZMlVvWm5WdVkzUnBiMjRnS0dSaGRHRXNJRzVoYldVcElIdGNiaUFnSUNBZ0lIWmhjaUJqYjIxd2IyNWxiblFnUFNCMGFHbHpMbWx1Y0hWMGMxdHVZVzFsWFR0Y2JpQWdJQ0FnSUdSaGRHRmJibUZ0WlYwZ1BTQmpiMjF3YjI1bGJuUXVjM1JoZEdVdVgzWmhiSFZsTzF4dUlDQWdJQ0FnY21WMGRYSnVJR1JoZEdFN1hHNGdJQ0FnZlM1aWFXNWtLSFJvYVhNcExDQjdmU2s3WEc0Z0lIMHNYRzVjYmlBZ2MyVjBSbTl5YlZCeWFYTjBhVzVsT2lCbWRXNWpkR2x2YmlBb2FYTlFjbWx6ZEdsdVpTa2dlMXh1SUNBZ0lIWmhjaUJwYm5CMWRITWdQU0IwYUdsekxtbHVjSFYwY3p0Y2JpQWdJQ0IyWVhJZ2FXNXdkWFJMWlhseklEMGdUMkpxWldOMExtdGxlWE1vYVc1d2RYUnpLVHRjYmx4dUlDQWdJQzh2SUVsMFpYSmhkR1VnZEdoeWIzVm5hQ0JsWVdOb0lHTnZiWEJ2Ym1WdWRDQmhibVFnYzJWMElHbDBJR0Z6SUhCeWFYTjBhVzVsWEc0Z0lDQWdMeThnYjNJZ1hDSmthWEowZVZ3aUxseHVJQ0FnSUdsdWNIVjBTMlY1Y3k1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNodVlXMWxMQ0JwYm1SbGVDa2dlMXh1SUNBZ0lDQWdkbUZ5SUdOdmJYQnZibVZ1ZENBOUlHbHVjSFYwYzF0dVlXMWxYVHRjYmlBZ0lDQWdJR052YlhCdmJtVnVkQzV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0FnSUY5cGMxQnlhWE4wYVc1bE9pQnBjMUJ5YVhOMGFXNWxYRzRnSUNBZ0lDQjlLVHRjYmlBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtwTzF4dUlDQjlMRnh1WEc0Z0lDOHZJRlZ6WlNCMGFHVWdZbWx1WkdWa0lIWmhiSFZsY3lCaGJtUWdkR2hsSUdGamRIVmhiQ0JwYm5CMWRDQjJZV3gxWlNCMGIxeHVJQ0F2THlCMllXeHBaR0YwWlNCMGFHVWdhVzV3ZFhRZ1lXNWtJSE5sZENCcGRITWdjM1JoZEdVdUlGUm9aVzRnWTJobFkyc2dkR2hsWEc0Z0lDOHZJSE4wWVhSbElHOW1JSFJvWlNCbWIzSnRJR2wwYzJWc1pseHVJQ0IyWVd4cFpHRjBaVG9nWm5WdVkzUnBiMjRnS0dOdmJYQnZibVZ1ZENrZ2UxeHVYRzRnSUNBZ0x5OGdWSEpwWjJkbGNpQnZia05vWVc1blpWeHVJQ0FnSUdsbUlDaDBhR2x6TG5OMFlYUmxMbU5oYmtOb1lXNW5aU2tnZTF4dUlDQWdJQ0FnZEdocGN5NXdjbTl3Y3k1dmJrTm9ZVzVuWlNoMGFHbHpMbWRsZEVOMWNuSmxiblJXWVd4MVpYTW9LU2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdkbUZ5SUdselZtRnNhV1FnUFNCMGNuVmxPMXh1SUNBZ0lHbG1JQ2hqYjIxd2IyNWxiblF1ZG1Gc2FXUmhkR1VwSUh0Y2JpQWdJQ0FnSUdselZtRnNhV1FnUFNCamIyMXdiMjVsYm5RdWRtRnNhV1JoZEdVb0tUdGNiaUFnSUNCOUlHVnNjMlVnYVdZZ0tHTnZiWEJ2Ym1WdWRDNXdjbTl3Y3k1eVpYRjFhWEpsWkNCOGZDQmpiMjF3YjI1bGJuUXVYM1poYkdsa1lYUnBiMjV6S1NCN1hHNGdJQ0FnSUNCcGMxWmhiR2xrSUQwZ2RHaHBjeTV5ZFc1V1lXeHBaR0YwYVc5dUtHTnZiWEJ2Ym1WdWRDazdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ0x5OGdVblZ1SUhSb2NtOTFaMmdnZEdobElIWmhiR2xrWVhScGIyNXpMQ0J6Y0d4cGRDQjBhR1Z0SUhWd0lHRnVaQ0JqWVd4c1hHNGdJQ0FnTHk4Z2RHaGxJSFpoYkdsa1lYUnZjaUJKUmlCMGFHVnlaU0JwY3lCaElIWmhiSFZsSUc5eUlHbDBJR2x6SUhKbGNYVnBjbVZrWEc0Z0lDQWdZMjl0Y0c5dVpXNTBMbk5sZEZOMFlYUmxLSHRjYmlBZ0lDQWdJRjlwYzFaaGJHbGtPaUJwYzFaaGJHbGtMRnh1SUNBZ0lDQWdYM05sY25abGNrVnljbTl5T2lCdWRXeHNYRzRnSUNBZ2ZTd2dkR2hwY3k1MllXeHBaR0YwWlVadmNtMHBPMXh1WEc0Z0lIMHNYRzVjYmlBZ0x5OGdRMmhsWTJ0eklIWmhiR2xrWVhScGIyNGdiMjRnWTNWeWNtVnVkQ0IyWVd4MVpTQnZjaUJoSUhCaGMzTmxaQ0IyWVd4MVpWeHVJQ0J5ZFc1V1lXeHBaR0YwYVc5dU9pQm1kVzVqZEdsdmJpQW9ZMjl0Y0c5dVpXNTBMQ0IyWVd4MVpTa2dlMXh1WEc0Z0lDQWdkbUZ5SUdselZtRnNhV1FnUFNCMGNuVmxPMXh1SUNBZ0lGeHVJQ0FnSUhaaGJIVmxJRDBnWVhKbmRXMWxiblJ6TG14bGJtZDBhQ0E5UFQwZ01pQS9JSFpoYkhWbElEb2dZMjl0Y0c5dVpXNTBMbk4wWVhSbExsOTJZV3gxWlR0Y2JpQWdJQ0JwWmlBb1kyOXRjRzl1Wlc1MExsOTJZV3hwWkdGMGFXOXVjeTVzWlc1bmRHZ2dKaVlnS0dOdmJYQnZibVZ1ZEM1d2NtOXdjeTV5WlhGMWFYSmxaQ0I4ZkNCMllXeDFaU0FoUFQwZ0p5Y3BLU0I3WEc0Z0lDQWdJQ0JqYjIxd2IyNWxiblF1WDNaaGJHbGtZWFJwYjI1ekxuTndiR2wwS0M5Y1hDd29QeUZiWG50Y1hGdGRLbHQ5WEZ4ZFhTa3ZaeWt1Wm05eVJXRmphQ2htZFc1amRHbHZiaUFvZG1Gc2FXUmhkR2x2YmlrZ2UxeHVJQ0FnSUNBZ0lDQjJZWElnWVhKbmN5QTlJSFpoYkdsa1lYUnBiMjR1YzNCc2FYUW9Kem9uS1R0Y2JpQWdJQ0FnSUNBZ2RtRnlJSFpoYkdsa1lYUmxUV1YwYUc5a0lEMGdZWEpuY3k1emFHbG1kQ2dwTzF4dUlDQWdJQ0FnSUNCaGNtZHpJRDBnWVhKbmN5NXRZWEFvWm5WdVkzUnBiMjRnS0dGeVp5a2dlMXh1SUNBZ0lDQWdJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnU2xOUFRpNXdZWEp6WlNoaGNtY3BPMXh1SUNBZ0lDQWdJQ0FnSUgwZ1kyRjBZMmdnS0dVcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUJoY21jN0lDOHZJRWwwSUdseklHRWdjM1J5YVc1bklHbG1JR2wwSUdOaGJpQnViM1FnY0dGeWMyVWdhWFJjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdJQ0JoY21keklEMGdXM1poYkhWbFhTNWpiMjVqWVhRb1lYSm5jeWs3WEc0Z0lDQWdJQ0FnSUdsbUlDZ2hkbUZzYVdSaGRHbHZibEoxYkdWelczWmhiR2xrWVhSbFRXVjBhRzlrWFNrZ2UxeHVJQ0FnSUNBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpZ25SbTl5YlhONUlHUnZaWE1nYm05MElHaGhkbVVnZEdobElIWmhiR2xrWVhScGIyNGdjblZzWlRvZ0p5QXJJSFpoYkdsa1lYUmxUV1YwYUc5a0tUdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0JwWmlBb0lYWmhiR2xrWVhScGIyNVNkV3hsYzF0MllXeHBaR0YwWlUxbGRHaHZaRjB1WVhCd2JIa29kR2hwY3k1blpYUkRkWEp5Wlc1MFZtRnNkV1Z6S0Nrc0lHRnlaM01wS1NCN1hHNGdJQ0FnSUNBZ0lDQWdhWE5XWVd4cFpDQTlJR1poYkhObE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtwTzF4dUlDQWdJSDFjYmlBZ0lDQnBaaUFvZEhsd1pXOW1JR052YlhCdmJtVnVkQzVqYUdWamExWmhiR2xrYVhSNUlEMDlQU0JjSW1aMWJtTjBhVzl1WENJcElIdGNiaUFnSUNBZ0lDOHZJSFJvWlNCamIyMXdiMjVsYm5RZ1pHVm1hVzVsY3lCaGJpQmxlSEJzYVdOcGRDQmphR1ZqYTFaaGJHbGthWFI1SUdaMWJtTjBhVzl1WEc0Z0lDQWdJQ0JwYzFaaGJHbGtJRDBnWTI5dGNHOXVaVzUwTG1Ob1pXTnJWbUZzYVdScGRIa29LVnh1SUNBZ0lIMWNibHh1SUNBZ0lISmxkSFZ5YmlCcGMxWmhiR2xrTzF4dUlDQjlMRnh1WEc0Z0lDOHZJRlpoYkdsa1lYUmxJSFJvWlNCbWIzSnRJR0o1SUdkdmFXNW5JSFJvY205MVoyZ2dZV3hzSUdOb2FXeGtJR2x1Y0hWMElHTnZiWEJ2Ym1WdWRITmNiaUFnTHk4Z1lXNWtJR05vWldOcklIUm9aV2x5SUhOMFlYUmxYRzRnSUhaaGJHbGtZWFJsUm05eWJUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSFpoY2lCaGJHeEpjMVpoYkdsa0lEMGdkSEoxWlR0Y2JpQWdJQ0IyWVhJZ2FXNXdkWFJ6SUQwZ2RHaHBjeTVwYm5CMWRITTdYRzRnSUNBZ2RtRnlJR2x1Y0hWMFMyVjVjeUE5SUU5aWFtVmpkQzVyWlhsektHbHVjSFYwY3lrN1hHNWNiaUFnSUNBdkx5QlhaU0J1WldWa0lHRWdZMkZzYkdKaFkyc2dZWE1nZDJVZ1lYSmxJSFpoYkdsa1lYUnBibWNnWVd4c0lHbHVjSFYwY3lCaFoyRnBiaTRnVkdocGN5QjNhV3hzWEc0Z0lDQWdMeThnY25WdUlIZG9aVzRnZEdobElHeGhjM1FnWTI5dGNHOXVaVzUwSUdoaGN5QnpaWFFnYVhSeklITjBZWFJsWEc0Z0lDQWdkbUZ5SUc5dVZtRnNhV1JoZEdsdmJrTnZiWEJzWlhSbElEMGdablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnYVc1d2RYUkxaWGx6TG1admNrVmhZMmdvWm5WdVkzUnBiMjRnS0c1aGJXVXBJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tDRnBibkIxZEhOYmJtRnRaVjB1YzNSaGRHVXVYMmx6Vm1Gc2FXUXBJSHRjYmlBZ0lDQWdJQ0FnSUNCaGJHeEpjMVpoYkdsa0lEMGdabUZzYzJVN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMHVZbWx1WkNoMGFHbHpLU2s3WEc1Y2JpQWdJQ0FnSUhSb2FYTXVjMlYwVTNSaGRHVW9lMXh1SUNBZ0lDQWdJQ0JwYzFaaGJHbGtPaUJoYkd4SmMxWmhiR2xrWEc0Z0lDQWdJQ0I5S1R0Y2JseHVJQ0FnSUNBZ2FXWWdLR0ZzYkVselZtRnNhV1FwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV3Y205d2N5NXZibFpoYkdsa0tDazdYRzRnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ0lDQjBhR2x6TG5CeWIzQnpMbTl1U1c1MllXeHBaQ2dwTzF4dUlDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBdkx5QlVaV3hzSUhSb1pTQm1iM0p0SUhSb1lYUWdhWFFnWTJGdUlITjBZWEowSUhSdklIUnlhV2RuWlhJZ1kyaGhibWRsSUdWMlpXNTBjMXh1SUNBZ0lDQWdkR2hwY3k1elpYUlRkR0YwWlNoN1hHNGdJQ0FnSUNBZ0lHTmhia05vWVc1blpUb2dkSEoxWlZ4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNCOUxtSnBibVFvZEdocGN5azdYRzVjYmlBZ0lDQXZMeUJTZFc0Z2RtRnNhV1JoZEdsdmJpQmhaMkZwYmlCcGJpQmpZWE5sSUdGbVptVmpkR1ZrSUdKNUlHOTBhR1Z5SUdsdWNIVjBjeTRnVkdobFhHNGdJQ0FnTHk4Z2JHRnpkQ0JqYjIxd2IyNWxiblFnZG1Gc2FXUmhkR1ZrSUhkcGJHd2djblZ1SUhSb1pTQnZibFpoYkdsa1lYUnBiMjVEYjIxd2JHVjBaU0JqWVd4c1ltRmphMXh1SUNBZ0lHbHVjSFYwUzJWNWN5NW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaHVZVzFsTENCcGJtUmxlQ2tnZTF4dUlDQWdJQ0FnZG1GeUlHTnZiWEJ2Ym1WdWRDQTlJR2x1Y0hWMGMxdHVZVzFsWFR0Y2JpQWdJQ0FnSUhaaGNpQnBjMVpoYkdsa0lEMGdkR2hwY3k1eWRXNVdZV3hwWkdGMGFXOXVLR052YlhCdmJtVnVkQ2s3WEc0Z0lDQWdJQ0JqYjIxd2IyNWxiblF1YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnSUNCZmFYTldZV3hwWkRvZ2FYTldZV3hwWkN4Y2JpQWdJQ0FnSUNBZ1gzTmxjblpsY2tWeWNtOXlPaUJ1ZFd4c1hHNGdJQ0FnSUNCOUxDQnBibVJsZUNBOVBUMGdhVzV3ZFhSTFpYbHpMbXhsYm1kMGFDQXRJREVnUHlCdmJsWmhiR2xrWVhScGIyNURiMjF3YkdWMFpTQTZJRzUxYkd3cE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektTazdYRzVjYmlBZ0lDQXZMeUJKWmlCMGFHVnlaU0JoY21VZ2JtOGdhVzV3ZFhSekxDQnpaWFFnYzNSaGRHVWdkMmhsY21VZ1ptOXliU0JwY3lCeVpXRmtlU0IwYnlCMGNtbG5aMlZ5WEc0Z0lDQWdMeThnWTJoaGJtZGxJR1YyWlc1MExpQk9aWGNnYVc1d2RYUnpJRzFwWjJoMElHSmxJR0ZrWkdWa0lHeGhkR1Z5WEc0Z0lDQWdhV1lnS0NGcGJuQjFkRXRsZVhNdWJHVnVaM1JvSUNZbUlIUm9hWE11YVhOTmIzVnVkR1ZrS0NrcElIdGNiaUFnSUNBZ0lIUm9hWE11YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnSUNCallXNURhR0Z1WjJVNklIUnlkV1ZjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJSDFjYmlBZ2ZTeGNibHh1SUNBdkx5Qk5aWFJvYjJRZ2NIVjBJRzl1SUdWaFkyZ2dhVzV3ZFhRZ1kyOXRjRzl1Wlc1MElIUnZJSEpsWjJsemRHVnlYRzRnSUM4dklHbDBjMlZzWmlCMGJ5QjBhR1VnWm05eWJWeHVJQ0JoZEhSaFkyaFViMFp2Y20wNklHWjFibU4wYVc5dUlDaGpiMjF3YjI1bGJuUXBJSHRjYmlBZ0lDQjBhR2x6TG1sdWNIVjBjMXRqYjIxd2IyNWxiblF1Y0hKdmNITXVibUZ0WlYwZ1BTQmpiMjF3YjI1bGJuUTdYRzRnSUNBZ2RHaHBjeTV0YjJSbGJGdGpiMjF3YjI1bGJuUXVjSEp2Y0hNdWJtRnRaVjBnUFNCamIyMXdiMjVsYm5RdWMzUmhkR1V1WDNaaGJIVmxPMXh1SUNBZ0lIUm9hWE11ZG1Gc2FXUmhkR1VvWTI5dGNHOXVaVzUwS1R0Y2JpQWdmU3hjYmx4dUlDQXZMeUJOWlhSb2IyUWdjSFYwSUc5dUlHVmhZMmdnYVc1d2RYUWdZMjl0Y0c5dVpXNTBJSFJ2SUhWdWNtVm5hWE4wWlhKY2JpQWdMeThnYVhSelpXeG1JR1p5YjIwZ2RHaGxJR1p2Y20xY2JpQWdaR1YwWVdOb1JuSnZiVVp2Y20wNklHWjFibU4wYVc5dUlDaGpiMjF3YjI1bGJuUXBJSHRjYmlBZ0lDQmtaV3hsZEdVZ2RHaHBjeTVwYm5CMWRITmJZMjl0Y0c5dVpXNTBMbkJ5YjNCekxtNWhiV1ZkTzF4dUlDQWdJR1JsYkdWMFpTQjBhR2x6TG0xdlpHVnNXMk52YlhCdmJtVnVkQzV3Y205d2N5NXVZVzFsWFR0Y2JpQWdmU3hjYmlBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzVjYmlBZ0lDQnlaWFIxY200Z1VtVmhZM1F1UkU5TkxtWnZjbTBvZTF4dUlDQWdJQ0FnSUNCdmJsTjFZbTFwZERvZ2RHaHBjeTV6ZFdKdGFYUXNYRzRnSUNBZ0lDQWdJR05zWVhOelRtRnRaVG9nZEdocGN5NXdjbTl3Y3k1amJHRnpjMDVoYldWY2JpQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxtTm9hV3hrY21WdVhHNGdJQ0FnS1R0Y2JseHVJQ0I5WEc1OUtUdGNibHh1YVdZZ0tDRm5iRzlpWVd3dVpYaHdiM0owY3lBbUppQWhaMnh2WW1Gc0xtMXZaSFZzWlNBbUppQW9JV2RzYjJKaGJDNWtaV1pwYm1VZ2ZId2dJV2RzYjJKaGJDNWtaV1pwYm1VdVlXMWtLU2tnZTF4dUlDQm5iRzlpWVd3dVJtOXliWE41SUQwZ1JtOXliWE41TzF4dWZWeHVYRzV0YjJSMWJHVXVaWGh3YjNKMGN5QTlJRVp2Y20xemVUdGNiaUpkZlE9PSIsIm1vZHVsZS5leHBvcnRzID0ge1xuICBnZXRJbml0aWFsU3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgdmFsdWUgPSAndmFsdWUnIGluIHRoaXMucHJvcHMgPyB0aGlzLnByb3BzLnZhbHVlIDogJyc7XG4gICAgcmV0dXJuIHtcbiAgICAgIF92YWx1ZTogdmFsdWUsXG4gICAgICBfaXNWYWxpZDogdHJ1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiB0cnVlLFxuICAgICAgX3ByaXN0aW5lVmFsdWU6IHZhbHVlXG4gICAgfTtcbiAgfSxcbiAgY29tcG9uZW50V2lsbE1vdW50OiBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgY29uZmlndXJlID0gZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5zZXRWYWxpZGF0aW9ucyh0aGlzLnByb3BzLnZhbGlkYXRpb25zLCB0aGlzLnByb3BzLnJlcXVpcmVkKTtcbiAgICAgIHRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSh0aGlzKTtcbiAgICB9LmJpbmQodGhpcyk7XG5cbiAgICBpZiAoIXRoaXMucHJvcHMubmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGb3JtIElucHV0IHJlcXVpcmVzIGEgbmFtZSBwcm9wZXJ0eSB3aGVuIHVzZWQnKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSkge1xuICAgICAgcmV0dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNNb3VudGVkKCkpIHJldHVybjtcbiAgICAgICAgaWYgKCF0aGlzLnByb3BzLl9hdHRhY2hUb0Zvcm0pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Zvcm0gTWl4aW4gcmVxdWlyZXMgY29tcG9uZW50IHRvIGJlIG5lc3RlZCBpbiBhIEZvcm0nKTtcbiAgICAgICAgfVxuICAgICAgICBjb25maWd1cmUoKTtcbiAgICAgIH0uYmluZCh0aGlzKSwgMCk7XG4gICAgfVxuICAgIGNvbmZpZ3VyZSgpO1xuXG4gIH0sXG5cbiAgLy8gV2UgaGF2ZSB0byBtYWtlIHRoZSB2YWxpZGF0ZSBtZXRob2QgaXMga2VwdCB3aGVuIG5ldyBwcm9wcyBhcmUgYWRkZWRcbiAgY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wczogZnVuY3Rpb24gKG5leHRQcm9wcykge1xuICAgIG5leHRQcm9wcy5fYXR0YWNoVG9Gb3JtID0gdGhpcy5wcm9wcy5fYXR0YWNoVG9Gb3JtO1xuICAgIG5leHRQcm9wcy5fZGV0YWNoRnJvbUZvcm0gPSB0aGlzLnByb3BzLl9kZXRhY2hGcm9tRm9ybTtcbiAgICBuZXh0UHJvcHMuX3ZhbGlkYXRlID0gdGhpcy5wcm9wcy5fdmFsaWRhdGU7XG4gICAgdGhpcy5zZXRWYWxpZGF0aW9ucyhuZXh0UHJvcHMudmFsaWRhdGlvbnMsIG5leHRQcm9wcy5yZXF1aXJlZCk7XG4gIH0sXG5cbiAgY29tcG9uZW50RGlkVXBkYXRlOiBmdW5jdGlvbiAocHJldlByb3BzLCBwcmV2U3RhdGUpIHtcblxuICAgIHZhciBpc1ZhbHVlQ2hhbmdlZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIFxuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5wcm9wcy52YWx1ZSAhPT0gcHJldlByb3BzLnZhbHVlICYmIChcbiAgICAgICAgICB0aGlzLnN0YXRlLl92YWx1ZSA9PT0gcHJldlByb3BzLnZhbHVlIHx8XG5cbiAgICAgICAgICAvLyBTaW5jZSB1bmRlZmluZWQgaXMgY29udmVydGVkIHRvIGVtcHR5IHN0cmluZyB3ZSBoYXZlIHRvXG4gICAgICAgICAgLy8gY2hlY2sgdGhhdCBzcGVjaWZpY2FsbHlcbiAgICAgICAgICAodGhpcy5zdGF0ZS5fdmFsdWUgPT09ICcnICYmIHByZXZQcm9wcy52YWx1ZSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICApXG4gICAgICApO1xuXG4gICAgfS5iaW5kKHRoaXMpO1xuXG5cbiAgICAvLyBJZiB2YWxpZGF0aW9ucyBoYXMgY2hhbmdlZCBvciBzb21ldGhpbmcgb3V0c2lkZSBjaGFuZ2VzIFxuICAgIC8vIHRoZSB2YWx1ZSwgc2V0IHRoZSB2YWx1ZSBhZ2FpbiBydW5uaW5nIGEgdmFsaWRhdGlvblxuXG4gICAgaWYgKHByZXZQcm9wcy52YWxpZGF0aW9ucyAhPT0gdGhpcy5wcm9wcy52YWxpZGF0aW9ucyB8fCBpc1ZhbHVlQ2hhbmdlZCgpKSB7XG4gICAgICB2YXIgdmFsdWUgPSAndmFsdWUnIGluIHRoaXMucHJvcHMgPyB0aGlzLnByb3BzLnZhbHVlIDogJyc7XG4gICAgICB0aGlzLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH0sXG5cbiAgLy8gRGV0YWNoIGl0IHdoZW4gY29tcG9uZW50IHVubW91bnRzXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcy5wcm9wcy5fZGV0YWNoRnJvbUZvcm0odGhpcyk7XG4gIH0sXG5cbiAgc2V0VmFsaWRhdGlvbnM6IGZ1bmN0aW9uICh2YWxpZGF0aW9ucywgcmVxdWlyZWQpIHtcblxuICAgIC8vIEFkZCB2YWxpZGF0aW9ucyB0byB0aGUgc3RvcmUgaXRzZWxmIGFzIHRoZSBwcm9wcyBvYmplY3QgY2FuIG5vdCBiZSBtb2RpZmllZFxuICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnMgfHwgJyc7XG5cbiAgICBpZiAocmVxdWlyZWQpIHtcbiAgICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnMgPyB2YWxpZGF0aW9ucyArICcsJyA6ICcnO1xuICAgICAgdGhpcy5fdmFsaWRhdGlvbnMgKz0gJ2lzVmFsdWUnO1xuICAgIH1cblxuICB9LFxuXG4gIC8vIFdlIHZhbGlkYXRlIGFmdGVyIHRoZSB2YWx1ZSBoYXMgYmVlbiBzZXRcbiAgc2V0VmFsdWU6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgX3ZhbHVlOiB2YWx1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiBmYWxzZVxuICAgIH0sIGZ1bmN0aW9uICgpIHtcbiAgICAgIHRoaXMucHJvcHMuX3ZhbGlkYXRlKHRoaXMpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG4gIHJlc2V0VmFsdWU6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIF92YWx1ZTogdGhpcy5zdGF0ZS5fcHJpc3RpbmVWYWx1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiB0cnVlXG4gICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5wcm9wcy5fdmFsaWRhdGUodGhpcyk7XG4gICAgfSk7XG4gIH0sXG4gIGdldFZhbHVlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX3ZhbHVlO1xuICB9LFxuICBoYXNWYWx1ZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLl92YWx1ZSAhPT0gJyc7XG4gIH0sXG4gIGdldEVycm9yTWVzc2FnZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLmlzVmFsaWQoKSB8fCB0aGlzLnNob3dSZXF1aXJlZCgpID8gbnVsbCA6IHRoaXMuc3RhdGUuX3NlcnZlckVycm9yIHx8IHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9yO1xuICB9LFxuICBpc0Zvcm1EaXNhYmxlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLl9pc0Zvcm1EaXNhYmxlZCgpO1xuICB9LFxuICBpc1ZhbGlkOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX2lzVmFsaWQ7XG4gIH0sXG4gIGlzUHJpc3RpbmU6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5faXNQcmlzdGluZTtcbiAgfSxcbiAgaXNSZXF1aXJlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhIXRoaXMucHJvcHMucmVxdWlyZWQ7XG4gIH0sXG4gIHNob3dSZXF1aXJlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLmlzUmVxdWlyZWQoKSAmJiB0aGlzLnN0YXRlLl92YWx1ZSA9PT0gJyc7XG4gIH0sXG4gIHNob3dFcnJvcjogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhdGhpcy5zaG93UmVxdWlyZWQoKSAmJiAhdGhpcy5zdGF0ZS5faXNWYWxpZDtcbiAgfSxcbiAgaXNWYWxpZFZhbHVlOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5faXNWYWxpZFZhbHVlLmNhbGwobnVsbCwgdGhpcywgdmFsdWUpO1xuICB9XG59O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZUV2w0YVc0dWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0pqTDAxcGVHbHVMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVYzdSVUZEWml4bFFVRmxMRVZCUVVVc1dVRkJXVHRKUVVNelFpeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRE1VUXNUMEZCVHp0TlFVTk1MRTFCUVUwc1JVRkJSU3hMUVVGTE8wMUJRMklzVVVGQlVTeEZRVUZGTEVsQlFVazdUVUZEWkN4WFFVRlhMRVZCUVVVc1NVRkJTVHROUVVOcVFpeGpRVUZqTEVWQlFVVXNTMEZCU3p0TFFVTjBRaXhEUVVGRE8wZEJRMGc3UVVGRFNDeEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxGbEJRVms3TzBsQlJUbENMRWxCUVVrc1UwRkJVeXhIUVVGSExGbEJRVms3VFVGRE1VSXNTVUZCU1N4RFFVRkRMR05CUVdNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NSVUZCUlN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzAxQlEycEZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTNKRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN08wbEJSV0lzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hGUVVGRk8wMUJRM0JDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc0swTkJRU3RETEVOQlFVTXNRMEZCUXp0QlFVTjJSU3hMUVVGTE96dEpRVVZFTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExHRkJRV0VzUlVGQlJUdE5RVU0zUWl4UFFVRlBMRlZCUVZVc1EwRkJReXhaUVVGWk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhGUVVGRkxFVkJRVVVzVDBGQlR6dFJRVU01UWl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGhRVUZoTEVWQlFVVTdWVUZETjBJc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5eHpSRUZCYzBRc1EwRkJReXhEUVVGRE8xTkJRM3BGTzFGQlEwUXNVMEZCVXl4RlFVRkZMRU5CUVVNN1QwRkRZaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOc1FqdEJRVU5NTEVsQlFVa3NVMEZCVXl4RlFVRkZMRU5CUVVNN08wRkJSV2hDTEVkQlFVYzdRVUZEU0RzN1JVRkZSU3g1UWtGQmVVSXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSVHRKUVVNNVF5eFRRVUZUTEVOQlFVTXNZVUZCWVN4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETzBsQlEyNUVMRk5CUVZNc1EwRkJReXhsUVVGbExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNN1NVRkRka1FzVTBGQlV5eERRVUZETEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF6dEpRVU16UXl4SlFVRkpMRU5CUVVNc1kwRkJZeXhEUVVGRExGTkJRVk1zUTBGQlF5eFhRVUZYTEVWQlFVVXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8wRkJRMjVGTEVkQlFVYzdPMEZCUlVnc1JVRkJSU3hyUWtGQmEwSXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSU3hUUVVGVExFVkJRVVU3TzBGQlJYUkVMRWxCUVVrc1NVRkJTU3hqUVVGakxFZEJRVWNzV1VGQldUczdUVUZGTDBJN1VVRkRSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NTMEZCU3l4VFFVRlRMRU5CUVVNc1MwRkJTenRCUVVNMVF5eFZRVUZWTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hMUVVGTExGTkJRVk1zUTBGQlF5eExRVUZMTzBGQlF5OURPMEZCUTBFN08xZEJSVmNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRXRCUVVzc1JVRkJSU3hKUVVGSkxGTkJRVk1zUTBGQlF5eExRVUZMTEV0QlFVc3NVMEZCVXl4RFFVRkRPMU5CUXpWRU8wRkJRMVFzVVVGQlVUczdRVUZGVWl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEycENPMEZCUTBFN1FVRkRRVHRCUVVOQk96dEpRVVZKTEVsQlFVa3NVMEZCVXl4RFFVRkRMRmRCUVZjc1MwRkJTeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NTVUZCU1N4alFVRmpMRVZCUVVVc1JVRkJSVHROUVVONFJTeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1IwRkJSeXhGUVVGRkxFTkJRVU03VFVGRE1VUXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dExRVU4wUWp0QlFVTk1MRWRCUVVjN1FVRkRTRHM3UlVGRlJTeHZRa0ZCYjBJc1JVRkJSU3haUVVGWk8wbEJRMmhETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEzSkRMRWRCUVVjN08wRkJSVWdzUlVGQlJTeGpRVUZqTEVWQlFVVXNWVUZCVlN4WFFVRlhMRVZCUVVVc1VVRkJVU3hGUVVGRk8wRkJRMjVFT3p0QlFVVkJMRWxCUVVrc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eFhRVUZYTEVsQlFVa3NSVUZCUlN4RFFVRkRPenRKUVVWMFF5eEpRVUZKTEZGQlFWRXNSVUZCUlR0TlFVTmFMRWxCUVVrc1EwRkJReXhaUVVGWkxFZEJRVWNzVjBGQlZ5eEhRVUZITEZkQlFWY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1JVRkJSU3hEUVVGRE8wMUJRM3BFTEVsQlFVa3NRMEZCUXl4WlFVRlpMRWxCUVVrc1UwRkJVeXhEUVVGRE8wRkJRM0pETEV0QlFVczdPMEZCUlV3c1IwRkJSenRCUVVOSU96dEZRVVZGTEZGQlFWRXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVONlFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1RVRkJUU3hGUVVGRkxFdEJRVXM3VFVGRFlpeFhRVUZYTEVWQlFVVXNTMEZCU3p0TFFVTnVRaXhGUVVGRkxGbEJRVms3VFVGRFlpeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dExRVU0xUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzBkQlEyWTdSVUZEUkN4VlFVRlZMRVZCUVVVc1dVRkJXVHRKUVVOMFFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1RVRkJUU3hGUVVGRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNZMEZCWXp0TlFVTnFReXhYUVVGWExFVkJRVVVzU1VGQlNUdExRVU5zUWl4RlFVRkZMRmxCUVZrN1RVRkRZaXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRMUVVNMVFpeERRVUZETEVOQlFVTTdSMEZEU2p0RlFVTkVMRkZCUVZFc1JVRkJSU3haUVVGWk8wbEJRM0JDTEU5QlFVOHNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03UjBGRE1VSTdSVUZEUkN4UlFVRlJMRVZCUVVVc1dVRkJXVHRKUVVOd1FpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hMUVVGTExFVkJRVVVzUTBGQlF6dEhRVU5xUXp0RlFVTkVMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVOHNTVUZCU1N4RFFVRkRMRTlCUVU4c1JVRkJSU3hKUVVGSkxFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNSMEZCUnl4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFpRVUZaTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU03UjBGRE4wYzdSVUZEUkN4alFVRmpMRVZCUVVVc1dVRkJXVHRKUVVNeFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hGUVVGRkxFTkJRVU03UjBGRGNrTTdSVUZEUkN4UFFVRlBMRVZCUVVVc1dVRkJXVHRKUVVOdVFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wZEJRelZDTzBWQlEwUXNWVUZCVlN4RlFVRkZMRmxCUVZrN1NVRkRkRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRmRCUVZjc1EwRkJRenRIUVVNdlFqdEZRVU5FTEZWQlFWVXNSVUZCUlN4WlFVRlpPMGxCUTNSQ0xFOUJRVThzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wZEJRemxDTzBWQlEwUXNXVUZCV1N4RlFVRkZMRmxCUVZrN1NVRkRlRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEV0QlFVc3NSVUZCUlN4RFFVRkRPMGRCUTNSRU8wVkJRMFFzVTBGQlV5eEZRVUZGTEZsQlFWazdTVUZEY2tJc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETzBkQlEzSkVPMFZCUTBRc1dVRkJXU3hGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzBsQlF6ZENMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGhRVUZoTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTTdSMEZEZWtRN1EwRkRSaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2liVzlrZFd4bExtVjRjRzl5ZEhNZ1BTQjdYRzRnSUdkbGRFbHVhWFJwWVd4VGRHRjBaVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhaaGNpQjJZV3gxWlNBOUlDZDJZV3gxWlNjZ2FXNGdkR2hwY3k1d2NtOXdjeUEvSUhSb2FYTXVjSEp2Y0hNdWRtRnNkV1VnT2lBbkp6dGNiaUFnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnWDNaaGJIVmxPaUIyWVd4MVpTeGNiaUFnSUNBZ0lGOXBjMVpoYkdsa09pQjBjblZsTEZ4dUlDQWdJQ0FnWDJselVISnBjM1JwYm1VNklIUnlkV1VzWEc0Z0lDQWdJQ0JmY0hKcGMzUnBibVZXWVd4MVpUb2dkbUZzZFdWY2JpQWdJQ0I5TzF4dUlDQjlMRnh1SUNCamIyMXdiMjVsYm5SWGFXeHNUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJSFpoY2lCamIyNW1hV2QxY21VZ1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxuTmxkRlpoYkdsa1lYUnBiMjV6S0hSb2FYTXVjSEp2Y0hNdWRtRnNhV1JoZEdsdmJuTXNJSFJvYVhNdWNISnZjSE11Y21WeGRXbHlaV1FwTzF4dUlDQWdJQ0FnZEdocGN5NXdjbTl3Y3k1ZllYUjBZV05vVkc5R2IzSnRLSFJvYVhNcE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektUdGNibHh1SUNBZ0lHbG1JQ2doZEdocGN5NXdjbTl3Y3k1dVlXMWxLU0I3WEc0Z0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMFp2Y20wZ1NXNXdkWFFnY21WeGRXbHlaWE1nWVNCdVlXMWxJSEJ5YjNCbGNuUjVJSGRvWlc0Z2RYTmxaQ2NwTzF4dUlDQWdJSDFjYmx4dUlDQWdJR2xtSUNnaGRHaHBjeTV3Y205d2N5NWZZWFIwWVdOb1ZHOUdiM0p0S1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnYzJWMFZHbHRaVzkxZENobWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR2xtSUNnaGRHaHBjeTVwYzAxdmRXNTBaV1FvS1NrZ2NtVjBkWEp1TzF4dUlDQWdJQ0FnSUNCcFppQW9JWFJvYVhNdWNISnZjSE11WDJGMGRHRmphRlJ2Um05eWJTa2dlMXh1SUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWduUm05eWJTQk5hWGhwYmlCeVpYRjFhWEpsY3lCamIyMXdiMjVsYm5RZ2RHOGdZbVVnYm1WemRHVmtJR2x1SUdFZ1JtOXliU2NwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lHTnZibVpwWjNWeVpTZ3BPMXh1SUNBZ0lDQWdmUzVpYVc1a0tIUm9hWE1wTENBd0tUdGNiaUFnSUNCOVhHNGdJQ0FnWTI5dVptbG5kWEpsS0NrN1hHNWNiaUFnZlN4Y2JseHVJQ0F2THlCWFpTQm9ZWFpsSUhSdklHMWhhMlVnZEdobElIWmhiR2xrWVhSbElHMWxkR2h2WkNCcGN5QnJaWEIwSUhkb1pXNGdibVYzSUhCeWIzQnpJR0Z5WlNCaFpHUmxaRnh1SUNCamIyMXdiMjVsYm5SWGFXeHNVbVZqWldsMlpWQnliM0J6T2lCbWRXNWpkR2x2YmlBb2JtVjRkRkJ5YjNCektTQjdYRzRnSUNBZ2JtVjRkRkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTBnUFNCMGFHbHpMbkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTA3WEc0Z0lDQWdibVY0ZEZCeWIzQnpMbDlrWlhSaFkyaEdjbTl0Um05eWJTQTlJSFJvYVhNdWNISnZjSE11WDJSbGRHRmphRVp5YjIxR2IzSnRPMXh1SUNBZ0lHNWxlSFJRY205d2N5NWZkbUZzYVdSaGRHVWdQU0IwYUdsekxuQnliM0J6TGw5MllXeHBaR0YwWlR0Y2JpQWdJQ0IwYUdsekxuTmxkRlpoYkdsa1lYUnBiMjV6S0c1bGVIUlFjbTl3Y3k1MllXeHBaR0YwYVc5dWN5d2dibVY0ZEZCeWIzQnpMbkpsY1hWcGNtVmtLVHRjYmlBZ2ZTeGNibHh1SUNCamIyMXdiMjVsYm5SRWFXUlZjR1JoZEdVNklHWjFibU4wYVc5dUlDaHdjbVYyVUhKdmNITXNJSEJ5WlhaVGRHRjBaU2tnZTF4dVhHNGdJQ0FnZG1GeUlHbHpWbUZzZFdWRGFHRnVaMlZrSUQwZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdYRzRnSUNBZ0lDQnlaWFIxY200Z0tGeHVJQ0FnSUNBZ0lDQjBhR2x6TG5CeWIzQnpMblpoYkhWbElDRTlQU0J3Y21WMlVISnZjSE11ZG1Gc2RXVWdKaVlnS0Z4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11YzNSaGRHVXVYM1poYkhWbElEMDlQU0J3Y21WMlVISnZjSE11ZG1Gc2RXVWdmSHhjYmx4dUlDQWdJQ0FnSUNBZ0lDOHZJRk5wYm1ObElIVnVaR1ZtYVc1bFpDQnBjeUJqYjI1MlpYSjBaV1FnZEc4Z1pXMXdkSGtnYzNSeWFXNW5JSGRsSUdoaGRtVWdkRzljYmlBZ0lDQWdJQ0FnSUNBdkx5QmphR1ZqYXlCMGFHRjBJSE53WldOcFptbGpZV3hzZVZ4dUlDQWdJQ0FnSUNBZ0lDaDBhR2x6TG5OMFlYUmxMbDkyWVd4MVpTQTlQVDBnSnljZ0ppWWdjSEpsZGxCeWIzQnpMblpoYkhWbElEMDlQU0IxYm1SbFptbHVaV1FwWEc0Z0lDQWdJQ0FnSUNsY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNCOUxtSnBibVFvZEdocGN5azdYRzVjYmx4dUlDQWdJQzh2SUVsbUlIWmhiR2xrWVhScGIyNXpJR2hoY3lCamFHRnVaMlZrSUc5eUlITnZiV1YwYUdsdVp5QnZkWFJ6YVdSbElHTm9ZVzVuWlhNZ1hHNGdJQ0FnTHk4Z2RHaGxJSFpoYkhWbExDQnpaWFFnZEdobElIWmhiSFZsSUdGbllXbHVJSEoxYm01cGJtY2dZU0IyWVd4cFpHRjBhVzl1WEc1Y2JpQWdJQ0JwWmlBb2NISmxkbEJ5YjNCekxuWmhiR2xrWVhScGIyNXpJQ0U5UFNCMGFHbHpMbkJ5YjNCekxuWmhiR2xrWVhScGIyNXpJSHg4SUdselZtRnNkV1ZEYUdGdVoyVmtLQ2twSUh0Y2JpQWdJQ0FnSUhaaGNpQjJZV3gxWlNBOUlDZDJZV3gxWlNjZ2FXNGdkR2hwY3k1d2NtOXdjeUEvSUhSb2FYTXVjSEp2Y0hNdWRtRnNkV1VnT2lBbkp6dGNiaUFnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvZG1Gc2RXVXBPMXh1SUNBZ0lIMWNiaUFnZlN4Y2JseHVJQ0F2THlCRVpYUmhZMmdnYVhRZ2QyaGxiaUJqYjIxd2IyNWxiblFnZFc1dGIzVnVkSE5jYmlBZ1kyOXRjRzl1Wlc1MFYybHNiRlZ1Ylc5MWJuUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0IwYUdsekxuQnliM0J6TGw5a1pYUmhZMmhHY205dFJtOXliU2gwYUdsektUdGNiaUFnZlN4Y2JseHVJQ0J6WlhSV1lXeHBaR0YwYVc5dWN6b2dablZ1WTNScGIyNGdLSFpoYkdsa1lYUnBiMjV6TENCeVpYRjFhWEpsWkNrZ2UxeHVYRzRnSUNBZ0x5OGdRV1JrSUhaaGJHbGtZWFJwYjI1eklIUnZJSFJvWlNCemRHOXlaU0JwZEhObGJHWWdZWE1nZEdobElIQnliM0J6SUc5aWFtVmpkQ0JqWVc0Z2JtOTBJR0psSUcxdlpHbG1hV1ZrWEc0Z0lDQWdkR2hwY3k1ZmRtRnNhV1JoZEdsdmJuTWdQU0IyWVd4cFpHRjBhVzl1Y3lCOGZDQW5KenRjYmx4dUlDQWdJR2xtSUNoeVpYRjFhWEpsWkNrZ2UxeHVJQ0FnSUNBZ2RHaHBjeTVmZG1Gc2FXUmhkR2x2Ym5NZ1BTQjJZV3hwWkdGMGFXOXVjeUEvSUhaaGJHbGtZWFJwYjI1eklDc2dKeXduSURvZ0p5YzdYRzRnSUNBZ0lDQjBhR2x6TGw5MllXeHBaR0YwYVc5dWN5QXJQU0FuYVhOV1lXeDFaU2M3WEc0Z0lDQWdmVnh1WEc0Z0lIMHNYRzVjYmlBZ0x5OGdWMlVnZG1Gc2FXUmhkR1VnWVdaMFpYSWdkR2hsSUhaaGJIVmxJR2hoY3lCaVpXVnVJSE5sZEZ4dUlDQnpaWFJXWVd4MVpUb2dablZ1WTNScGIyNGdLSFpoYkhWbEtTQjdYRzRnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0JmZG1Gc2RXVTZJSFpoYkhWbExGeHVJQ0FnSUNBZ1gybHpVSEpwYzNScGJtVTZJR1poYkhObFhHNGdJQ0FnZlN3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTVmZG1Gc2FXUmhkR1VvZEdocGN5azdYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBLVHRjYmlBZ2ZTeGNiaUFnY21WelpYUldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lIUm9hWE11YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnWDNaaGJIVmxPaUIwYUdsekxuTjBZWFJsTGw5d2NtbHpkR2x1WlZaaGJIVmxMRnh1SUNBZ0lDQWdYMmx6VUhKcGMzUnBibVU2SUhSeWRXVmNiaUFnSUNCOUxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxuQnliM0J6TGw5MllXeHBaR0YwWlNoMGFHbHpLVHRjYmlBZ0lDQjlLVHRjYmlBZ2ZTeGNiaUFnWjJWMFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXpkR0YwWlM1ZmRtRnNkV1U3WEc0Z0lIMHNYRzRnSUdoaGMxWmhiSFZsT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUhSb2FYTXVjM1JoZEdVdVgzWmhiSFZsSUNFOVBTQW5KenRjYmlBZ2ZTeGNiaUFnWjJWMFJYSnliM0pOWlhOellXZGxPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWFYTldZV3hwWkNncElIeDhJSFJvYVhNdWMyaHZkMUpsY1hWcGNtVmtLQ2tnUHlCdWRXeHNJRG9nZEdocGN5NXpkR0YwWlM1ZmMyVnlkbVZ5UlhKeWIzSWdmSHdnZEdocGN5NXdjbTl3Y3k1MllXeHBaR0YwYVc5dVJYSnliM0k3WEc0Z0lIMHNYRzRnSUdselJtOXliVVJwYzJGaWJHVmtPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWNISnZjSE11WDJselJtOXliVVJwYzJGaWJHVmtLQ2s3WEc0Z0lIMHNYRzRnSUdselZtRnNhV1E2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXpkR0YwWlM1ZmFYTldZV3hwWkR0Y2JpQWdmU3hjYmlBZ2FYTlFjbWx6ZEdsdVpUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjBhR2x6TG5OMFlYUmxMbDlwYzFCeWFYTjBhVzVsTzF4dUlDQjlMRnh1SUNCcGMxSmxjWFZwY21Wa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlDRWhkR2hwY3k1d2NtOXdjeTV5WlhGMWFYSmxaRHRjYmlBZ2ZTeGNiaUFnYzJodmQxSmxjWFZwY21Wa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIUm9hWE11YVhOU1pYRjFhWEpsWkNncElDWW1JSFJvYVhNdWMzUmhkR1V1WDNaaGJIVmxJRDA5UFNBbkp6dGNiaUFnZlN4Y2JpQWdjMmh2ZDBWeWNtOXlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJQ0YwYUdsekxuTm9iM2RTWlhGMWFYSmxaQ2dwSUNZbUlDRjBhR2x6TG5OMFlYUmxMbDlwYzFaaGJHbGtPMXh1SUNCOUxGeHVJQ0JwYzFaaGJHbGtWbUZzZFdVNklHWjFibU4wYVc5dUlDaDJZV3gxWlNrZ2UxeHVJQ0FnSUhKbGRIVnliaUIwYUdsekxuQnliM0J6TGw5cGMxWmhiR2xrVm1Gc2RXVXVZMkZzYkNodWRXeHNMQ0IwYUdsekxDQjJZV3gxWlNrN1hHNGdJSDFjYm4wN1hHNGlYWDA9IiwidmFyIGNzcmZUb2tlblNlbGVjdG9yID0gdHlwZW9mIGRvY3VtZW50ICE9ICd1bmRlZmluZWQnID8gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbWV0YVtuYW1lPVwiY3NyZi10b2tlblwiXScpIDogbnVsbDtcblxudmFyIHRvVVJMRW5jb2RlZCA9IGZ1bmN0aW9uIChlbGVtZW50LCBrZXksIGxpc3QpIHtcbiAgdmFyIGxpc3QgPSBsaXN0IHx8IFtdO1xuICBpZiAodHlwZW9mIChlbGVtZW50KSA9PSAnb2JqZWN0Jykge1xuICAgIGZvciAodmFyIGlkeCBpbiBlbGVtZW50KVxuICAgICAgdG9VUkxFbmNvZGVkKGVsZW1lbnRbaWR4XSwga2V5ID8ga2V5ICsgJ1snICsgaWR4ICsgJ10nIDogaWR4LCBsaXN0KTtcbiAgfSBlbHNlIHtcbiAgICBsaXN0LnB1c2goa2V5ICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGVsZW1lbnQpKTtcbiAgfVxuICByZXR1cm4gbGlzdC5qb2luKCcmJyk7XG59O1xuXG52YXIgcmVxdWVzdCA9IGZ1bmN0aW9uIChtZXRob2QsIHVybCwgZGF0YSwgY29udGVudFR5cGUsIGhlYWRlcnMpIHtcblxuICB2YXIgY29udGVudFR5cGUgPSBjb250ZW50VHlwZSA9PT0gJ3VybGVuY29kZWQnID8gJ2FwcGxpY2F0aW9uLycgKyBjb250ZW50VHlwZS5yZXBsYWNlKCd1cmxlbmNvZGVkJywgJ3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpIDogJ2FwcGxpY2F0aW9uL2pzb24nO1xuICBkYXRhID0gY29udGVudFR5cGUgPT09ICdhcHBsaWNhdGlvbi9qc29uJyA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogdG9VUkxFbmNvZGVkKGRhdGEpO1xuXG4gIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgdHJ5IHtcbiAgICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICAgIHhoci5vcGVuKG1ldGhvZCwgdXJsLCB0cnVlKTtcbiAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCdBY2NlcHQnLCAnYXBwbGljYXRpb24vanNvbicpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsIGNvbnRlbnRUeXBlKTtcblxuICAgICAgaWYgKCEhY3NyZlRva2VuU2VsZWN0b3IgJiYgISFjc3JmVG9rZW5TZWxlY3Rvci5jb250ZW50KSB7XG4gICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCdYLUNTUkYtVG9rZW4nLCBjc3JmVG9rZW5TZWxlY3Rvci5jb250ZW50KTtcbiAgICAgIH1cblxuICAgICAgLy8gQWRkIHBhc3NlZCBoZWFkZXJzXG4gICAgICBPYmplY3Qua2V5cyhoZWFkZXJzKS5mb3JFYWNoKGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoaGVhZGVyLCBoZWFkZXJzW2hlYWRlcl0pO1xuICAgICAgfSk7XG5cbiAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhciByZXNwb25zZSA9IHhoci5yZXNwb25zZVRleHQgPyBKU09OLnBhcnNlKHhoci5yZXNwb25zZVRleHQpIDogbnVsbDtcbiAgICAgICAgICAgIGlmICh4aHIuc3RhdHVzID49IDIwMCAmJiB4aHIuc3RhdHVzIDwgMzAwKSB7XG4gICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmVqZWN0KHJlc3BvbnNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICB4aHIuc2VuZChkYXRhKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZWplY3QoZSk7XG4gICAgfVxuICB9KTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBhcnJheXNEaWZmZXI6IGZ1bmN0aW9uIChhcnJheUEsIGFycmF5Qikge1xuICAgIHZhciBpc0RpZmZlcmVudCA9IGZhbHNlO1xuICAgIGlmIChhcnJheUEubGVuZ3RoICE9PSBhcnJheUIubGVuZ3RoKSB7XG4gICAgICBpc0RpZmZlcmVudCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFycmF5QS5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBpbmRleCkge1xuICAgICAgICBpZiAoaXRlbSAhPT0gYXJyYXlCW2luZGV4XSkge1xuICAgICAgICAgIGlzRGlmZmVyZW50ID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBpc0RpZmZlcmVudDtcbiAgfSxcbiAgYWpheDoge1xuICAgIHBvc3Q6IHJlcXVlc3QuYmluZChudWxsLCAnUE9TVCcpLFxuICAgIHB1dDogcmVxdWVzdC5iaW5kKG51bGwsICdQVVQnKVxuICB9XG59O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZkWFJwYkhNdWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0pqTDNWMGFXeHpMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFbEJRVWtzYVVKQlFXbENMRWRCUVVjc1QwRkJUeXhSUVVGUkxFbEJRVWtzVjBGQlZ5eEhRVUZITEZGQlFWRXNRMEZCUXl4aFFVRmhMRU5CUVVNc2VVSkJRWGxDTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN08wRkJSV3hJTEVsQlFVa3NXVUZCV1N4SFFVRkhMRlZCUVZVc1QwRkJUeXhGUVVGRkxFZEJRVWNzUlVGQlJTeEpRVUZKTEVWQlFVVTdSVUZETDBNc1NVRkJTU3hKUVVGSkxFZEJRVWNzU1VGQlNTeEpRVUZKTEVWQlFVVXNRMEZCUXp0RlFVTjBRaXhKUVVGSkxGRkJRVkVzVDBGQlR5eERRVUZETEVsQlFVa3NVVUZCVVN4RlFVRkZPMGxCUTJoRExFdEJRVXNzU1VGQlNTeEhRVUZITEVsQlFVa3NUMEZCVHp0TlFVTnlRaXhaUVVGWkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUjBGQlJ5eEhRVUZITEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1IwRkJSeXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBkQlEzWkZMRTFCUVUwN1NVRkRUQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc2EwSkJRV3RDTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJRenRIUVVOd1JEdEZRVU5FTEU5QlFVOHNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dEJRVU40UWl4RFFVRkRMRU5CUVVNN08wRkJSVVlzU1VGQlNTeFBRVUZQTEVkQlFVY3NWVUZCVlN4TlFVRk5MRVZCUVVVc1IwRkJSeXhGUVVGRkxFbEJRVWtzUlVGQlJTeFhRVUZYTEVWQlFVVXNUMEZCVHl4RlFVRkZPenRGUVVVdlJDeEpRVUZKTEZkQlFWY3NSMEZCUnl4WFFVRlhMRXRCUVVzc1dVRkJXU3hIUVVGSExHTkJRV01zUjBGQlJ5eFhRVUZYTEVOQlFVTXNUMEZCVHl4RFFVRkRMRmxCUVZrc1JVRkJSU3gxUWtGQmRVSXNRMEZCUXl4SFFVRkhMR3RDUVVGclFpeERRVUZETzBGQlEzQktMRVZCUVVVc1NVRkJTU3hIUVVGSExGZEJRVmNzUzBGQlN5eHJRa0ZCYTBJc1IwRkJSeXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRmxCUVZrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6czdSVUZGZEVZc1QwRkJUeXhKUVVGSkxFOUJRVThzUTBGQlF5eFZRVUZWTEU5QlFVOHNSVUZCUlN4TlFVRk5MRVZCUVVVN1NVRkROVU1zU1VGQlNUdE5RVU5HTEVsQlFVa3NSMEZCUnl4SFFVRkhMRWxCUVVrc1kwRkJZeXhGUVVGRkxFTkJRVU03VFVGREwwSXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUXpWQ0xFZEJRVWNzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhSUVVGUkxFVkJRVVVzYTBKQlFXdENMRU5CUVVNc1EwRkJRenRCUVVONlJDeE5RVUZOTEVkQlFVY3NRMEZCUXl4blFrRkJaMElzUTBGQlF5eGpRVUZqTEVWQlFVVXNWMEZCVnl4RFFVRkRMRU5CUVVNN08wMUJSV3hFTEVsQlFVa3NRMEZCUXl4RFFVRkRMR2xDUVVGcFFpeEpRVUZKTEVOQlFVTXNRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eFBRVUZQTEVWQlFVVTdVVUZEZEVRc1IwRkJSeXhEUVVGRExHZENRVUZuUWl4RFFVRkRMR05CUVdNc1JVRkJSU3hwUWtGQmFVSXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRCUVVONFJTeFBRVUZQTzBGQlExQTdPMDFCUlUwc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hOUVVGTkxFVkJRVVU3VVVGRE4wTXNSMEZCUnl4RFFVRkRMR2RDUVVGblFpeERRVUZETEUxQlFVMHNSVUZCUlN4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4wUkN4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEhRVUZITEVOQlFVTXNhMEpCUVd0Q0xFZEJRVWNzV1VGQldUdEJRVU16UXl4UlFVRlJMRWxCUVVrc1IwRkJSeXhEUVVGRExGVkJRVlVzUzBGQlN5eERRVUZETEVWQlFVVTdPMVZCUlhoQ0xFbEJRVWs3V1VGRFJpeEpRVUZKTEZGQlFWRXNSMEZCUnl4SFFVRkhMRU5CUVVNc1dVRkJXU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRmxCUVZrc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dFpRVU4wUlN4SlFVRkpMRWRCUVVjc1EwRkJReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4TlFVRk5MRWRCUVVjc1IwRkJSeXhGUVVGRk8yTkJRM3BETEU5QlFVOHNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRoUVVOdVFpeE5RVUZOTzJOQlEwd3NUVUZCVFN4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8yRkJRMnhDTzFkQlEwWXNRMEZCUXl4UFFVRlBMRU5CUVVNc1JVRkJSVHRaUVVOV0xFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjBRaXhYUVVGWE96dFRRVVZHTzA5QlEwWXNRMEZCUXp0TlFVTkdMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdTMEZEYUVJc1EwRkJReXhQUVVGUExFTkJRVU1zUlVGQlJUdE5RVU5XTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOWU8wZEJRMFlzUTBGQlF5eERRVUZETzBGQlEwd3NRMEZCUXl4RFFVRkRPenRCUVVWR0xFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVYzdSVUZEWml4WlFVRlpMRVZCUVVVc1ZVRkJWU3hOUVVGTkxFVkJRVVVzVFVGQlRTeEZRVUZGTzBsQlEzUkRMRWxCUVVrc1YwRkJWeXhIUVVGSExFdEJRVXNzUTBGQlF6dEpRVU40UWl4SlFVRkpMRTFCUVUwc1EwRkJReXhOUVVGTkxFdEJRVXNzVFVGQlRTeERRVUZETEUxQlFVMHNSVUZCUlR0TlFVTnVReXhYUVVGWExFZEJRVWNzU1VGQlNTeERRVUZETzB0QlEzQkNMRTFCUVUwN1RVRkRUQ3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSVHRSUVVOd1F5eEpRVUZKTEVsQlFVa3NTMEZCU3l4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFVkJRVVU3VlVGRE1VSXNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJRenRUUVVOd1FqdFBRVU5HTEVOQlFVTXNRMEZCUXp0TFFVTktPMGxCUTBRc1QwRkJUeXhYUVVGWExFTkJRVU03UjBGRGNFSTdSVUZEUkN4SlFVRkpMRVZCUVVVN1NVRkRTaXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRVZCUVVVc1RVRkJUU3hEUVVGRE8wbEJRMmhETEVkQlFVY3NSVUZCUlN4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTTdSMEZETDBJN1EwRkRSaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lkbUZ5SUdOemNtWlViMnRsYmxObGJHVmpkRzl5SUQwZ2RIbHdaVzltSUdSdlkzVnRaVzUwSUNFOUlDZDFibVJsWm1sdVpXUW5JRDhnWkc5amRXMWxiblF1Y1hWbGNubFRaV3hsWTNSdmNpZ25iV1YwWVZ0dVlXMWxQVndpWTNOeVppMTBiMnRsYmx3aVhTY3BJRG9nYm5Wc2JEdGNibHh1ZG1GeUlIUnZWVkpNUlc1amIyUmxaQ0E5SUdaMWJtTjBhVzl1SUNobGJHVnRaVzUwTENCclpYa3NJR3hwYzNRcElIdGNiaUFnZG1GeUlHeHBjM1FnUFNCc2FYTjBJSHg4SUZ0ZE8xeHVJQ0JwWmlBb2RIbHdaVzltSUNobGJHVnRaVzUwS1NBOVBTQW5iMkpxWldOMEp5a2dlMXh1SUNBZ0lHWnZjaUFvZG1GeUlHbGtlQ0JwYmlCbGJHVnRaVzUwS1Z4dUlDQWdJQ0FnZEc5VlVreEZibU52WkdWa0tHVnNaVzFsYm5SYmFXUjRYU3dnYTJWNUlEOGdhMlY1SUNzZ0oxc25JQ3NnYVdSNElDc2dKMTBuSURvZ2FXUjRMQ0JzYVhOMEtUdGNiaUFnZlNCbGJITmxJSHRjYmlBZ0lDQnNhWE4wTG5CMWMyZ29hMlY1SUNzZ0p6MG5JQ3NnWlc1amIyUmxWVkpKUTI5dGNHOXVaVzUwS0dWc1pXMWxiblFwS1R0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnYkdsemRDNXFiMmx1S0NjbUp5azdYRzU5TzF4dVhHNTJZWElnY21WeGRXVnpkQ0E5SUdaMWJtTjBhVzl1SUNodFpYUm9iMlFzSUhWeWJDd2daR0YwWVN3Z1kyOXVkR1Z1ZEZSNWNHVXNJR2hsWVdSbGNuTXBJSHRjYmx4dUlDQjJZWElnWTI5dWRHVnVkRlI1Y0dVZ1BTQmpiMjUwWlc1MFZIbHdaU0E5UFQwZ0ozVnliR1Z1WTI5a1pXUW5JRDhnSjJGd2NHeHBZMkYwYVc5dUx5Y2dLeUJqYjI1MFpXNTBWSGx3WlM1eVpYQnNZV05sS0NkMWNteGxibU52WkdWa0p5d2dKM2d0ZDNkM0xXWnZjbTB0ZFhKc1pXNWpiMlJsWkNjcElEb2dKMkZ3Y0d4cFkyRjBhVzl1TDJwemIyNG5PMXh1SUNCa1lYUmhJRDBnWTI5dWRHVnVkRlI1Y0dVZ1BUMDlJQ2RoY0hCc2FXTmhkR2x2Ymk5cWMyOXVKeUEvSUVwVFQwNHVjM1J5YVc1bmFXWjVLR1JoZEdFcElEb2dkRzlWVWt4RmJtTnZaR1ZrS0dSaGRHRXBPMXh1WEc0Z0lISmxkSFZ5YmlCdVpYY2dVSEp2YldselpTaG1kVzVqZEdsdmJpQW9jbVZ6YjJ4MlpTd2djbVZxWldOMEtTQjdYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJSFpoY2lCNGFISWdQU0J1WlhjZ1dFMU1TSFIwY0ZKbGNYVmxjM1FvS1R0Y2JpQWdJQ0FnSUhob2NpNXZjR1Z1S0cxbGRHaHZaQ3dnZFhKc0xDQjBjblZsS1R0Y2JpQWdJQ0FnSUhob2NpNXpaWFJTWlhGMVpYTjBTR1ZoWkdWeUtDZEJZMk5sY0hRbkxDQW5ZWEJ3YkdsallYUnBiMjR2YW5OdmJpY3BPMXh1SUNBZ0lDQWdlR2h5TG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvSjBOdmJuUmxiblF0Vkhsd1pTY3NJR052Ym5SbGJuUlVlWEJsS1R0Y2JseHVJQ0FnSUNBZ2FXWWdLQ0VoWTNOeVpsUnZhMlZ1VTJWc1pXTjBiM0lnSmlZZ0lTRmpjM0ptVkc5clpXNVRaV3hsWTNSdmNpNWpiMjUwWlc1MEtTQjdYRzRnSUNBZ0lDQWdJSGhvY2k1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NkWUxVTlRVa1l0Vkc5clpXNG5MQ0JqYzNKbVZHOXJaVzVUWld4bFkzUnZjaTVqYjI1MFpXNTBLVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnTHk4Z1FXUmtJSEJoYzNObFpDQm9aV0ZrWlhKelhHNGdJQ0FnSUNCUFltcGxZM1F1YTJWNWN5aG9aV0ZrWlhKektTNW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaG9aV0ZrWlhJcElIdGNiaUFnSUNBZ0lDQWdlR2h5TG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvYUdWaFpHVnlMQ0JvWldGa1pYSnpXMmhsWVdSbGNsMHBPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUhob2NpNXZibkpsWVdSNWMzUmhkR1ZqYUdGdVoyVWdQU0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2g0YUhJdWNtVmhaSGxUZEdGMFpTQTlQVDBnTkNrZ2UxeHVYRzRnSUNBZ0lDQWdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhaaGNpQnlaWE53YjI1elpTQTlJSGhvY2k1eVpYTndiMjV6WlZSbGVIUWdQeUJLVTA5T0xuQmhjbk5sS0hob2NpNXlaWE53YjI1elpWUmxlSFFwSURvZ2JuVnNiRHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2g0YUhJdWMzUmhkSFZ6SUQ0OUlESXdNQ0FtSmlCNGFISXVjM1JoZEhWeklEd2dNekF3S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGMyOXNkbVVvY21WemNHOXVjMlVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2NtVnFaV04wS0hKbGMzQnZibk5sS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnSUNCOUlHTmhkR05vSUNobEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpXcGxZM1FvWlNrN1hHNGdJQ0FnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwN1hHNGdJQ0FnSUNCNGFISXVjMlZ1WkNoa1lYUmhLVHRjYmlBZ0lDQjlJR05oZEdOb0lDaGxLU0I3WEc0Z0lDQWdJQ0J5WldwbFkzUW9aU2s3WEc0Z0lDQWdmVnh1SUNCOUtUdGNibjA3WEc1Y2JtMXZaSFZzWlM1bGVIQnZjblJ6SUQwZ2UxeHVJQ0JoY25KaGVYTkVhV1ptWlhJNklHWjFibU4wYVc5dUlDaGhjbkpoZVVFc0lHRnljbUY1UWlrZ2UxeHVJQ0FnSUhaaGNpQnBjMFJwWm1abGNtVnVkQ0E5SUdaaGJITmxPMXh1SUNBZ0lHbG1JQ2hoY25KaGVVRXViR1Z1WjNSb0lDRTlQU0JoY25KaGVVSXViR1Z1WjNSb0tTQjdYRzRnSUNBZ0lDQnBjMFJwWm1abGNtVnVkQ0E5SUhSeWRXVTdYRzRnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUdGeWNtRjVRUzVtYjNKRllXTm9LR1oxYm1OMGFXOXVJQ2hwZEdWdExDQnBibVJsZUNrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYVhSbGJTQWhQVDBnWVhKeVlYbENXMmx1WkdWNFhTa2dlMXh1SUNBZ0lDQWdJQ0FnSUdselJHbG1abVZ5Wlc1MElEMGdkSEoxWlR0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ2ZWeHVJQ0FnSUhKbGRIVnliaUJwYzBScFptWmxjbVZ1ZER0Y2JpQWdmU3hjYmlBZ1lXcGhlRG9nZTF4dUlDQWdJSEJ2YzNRNklISmxjWFZsYzNRdVltbHVaQ2h1ZFd4c0xDQW5VRTlUVkNjcExGeHVJQ0FnSUhCMWREb2djbVZ4ZFdWemRDNWlhVzVrS0c1MWJHd3NJQ2RRVlZRbktWeHVJQ0I5WEc1OU8xeHVJbDE5IiwibW9kdWxlLmV4cG9ydHMgPSB7XG4gICdpc1ZhbHVlJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlICE9PSAnJztcbiAgfSxcbiAgJ2lzRW1haWwnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL14oKChbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKFxcLihbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKSopfCgoXFx4MjIpKCgoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oKFtcXHgwMS1cXHgwOFxceDBiXFx4MGNcXHgwZS1cXHgxZlxceDdmXXxcXHgyMXxbXFx4MjMtXFx4NWJdfFtcXHg1ZC1cXHg3ZV18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pfChcXFxcKFtcXHgwMS1cXHgwOVxceDBiXFx4MGNcXHgwZC1cXHg3Zl18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pKSkpKigoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oXFx4MjIpKSlAKCgoW2Etel18XFxkfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKXwoKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkpKVxcLikrKChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSl8KChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSkpJC9pKTtcbiAgfSxcbiAgJ2lzVHJ1ZSc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gdHJ1ZTtcbiAgfSxcbiAgJ2lzTnVtZXJpYyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFyIG1hdGNoUmVzdWx0cyA9IHZhbHVlLm1hdGNoKC9bLStdPyhcXGQqWy5dKT9cXGQrLyk7XG4gICAgICBpZiAoISEgbWF0Y2hSZXN1bHRzKSB7XG4gICAgICAgIHJldHVybiBtYXRjaFJlc3VsdHNbMF0gPT0gdmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9LFxuICAnaXNBbHBoYSc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpdKyQvKTtcbiAgfSxcbiAgJ2lzV29yZHMnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL15bYS16QS1aXFxzXSskLyk7XG4gIH0sXG4gICdpc1NwZWNpYWxXb3Jkcyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpcXHNcXHUwMEMwLVxcdTAxN0ZdKyQvKTtcbiAgfSxcbiAgaXNMZW5ndGg6IGZ1bmN0aW9uICh2YWx1ZSwgbWluLCBtYXgpIHtcbiAgICBpZiAobWF4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPj0gbWluICYmIHZhbHVlLmxlbmd0aCA8PSBtYXg7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPj0gbWluO1xuICB9LFxuICBlcXVhbHM6IGZ1bmN0aW9uICh2YWx1ZSwgZXFsKSB7XG4gICAgcmV0dXJuIHZhbHVlID09IGVxbDtcbiAgfSxcbiAgZXF1YWxzRmllbGQ6IGZ1bmN0aW9uICh2YWx1ZSwgZmllbGQpIHtcbiAgICByZXR1cm4gdmFsdWUgPT0gdGhpc1tmaWVsZF07XG4gIH1cbn07XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdmRtRnNhV1JoZEdsdmJsSjFiR1Z6TG1weklpd2ljMjkxY21ObGN5STZXeUl2VlhObGNuTXZZMmh5YVhOMGFXRnVZV3htYjI1cEwwUnZZM1Z0Wlc1MGN5OWtaWFl2Wm05eWJYTjVMWEpsWVdOMEwzTnlZeTkyWVd4cFpHRjBhVzl1VW5Wc1pYTXVhbk1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFc1RVRkJUU3hEUVVGRExFOUJRVThzUjBGQlJ6dEZRVU5tTEZOQlFWTXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVNeFFpeFBRVUZQTEV0QlFVc3NTMEZCU3l4RlFVRkZMRU5CUVVNN1IwRkRja0k3UlVGRFJDeFRRVUZUTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRNVUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMSGswUWtGQmVUUkNMRU5CUVVNc1EwRkJRenRIUVVNdk5VSTdSVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3U1VGRGVrSXNUMEZCVHl4TFFVRkxMRXRCUVVzc1NVRkJTU3hEUVVGRE8wZEJRM1pDTzBWQlEwUXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8wbEJRelZDTEVsQlFVa3NUMEZCVHl4TFFVRkxMRXRCUVVzc1VVRkJVU3hGUVVGRk8wMUJRemRDTEU5QlFVOHNTVUZCU1N4RFFVRkRPMHRCUTJJc1RVRkJUVHROUVVOTUxFbEJRVWtzV1VGQldTeEhRVUZITEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc2JVSkJRVzFDTEVOQlFVTXNRMEZCUXp0TlFVTndSQ3hKUVVGSkxFTkJRVU1zUlVGQlJTeFpRVUZaTEVWQlFVVTdVVUZEYmtJc1QwRkJUeXhaUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NTMEZCU3l4RFFVRkRPMDlCUTJwRExFMUJRVTA3VVVGRFRDeFBRVUZQTEV0QlFVc3NRMEZCUXp0UFFVTmtPMHRCUTBZN1IwRkRSanRGUVVORUxGTkJRVk1zUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0SlFVTXhRaXhQUVVGUExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4RFFVRkRMRU5CUVVNN1IwRkRia003UlVGRFJDeFRRVUZUTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRNVUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1EwRkJReXhEUVVGRE8wZEJRM0pETzBWQlEwUXNaMEpCUVdkQ0xFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdTVUZEYWtNc1QwRkJUeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETERSQ1FVRTBRaXhEUVVGRExFTkJRVU03UjBGRGJFUTdSVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVVzUjBGQlJ5eEZRVUZGTEVkQlFVY3NSVUZCUlR0SlFVTnVReXhKUVVGSkxFZEJRVWNzUzBGQlN5eFRRVUZUTEVWQlFVVTdUVUZEY2tJc1QwRkJUeXhMUVVGTExFTkJRVU1zVFVGQlRTeEpRVUZKTEVkQlFVY3NTVUZCU1N4TFFVRkxMRU5CUVVNc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF6dExRVU51UkR0SlFVTkVMRTlCUVU4c1MwRkJTeXhEUVVGRExFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVTTdSMEZETlVJN1JVRkRSQ3hOUVVGTkxFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVXNSMEZCUnl4RlFVRkZPMGxCUXpWQ0xFOUJRVThzUzBGQlN5eEpRVUZKTEVkQlFVY3NRMEZCUXp0SFFVTnlRanRGUVVORUxGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlN4TFFVRkxMRVZCUVVVN1NVRkRia01zVDBGQlR5eExRVUZMTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wZEJRemRDTzBOQlEwWXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltMXZaSFZzWlM1bGVIQnZjblJ6SUQwZ2UxeHVJQ0FuYVhOV1lXeDFaU2M2SUdaMWJtTjBhVzl1SUNoMllXeDFaU2tnZTF4dUlDQWdJSEpsZEhWeWJpQjJZV3gxWlNBaFBUMGdKeWM3WEc0Z0lIMHNYRzRnSUNkcGMwVnRZV2xzSnpvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbExtMWhkR05vS0M5ZUtDZ29XMkV0ZWwxOFhGeGtmRnNoSTF4Y0pDVW1KMXhjS2x4Y0sxeGNMVnhjTHoxY1hEOWNYRjVmWUh0Y1hIeDlmbDE4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEt5aGNYQzRvVzJFdGVsMThYRnhrZkZzaEkxeGNKQ1VtSjF4Y0tseGNLMXhjTFZ4Y0x6MWNYRDljWEY1ZllIdGNYSHg5ZmwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLeWtxS1h3b0tGeGNlREl5S1Nnb0tDaGNYSGd5TUh4Y1hIZ3dPU2txS0Z4Y2VEQmtYRng0TUdFcEtUOG9YRng0TWpCOFhGeDRNRGtwS3lrL0tDaGJYRng0TURFdFhGeDRNRGhjWEhnd1lseGNlREJqWEZ4NE1HVXRYRng0TVdaY1hIZzNabDE4WEZ4NE1qRjhXMXhjZURJekxWeGNlRFZpWFh4YlhGeDROV1F0WEZ4NE4yVmRmRnRjWEhVd01FRXdMVnhjZFVRM1JrWmNYSFZHT1RBd0xWeGNkVVpFUTBaY1hIVkdSRVl3TFZ4Y2RVWkdSVVpkS1h3b1hGeGNYQ2hiWEZ4NE1ERXRYRng0TURsY1hIZ3dZbHhjZURCalhGeDRNR1F0WEZ4NE4yWmRmRnRjWEhVd01FRXdMVnhjZFVRM1JrWmNYSFZHT1RBd0xWeGNkVVpFUTBaY1hIVkdSRVl3TFZ4Y2RVWkdSVVpkS1NrcEtTb29LQ2hjWEhneU1IeGNYSGd3T1NrcUtGeGNlREJrWEZ4NE1HRXBLVDhvWEZ4NE1qQjhYRng0TURrcEt5ay9LRnhjZURJeUtTa3BRQ2dvS0Z0aExYcGRmRnhjWkh4YlhGeDFNREJCTUMxY1hIVkVOMFpHWEZ4MVJqa3dNQzFjWEhWR1JFTkdYRngxUmtSR01DMWNYSFZHUmtWR1hTbDhLQ2hiWVMxNlhYeGNYR1I4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEtGdGhMWHBkZkZ4Y1pId3RmRnhjTG54ZmZINThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS2loYllTMTZYWHhjWEdSOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLU2xjWEM0cEt5Z29XMkV0ZWwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBmQ2dvVzJFdGVsMThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS0Z0aExYcGRmRnhjWkh3dGZGeGNMbnhmZkg1OFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLaWhiWVMxNlhYeGJYRngxTURCQk1DMWNYSFZFTjBaR1hGeDFSamt3TUMxY1hIVkdSRU5HWEZ4MVJrUkdNQzFjWEhWR1JrVkdYU2twS1NRdmFTazdYRzRnSUgwc1hHNGdJQ2RwYzFSeWRXVW5PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1VnUFQwOUlIUnlkV1U3WEc0Z0lIMHNYRzRnSUNkcGMwNTFiV1Z5YVdNbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCcFppQW9kSGx3Wlc5bUlIWmhiSFZsSUQwOVBTQW5iblZ0WW1WeUp5a2dlMXh1SUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1U3WEc0Z0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lIWmhjaUJ0WVhSamFGSmxjM1ZzZEhNZ1BTQjJZV3gxWlM1dFlYUmphQ2d2V3kwclhUOG9YRnhrS2xzdVhTay9YRnhrS3k4cE8xeHVJQ0FnSUNBZ2FXWWdLQ0VoSUcxaGRHTm9VbVZ6ZFd4MGN5a2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdiV0YwWTJoU1pYTjFiSFJ6V3pCZElEMDlJSFpoYkhWbE8xeHVJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUdaaGJITmxPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNiaUFnZlN4Y2JpQWdKMmx6UVd4d2FHRW5PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YldGMFkyZ29MMTViWVMxNlFTMWFYU3NrTHlrN1hHNGdJSDBzWEc0Z0lDZHBjMWR2Y21Sekp6b2dablZ1WTNScGIyNGdLSFpoYkhWbEtTQjdYRzRnSUNBZ2NtVjBkWEp1SUhaaGJIVmxMbTFoZEdOb0tDOWVXMkV0ZWtFdFdseGNjMTBySkM4cE8xeHVJQ0I5TEZ4dUlDQW5hWE5UY0dWamFXRnNWMjl5WkhNbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVXViV0YwWTJnb0wxNWJZUzE2UVMxYVhGeHpYRngxTURCRE1DMWNYSFV3TVRkR1hTc2tMeWs3WEc0Z0lIMHNYRzRnSUdselRHVnVaM1JvT2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VzSUcxcGJpd2diV0Y0S1NCN1hHNGdJQ0FnYVdZZ0tHMWhlQ0FoUFQwZ2RXNWtaV1pwYm1Wa0tTQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YkdWdVozUm9JRDQ5SUcxcGJpQW1KaUIyWVd4MVpTNXNaVzVuZEdnZ1BEMGdiV0Y0TzF4dUlDQWdJSDFjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YkdWdVozUm9JRDQ5SUcxcGJqdGNiaUFnZlN4Y2JpQWdaWEYxWVd4ek9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVc0lHVnhiQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjJZV3gxWlNBOVBTQmxjV3c3WEc0Z0lIMHNYRzRnSUdWeGRXRnNjMFpwWld4a09pQm1kVzVqZEdsdmJpQW9kbUZzZFdVc0lHWnBaV3hrS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbElEMDlJSFJvYVhOYlptbGxiR1JkTzF4dUlDQjlYRzU5TzF4dUlsMTkiXX0= +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy9tYWluLmpzIiwiL1VzZXJzL2NocmlzdGlhbmFsZm9uaS9Eb2N1bWVudHMvZGV2L2Zvcm1zeS1yZWFjdC9zcmMvTWl4aW4uanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy91dGlscy5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3JjL3ZhbGlkYXRpb25SdWxlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7QUNBQSxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM3QyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7QUFDaEIsSUFBSSxlQUFlLEdBQUcsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFDdEQsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ2xDLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNsQyxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7O0FBRWpCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDOztBQUVyQixNQUFNLENBQUMsUUFBUSxHQUFHLFVBQVUsYUFBYSxFQUFFO0VBQ3pDLE9BQU8sR0FBRyxhQUFhLENBQUM7QUFDMUIsQ0FBQyxDQUFDOztBQUVGLE1BQU0sQ0FBQyxpQkFBaUIsR0FBRyxVQUFVLElBQUksRUFBRSxJQUFJLEVBQUU7RUFDL0MsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztBQUMvQixDQUFDLENBQUM7O0FBRUYsTUFBTSxDQUFD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LEVBQUUsVUFBVSxLQUFLLEVBQUU7SUFDMUIsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0dBQ25DO0VBQ0QsU0FBUyxFQUFFLFVBQVUsS0FBSyxFQUFFO0lBQzFCLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztHQUNyQztFQUNELGdCQUFnQixFQUFFLFVBQVUsS0FBSyxFQUFFO0lBQ2pDLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0dBQ2xEO0VBQ0QsUUFBUSxFQUFFLFVBQVUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUU7SUFDbkMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO01BQ3JCLE9BQU8sS0FBSyxDQUFDLE1BQU0sSUFBSSxHQUFHLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUM7S0FDbkQ7SUFDRCxPQUFPLEtBQUssQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDO0dBQzVCO0VBQ0QsTUFBTSxFQUFFLFVBQVUsS0FBSyxFQUFFLEdBQUcsRUFBRTtJQUM1QixPQUFPLEtBQUssSUFBSSxHQUFHLENBQUM7R0FDckI7RUFDRCxXQUFXLEVBQUUsVUFBVSxLQUFLLEVBQUUsS0FBSyxFQUFFO0lBQ25DLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztHQUM3QjtBQUNILENBQUMsQ0FBQzs7QUFFRiIsImZpbGUiOiJnZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiKGZ1bmN0aW9uIGUodCxuLHIpe2Z1bmN0aW9uIHMobyx1KXtpZighbltvXSl7aWYoIXRbb10pe3ZhciBhPXR5cGVvZiByZXF1aXJlPT1cImZ1bmN0aW9uXCImJnJlcXVpcmU7aWYoIXUmJmEpcmV0dXJuIGEobywhMCk7aWYoaSlyZXR1cm4gaShvLCEwKTt2YXIgZj1uZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiK28rXCInXCIpO3Rocm93IGYuY29kZT1cIk1PRFVMRV9OT1RfRk9VTkRcIixmfXZhciBsPW5bb109e2V4cG9ydHM6e319O3Rbb11bMF0uY2FsbChsLmV4cG9ydHMsZnVuY3Rpb24oZSl7dmFyIG49dFtvXVsxXVtlXTtyZXR1cm4gcyhuP246ZSl9LGwsbC5leHBvcnRzLGUsdCxuLHIpfXJldHVybiBuW29dLmV4cG9ydHN9dmFyIGk9dHlwZW9mIHJlcXVpcmU9PVwiZnVuY3Rpb25cIiYmcmVxdWlyZTtmb3IodmFyIG89MDtvPHIubGVuZ3RoO28rKylzKHJbb10pO3JldHVybiBzfSkiLCJ2YXIgUmVhY3QgPSBnbG9iYWwuUmVhY3QgfHwgcmVxdWlyZSgncmVhY3QnKTtcbnZhciBGb3Jtc3kgPSB7fTtcbnZhciB2YWxpZGF0aW9uUnVsZXMgPSByZXF1aXJlKCcuL3ZhbGlkYXRpb25SdWxlcy5qcycpO1xudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscy5qcycpO1xudmFyIE1peGluID0gcmVxdWlyZSgnLi9NaXhpbi5qcycpO1xudmFyIG9wdGlvbnMgPSB7fTtcblxuRm9ybXN5Lk1peGluID0gTWl4aW47XG5cbkZvcm1zeS5kZWZhdWx0cyA9IGZ1bmN0aW9uIChwYXNzZWRPcHRpb25zKSB7XG4gIG9wdGlvbnMgPSBwYXNzZWRPcHRpb25zO1xufTtcblxuRm9ybXN5LmFkZFZhbGlkYXRpb25SdWxlID0gZnVuY3Rpb24gKG5hbWUsIGZ1bmMpIHtcbiAgdmFsaWRhdGlvblJ1bGVzW25hbWVdID0gZnVuYztcbn07XG5cbkZvcm1zeS5Gb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIkZvcm1cIixcbiAgZ2V0SW5pdGlhbFN0YXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzVmFsaWQ6IHRydWUsXG4gICAgICBpc1N1Ym1pdHRpbmc6IGZhbHNlLFxuICAgICAgY2FuQ2hhbmdlOiBmYWxzZVxuICAgIH07XG4gIH0sXG4gIGdldERlZmF1bHRQcm9wczogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB7XG4gICAgICBoZWFkZXJzOiB7fSxcbiAgICAgIG9uU3VjY2VzczogZnVuY3Rpb24gKCkge30sXG4gICAgICBvbkVycm9yOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uU3VibWl0OiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uVmFsaWRTdWJtaXQ6IGZ1bmN0aW9uICgpIHt9LFxuICAgICAgb25JbnZhbGlkU3VibWl0OiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uU3VibWl0dGVkOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uVmFsaWQ6IGZ1bmN0aW9uICgpIHt9LFxuICAgICAgb25JbnZhbGlkOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiAoKSB7fVxuICAgIH07XG4gIH0sXG5cbiAgLy8gQWRkIGEgbWFwIHRvIHN0b3JlIHRoZSBpbnB1dHMgb2YgdGhlIGZvcm0sIGEgbW9kZWwgdG8gc3RvcmVcbiAgLy8gdGhlIHZhbHVlcyBvZiB0aGUgZm9ybSBhbmQgcmVnaXN0ZXIgY2hpbGQgaW5wdXRzXG4gIGNvbXBvbmVudFdpbGxNb3VudDogZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuaW5wdXRzID0ge307XG4gICAgdGhpcy5tb2RlbCA9IHt9O1xuICAgIHRoaXMucmVnaXN0ZXJJbnB1dHModGhpcy5wcm9wcy5jaGlsZHJlbik7XG4gIH0sXG5cbiAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnZhbGlkYXRlRm9ybSgpO1xuICB9LFxuXG4gIGNvbXBvbmVudFdpbGxVcGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgaW5wdXRLZXlzID0gT2JqZWN0LmtleXModGhpcy5pbnB1dHMpO1xuXG4gICAgLy8gVGhlIHVwZGF0ZWQgY2hpbGRyZW4gYXJyYXkgaXMgbm90IGF2YWlsYWJsZSBoZXJlIGZvciBzb21lIHJlYXNvbixcbiAgICAvLyB3ZSBuZWVkIHRvIHdhaXQgZm9yIG5leHQgZXZlbnQgbG9vcFxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXG4gICAgICAvLyBUaGUgY29tcG9uZW50IG1pZ2h0IGhhdmUgYmVlbiB1bm1vdW50ZWQgb24gYW5cbiAgICAgIC8vIHVwZGF0ZVxuICAgICAgaWYgKHRoaXMuaXNNb3VudGVkKCkpIHtcblxuICAgICAgICB0aGlzLnJlZ2lzdGVySW5wdXRzKHRoaXMucHJvcHMuY2hpbGRyZW4pO1xuXG4gICAgICAgaWYgKHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9ycykge1xuICAgICAgICAgIHRoaXMuc2V0SW5wdXRWYWxpZGF0aW9uRXJyb3JzKHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9ycyk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgbmV3SW5wdXRLZXlzID0gT2JqZWN0LmtleXModGhpcy5pbnB1dHMpO1xuICAgICAgICBpZiAodXRpbHMuYXJyYXlzRGlmZmVyKGlucHV0S2V5cywgbmV3SW5wdXRLZXlzKSkge1xuICAgICAgICAgIHRoaXMudmFsaWRhdGVGb3JtKCk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfS5iaW5kKHRoaXMpLCAwKTtcbiAgfSxcblxuICAvLyBVcGRhdGUgbW9kZWwsIHN1Ym1pdCB0byB1cmwgcHJvcCBhbmQgc2VuZCB0aGUgbW9kZWxcbiAgc3VibWl0OiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgLy8gVHJpZ2dlciBmb3JtIGFzIG5vdCBwcmlzdGluZS5cbiAgICAvLyBJZiBhbnkgaW5wdXRzIGhhdmUgbm90IGJlZW4gdG91Y2hlZCB5ZXQgdGhpcyB3aWxsIG1ha2UgdGhlbSBkaXJ0eVxuICAgIC8vIHNvIHZhbGlkYXRpb24gYmVjb21lcyB2aXNpYmxlIChpZiBiYXNlZCBvbiBpc1ByaXN0aW5lKVxuICAgIHRoaXMuc2V0Rm9ybVByaXN0aW5lKGZhbHNlKTtcblxuICAgIC8vIFRvIHN1cHBvcnQgdXNlIGNhc2VzIHdoZXJlIG5vIGFzeW5jIG9yIHJlcXVlc3Qgb3BlcmF0aW9uIGlzIG5lZWRlZC5cbiAgICAvLyBUaGUgXCJvblN1Ym1pdFwiIGNhbGxiYWNrIGlzIGNhbGxlZCB3aXRoIHRoZSBtb2RlbCBlLmcuIHtmaWVsZE5hbWU6IFwibXlWYWx1ZVwifSxcbiAgICAvLyBpZiB3YW50aW5nIHRvIHJlc2V0IHRoZSBlbnRpcmUgZm9ybSB0byBvcmlnaW5hbCBzdGF0ZSwgdGhlIHNlY29uZCBwYXJhbSBpcyBhIGNhbGxiYWNrIGZvciB0aGlzLlxuICAgIGlmICghdGhpcy5wcm9wcy51cmwpIHtcbiAgICAgIHRoaXMudXBkYXRlTW9kZWwoKTtcbiAgICAgIHZhciBtb2RlbCA9IHRoaXMubWFwTW9kZWwoKTtcbiAgICAgIHRoaXMucHJvcHMub25TdWJtaXQobW9kZWwsIHRoaXMucmVzZXRNb2RlbCwgdGhpcy51cGRhdGVJbnB1dHNXaXRoRXJyb3IpO1xuICAgICAgdGhpcy5zdGF0ZS5pc1ZhbGlkID8gdGhpcy5wcm9wcy5vblZhbGlkU3VibWl0KG1vZGVsLCB0aGlzLnJlc2V0TW9kZWwpIDogdGhpcy5wcm9wcy5vbkludmFsaWRTdWJtaXQobW9kZWwsIHRoaXMucmVzZXRNb2RlbCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVNb2RlbCgpO1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgaXNTdWJtaXR0aW5nOiB0cnVlXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzLm9uU3VibWl0KHRoaXMubWFwTW9kZWwoKSwgdGhpcy5yZXNldE1vZGVsLCB0aGlzLnVwZGF0ZUlucHV0c1dpdGhFcnJvcik7XG5cbiAgICB2YXIgaGVhZGVycyA9IChPYmplY3Qua2V5cyh0aGlzLnByb3BzLmhlYWRlcnMpLmxlbmd0aCAmJiB0aGlzLnByb3BzLmhlYWRlcnMpIHx8IG9wdGlvbnMuaGVhZGVycyB8fCB7fTtcblxuICAgIHZhciBtZXRob2QgPSB0aGlzLnByb3BzLm1ldGhvZCAmJiB1dGlscy5hamF4W3RoaXMucHJvcHMubWV0aG9kLnRvTG93ZXJDYXNlKCldID8gdGhpcy5wcm9wcy5tZXRob2QudG9Mb3dlckNhc2UoKSA6ICdwb3N0JztcbiAgICB1dGlscy5hamF4W21ldGhvZF0odGhpcy5wcm9wcy51cmwsIHRoaXMubWFwTW9kZWwoKSwgdGhpcy5wcm9wcy5jb250ZW50VHlwZSB8fCBvcHRpb25zLmNvbnRlbnRUeXBlIHx8ICdqc29uJywgaGVhZGVycylcbiAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkge1xuICAgICAgICB0aGlzLnByb3BzLm9uU3VjY2VzcyhyZXNwb25zZSk7XG4gICAgICAgIHRoaXMucHJvcHMub25TdWJtaXR0ZWQoKTtcbiAgICAgIH0uYmluZCh0aGlzKSlcbiAgICAgIC5jYXRjaCh0aGlzLmZhaWxTdWJtaXQpO1xuICB9LFxuXG4gIG1hcE1vZGVsOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubWFwcGluZyA/IHRoaXMucHJvcHMubWFwcGluZyh0aGlzLm1vZGVsKSA6IHRoaXMubW9kZWw7XG4gIH0sXG5cbiAgLy8gR29lcyB0aHJvdWdoIGFsbCByZWdpc3RlcmVkIGNvbXBvbmVudHMgYW5kXG4gIC8vIHVwZGF0ZXMgdGhlIG1vZGVsIHZhbHVlc1xuICB1cGRhdGVNb2RlbDogZnVuY3Rpb24gKCkge1xuICAgIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gdGhpcy5pbnB1dHNbbmFtZV07XG4gICAgICB0aGlzLm1vZGVsW25hbWVdID0gY29tcG9uZW50LnN0YXRlLl92YWx1ZTtcbiAgICB9LmJpbmQodGhpcykpO1xuICB9LFxuXG4gIC8vIFJlc2V0IGVhY2gga2V5IGluIHRoZSBtb2RlbCB0byB0aGUgb3JpZ2luYWwgLyBpbml0aWFsIHZhbHVlXG4gIHJlc2V0TW9kZWw6IGZ1bmN0aW9uICgpIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmlucHV0cykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdGhpcy5pbnB1dHNbbmFtZV0ucmVzZXRWYWx1ZSgpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gICAgdGhpcy52YWxpZGF0ZUZvcm0oKTtcbiAgfSxcblxuICBzZXRJbnB1dFZhbGlkYXRpb25FcnJvcnM6IGZ1bmN0aW9uIChlcnJvcnMpIHtcbiAgICAgT2JqZWN0LmtleXModGhpcy5pbnB1dHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gdGhpcy5pbnB1dHNbbmFtZV07XG4gICAgICB2YXIgYXJncyA9IFt7XG4gICAgICAgIF9pc1ZhbGlkOiAhKG5hbWUgaW4gZXJyb3JzKSxcbiAgICAgICAgX3NlcnZlckVycm9yOiBlcnJvcnNbbmFtZV1cbiAgICAgIH1dO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlLmFwcGx5KGNvbXBvbmVudCwgYXJncyk7XG4gICAgfS5iaW5kKHRoaXMpKTsgICBcbiAgfSxcblxuICAvLyBHbyB0aHJvdWdoIGVycm9ycyBmcm9tIHNlcnZlciBhbmQgZ3JhYiB0aGUgY29tcG9uZW50c1xuICAvLyBzdG9yZWQgaW4gdGhlIGlucHV0cyBtYXAuIENoYW5nZSB0aGVpciBzdGF0ZSB0byBpbnZhbGlkXG4gIC8vIGFuZCBzZXQgdGhlIHNlcnZlckVycm9yIG1lc3NhZ2VcbiAgdXBkYXRlSW5wdXRzV2l0aEVycm9yOiBmdW5jdGlvbiAoZXJyb3JzKSB7XG4gICAgT2JqZWN0LmtleXMoZXJyb3JzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuXG4gICAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBhcmUgdHJ5aW5nIHRvIHVwZGF0ZSBhbiBpbnB1dCB0aGF0IGRvZXMgbm90IGV4aXN0cy4gVmVyaWZ5IGVycm9ycyBvYmplY3Qgd2l0aCBpbnB1dCBuYW1lcy4gJyArIEpTT04uc3RyaW5naWZ5KGVycm9ycykpO1xuICAgICAgfVxuXG4gICAgICB2YXIgYXJncyA9IFt7XG4gICAgICAgIF9pc1ZhbGlkOiBmYWxzZSxcbiAgICAgICAgX3NlcnZlckVycm9yOiBlcnJvcnNbbmFtZV1cbiAgICAgIH1dO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlLmFwcGx5KGNvbXBvbmVudCwgYXJncyk7XG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcblxuICBmYWlsU3VibWl0OiBmdW5jdGlvbiAoZXJyb3JzKSB7XG4gICAgdGhpcy51cGRhdGVJbnB1dHNXaXRoRXJyb3IoZXJyb3JzKTtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGlzU3VibWl0dGluZzogZmFsc2VcbiAgICB9KTtcbiAgICB0aGlzLnByb3BzLm9uRXJyb3IoZXJyb3JzKTtcbiAgICB0aGlzLnByb3BzLm9uU3VibWl0dGVkKCk7XG4gIH0sXG5cbiAgLy8gVHJhdmVyc2UgdGhlIGNoaWxkcmVuIGFuZCBjaGlsZHJlbiBvZiBjaGlsZHJlbiB0byBmaW5kXG4gIC8vIGFsbCBpbnB1dHMgYnkgY2hlY2tpbmcgdGhlIG5hbWUgcHJvcC4gTWF5YmUgZG8gYSBiZXR0ZXJcbiAgLy8gY2hlY2sgaGVyZVxuICByZWdpc3RlcklucHV0czogZnVuY3Rpb24gKGNoaWxkcmVuKSB7XG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkKSB7XG5cbiAgICAgIGlmIChjaGlsZCAmJiBjaGlsZC5wcm9wcyAmJiBjaGlsZC5wcm9wcy5uYW1lKSB7XG4gICAgICAgIGNoaWxkLnByb3BzLl9hdHRhY2hUb0Zvcm0gPSB0aGlzLmF0dGFjaFRvRm9ybTtcbiAgICAgICAgY2hpbGQucHJvcHMuX2RldGFjaEZyb21Gb3JtID0gdGhpcy5kZXRhY2hGcm9tRm9ybTtcbiAgICAgICAgY2hpbGQucHJvcHMuX3ZhbGlkYXRlID0gdGhpcy52YWxpZGF0ZTtcbiAgICAgICAgY2hpbGQucHJvcHMuX2lzRm9ybURpc2FibGVkID0gdGhpcy5pc0Zvcm1EaXNhYmxlZDtcbiAgICAgICAgY2hpbGQucHJvcHMuX2lzVmFsaWRWYWx1ZSA9IHRoaXMucnVuVmFsaWRhdGlvbjtcbiAgICAgIH1cblxuICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLnByb3BzICYmIGNoaWxkLnByb3BzLmNoaWxkcmVuKSB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJJbnB1dHMoY2hpbGQucHJvcHMuY2hpbGRyZW4pO1xuICAgICAgfVxuXG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcblxuICBpc0Zvcm1EaXNhYmxlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmRpc2FibGVkO1xuICB9LFxuXG4gIGdldEN1cnJlbnRWYWx1ZXM6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5pbnB1dHMpLnJlZHVjZShmdW5jdGlvbiAoZGF0YSwgbmFtZSkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuICAgICAgZGF0YVtuYW1lXSA9IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9LmJpbmQodGhpcyksIHt9KTtcbiAgfSxcblxuICBzZXRGb3JtUHJpc3RpbmU6IGZ1bmN0aW9uIChpc1ByaXN0aW5lKSB7XG4gICAgdmFyIGlucHV0cyA9IHRoaXMuaW5wdXRzO1xuICAgIHZhciBpbnB1dEtleXMgPSBPYmplY3Qua2V5cyhpbnB1dHMpO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggY29tcG9uZW50IGFuZCBzZXQgaXQgYXMgcHJpc3RpbmVcbiAgICAvLyBvciBcImRpcnR5XCIuXG4gICAgaW5wdXRLZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gaW5wdXRzW25hbWVdO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlKHtcbiAgICAgICAgX2lzUHJpc3RpbmU6IGlzUHJpc3RpbmVcbiAgICAgIH0pO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG5cbiAgLy8gVXNlIHRoZSBiaW5kZWQgdmFsdWVzIGFuZCB0aGUgYWN0dWFsIGlucHV0IHZhbHVlIHRvXG4gIC8vIHZhbGlkYXRlIHRoZSBpbnB1dCBhbmQgc2V0IGl0cyBzdGF0ZS4gVGhlbiBjaGVjayB0aGVcbiAgLy8gc3RhdGUgb2YgdGhlIGZvcm0gaXRzZWxmXG4gIHZhbGlkYXRlOiBmdW5jdGlvbiAoY29tcG9uZW50KSB7XG5cbiAgICAvLyBUcmlnZ2VyIG9uQ2hhbmdlXG4gICAgaWYgKHRoaXMuc3RhdGUuY2FuQ2hhbmdlKSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKHRoaXMuZ2V0Q3VycmVudFZhbHVlcygpKTtcbiAgICB9XG5cbiAgICB2YXIgaXNWYWxpZCA9IHRydWU7XG4gICAgaWYgKGNvbXBvbmVudC52YWxpZGF0ZSAmJiB0eXBlb2YgY29tcG9uZW50LnZhbGlkYXRlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBpc1ZhbGlkID0gY29tcG9uZW50LnZhbGlkYXRlKCk7XG4gICAgfSBlbHNlIGlmIChjb21wb25lbnQucHJvcHMucmVxdWlyZWQgfHwgY29tcG9uZW50Ll92YWxpZGF0aW9ucykge1xuICAgICAgaXNWYWxpZCA9IHRoaXMucnVuVmFsaWRhdGlvbihjb21wb25lbnQpO1xuICAgIH1cblxuICAgIC8vIFJ1biB0aHJvdWdoIHRoZSB2YWxpZGF0aW9ucywgc3BsaXQgdGhlbSB1cCBhbmQgY2FsbFxuICAgIC8vIHRoZSB2YWxpZGF0b3IgSUYgdGhlcmUgaXMgYSB2YWx1ZSBvciBpdCBpcyByZXF1aXJlZFxuICAgIGNvbXBvbmVudC5zZXRTdGF0ZSh7XG4gICAgICBfaXNWYWxpZDogaXNWYWxpZCxcbiAgICAgIF9zZXJ2ZXJFcnJvcjogbnVsbFxuICAgIH0sIHRoaXMudmFsaWRhdGVGb3JtKTtcblxuICB9LFxuXG4gIC8vIENoZWNrcyB2YWxpZGF0aW9uIG9uIGN1cnJlbnQgdmFsdWUgb3IgYSBwYXNzZWQgdmFsdWVcbiAgcnVuVmFsaWRhdGlvbjogZnVuY3Rpb24gKGNvbXBvbmVudCwgdmFsdWUpIHtcblxuICAgIHZhciBpc1ZhbGlkID0gdHJ1ZTtcbiAgICBcbiAgICB2YWx1ZSA9IGFyZ3VtZW50cy5sZW5ndGggPT09IDIgPyB2YWx1ZSA6IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgaWYgKGNvbXBvbmVudC5fdmFsaWRhdGlvbnMubGVuZ3RoICYmIChjb21wb25lbnQucHJvcHMucmVxdWlyZWQgfHwgdmFsdWUgIT09ICcnKSkge1xuICAgICAgY29tcG9uZW50Ll92YWxpZGF0aW9ucy5zcGxpdCgvXFwsKD8hW157XFxbXSpbfVxcXV0pL2cpLmZvckVhY2goZnVuY3Rpb24gKHZhbGlkYXRpb24pIHtcbiAgICAgICAgdmFyIGFyZ3MgPSB2YWxpZGF0aW9uLnNwbGl0KCc6Jyk7XG4gICAgICAgIHZhciB2YWxpZGF0ZU1ldGhvZCA9IGFyZ3Muc2hpZnQoKTtcbiAgICAgICAgYXJncyA9IGFyZ3MubWFwKGZ1bmN0aW9uIChhcmcpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoYXJnKTtcbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZXR1cm4gYXJnOyAvLyBJdCBpcyBhIHN0cmluZyBpZiBpdCBjYW4gbm90IHBhcnNlIGl0XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgYXJncyA9IFt2YWx1ZV0uY29uY2F0KGFyZ3MpO1xuICAgICAgICBpZiAoIXZhbGlkYXRpb25SdWxlc1t2YWxpZGF0ZU1ldGhvZF0pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Zvcm1zeSBkb2VzIG5vdCBoYXZlIHRoZSB2YWxpZGF0aW9uIHJ1bGU6ICcgKyB2YWxpZGF0ZU1ldGhvZCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF2YWxpZGF0aW9uUnVsZXNbdmFsaWRhdGVNZXRob2RdLmFwcGx5KHRoaXMuZ2V0Q3VycmVudFZhbHVlcygpLCBhcmdzKSkge1xuICAgICAgICAgIGlzVmFsaWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfS5iaW5kKHRoaXMpKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBjb21wb25lbnQuY2hlY2tWYWxpZGl0eSA9PT0gXCJmdW5jdGlvblwiKSB7XG4gICAgICAvLyB0aGUgY29tcG9uZW50IGRlZmluZXMgYW4gZXhwbGljaXQgY2hlY2tWYWxpZGl0eSBmdW5jdGlvblxuICAgICAgaXNWYWxpZCA9IGNvbXBvbmVudC5jaGVja1ZhbGlkaXR5KClcbiAgICB9XG5cbiAgICByZXR1cm4gaXNWYWxpZDtcbiAgfSxcblxuICAvLyBWYWxpZGF0ZSB0aGUgZm9ybSBieSBnb2luZyB0aHJvdWdoIGFsbCBjaGlsZCBpbnB1dCBjb21wb25lbnRzXG4gIC8vIGFuZCBjaGVjayB0aGVpciBzdGF0ZVxuICB2YWxpZGF0ZUZvcm06IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgYWxsSXNWYWxpZCA9IHRydWU7XG4gICAgdmFyIGlucHV0cyA9IHRoaXMuaW5wdXRzO1xuICAgIHZhciBpbnB1dEtleXMgPSBPYmplY3Qua2V5cyhpbnB1dHMpO1xuXG4gICAgLy8gV2UgbmVlZCBhIGNhbGxiYWNrIGFzIHdlIGFyZSB2YWxpZGF0aW5nIGFsbCBpbnB1dHMgYWdhaW4uIFRoaXMgd2lsbFxuICAgIC8vIHJ1biB3aGVuIHRoZSBsYXN0IGNvbXBvbmVudCBoYXMgc2V0IGl0cyBzdGF0ZVxuICAgIHZhciBvblZhbGlkYXRpb25Db21wbGV0ZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIGlucHV0S2V5cy5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICAgIGlmICghaW5wdXRzW25hbWVdLnN0YXRlLl9pc1ZhbGlkKSB7XG4gICAgICAgICAgYWxsSXNWYWxpZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9LmJpbmQodGhpcykpO1xuXG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgaXNWYWxpZDogYWxsSXNWYWxpZFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChhbGxJc1ZhbGlkKSB7XG4gICAgICAgIHRoaXMucHJvcHMub25WYWxpZCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5wcm9wcy5vbkludmFsaWQoKTtcbiAgICAgIH1cblxuICAgICAgLy8gVGVsbCB0aGUgZm9ybSB0aGF0IGl0IGNhbiBzdGFydCB0byB0cmlnZ2VyIGNoYW5nZSBldmVudHNcbiAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICBjYW5DaGFuZ2U6IHRydWVcbiAgICAgIH0pO1xuXG4gICAgfS5iaW5kKHRoaXMpO1xuXG4gICAgLy8gUnVuIHZhbGlkYXRpb24gYWdhaW4gaW4gY2FzZSBhZmZlY3RlZCBieSBvdGhlciBpbnB1dHMuIFRoZVxuICAgIC8vIGxhc3QgY29tcG9uZW50IHZhbGlkYXRlZCB3aWxsIHJ1biB0aGUgb25WYWxpZGF0aW9uQ29tcGxldGUgY2FsbGJhY2tcbiAgICBpbnB1dEtleXMuZm9yRWFjaChmdW5jdGlvbiAobmFtZSwgaW5kZXgpIHtcbiAgICAgIHZhciBjb21wb25lbnQgPSBpbnB1dHNbbmFtZV07XG4gICAgICB2YXIgaXNWYWxpZCA9IHRoaXMucnVuVmFsaWRhdGlvbihjb21wb25lbnQpO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlKHtcbiAgICAgICAgX2lzVmFsaWQ6IGlzVmFsaWQsXG4gICAgICAgIF9zZXJ2ZXJFcnJvcjogbnVsbFxuICAgICAgfSwgaW5kZXggPT09IGlucHV0S2V5cy5sZW5ndGggLSAxID8gb25WYWxpZGF0aW9uQ29tcGxldGUgOiBudWxsKTtcbiAgICB9LmJpbmQodGhpcykpO1xuXG4gICAgLy8gSWYgdGhlcmUgYXJlIG5vIGlucHV0cywgc2V0IHN0YXRlIHdoZXJlIGZvcm0gaXMgcmVhZHkgdG8gdHJpZ2dlclxuICAgIC8vIGNoYW5nZSBldmVudC4gTmV3IGlucHV0cyBtaWdodCBiZSBhZGRlZCBsYXRlclxuICAgIGlmICghaW5wdXRLZXlzLmxlbmd0aCAmJiB0aGlzLmlzTW91bnRlZCgpKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgY2FuQ2hhbmdlOiB0cnVlXG4gICAgICB9KTtcbiAgICB9XG4gIH0sXG5cbiAgLy8gTWV0aG9kIHB1dCBvbiBlYWNoIGlucHV0IGNvbXBvbmVudCB0byByZWdpc3RlclxuICAvLyBpdHNlbGYgdG8gdGhlIGZvcm1cbiAgYXR0YWNoVG9Gb3JtOiBmdW5jdGlvbiAoY29tcG9uZW50KSB7XG4gICAgdGhpcy5pbnB1dHNbY29tcG9uZW50LnByb3BzLm5hbWVdID0gY29tcG9uZW50O1xuICAgIHRoaXMubW9kZWxbY29tcG9uZW50LnByb3BzLm5hbWVdID0gY29tcG9uZW50LnN0YXRlLl92YWx1ZTtcbiAgICB0aGlzLnZhbGlkYXRlKGNvbXBvbmVudCk7XG4gIH0sXG5cbiAgLy8gTWV0aG9kIHB1dCBvbiBlYWNoIGlucHV0IGNvbXBvbmVudCB0byB1bnJlZ2lzdGVyXG4gIC8vIGl0c2VsZiBmcm9tIHRoZSBmb3JtXG4gIGRldGFjaEZyb21Gb3JtOiBmdW5jdGlvbiAoY29tcG9uZW50KSB7XG4gICAgZGVsZXRlIHRoaXMuaW5wdXRzW2NvbXBvbmVudC5wcm9wcy5uYW1lXTtcbiAgICBkZWxldGUgdGhpcy5tb2RlbFtjb21wb25lbnQucHJvcHMubmFtZV07XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuXG4gICAgcmV0dXJuIFJlYWN0LkRPTS5mb3JtKHtcbiAgICAgICAgb25TdWJtaXQ6IHRoaXMuc3VibWl0LFxuICAgICAgICBjbGFzc05hbWU6IHRoaXMucHJvcHMuY2xhc3NOYW1lXG4gICAgICB9LFxuICAgICAgdGhpcy5wcm9wcy5jaGlsZHJlblxuICAgICk7XG5cbiAgfVxufSk7XG5cbmlmICghZ2xvYmFsLmV4cG9ydHMgJiYgIWdsb2JhbC5tb2R1bGUgJiYgKCFnbG9iYWwuZGVmaW5lIHx8ICFnbG9iYWwuZGVmaW5lLmFtZCkpIHtcbiAgZ2xvYmFsLkZvcm1zeSA9IEZvcm1zeTtcbn1cblxubW9kdWxlLmV4cG9ydHMgPSBGb3Jtc3k7XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdmJXRnBiaTVxY3lJc0luTnZkWEpqWlhNaU9sc2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZiV0ZwYmk1cWN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaVFVRkJRU3hKUVVGSkxFdEJRVXNzUjBGQlJ5eE5RVUZOTEVOQlFVTXNTMEZCU3l4SlFVRkpMRTlCUVU4c1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dEJRVU0zUXl4SlFVRkpMRTFCUVUwc1IwRkJSeXhGUVVGRkxFTkJRVU03UVVGRGFFSXNTVUZCU1N4bFFVRmxMRWRCUVVjc1QwRkJUeXhEUVVGRExITkNRVUZ6UWl4RFFVRkRMRU5CUVVNN1FVRkRkRVFzU1VGQlNTeExRVUZMTEVkQlFVY3NUMEZCVHl4RFFVRkRMRmxCUVZrc1EwRkJReXhEUVVGRE8wRkJRMnhETEVsQlFVa3NTMEZCU3l4SFFVRkhMRTlCUVU4c1EwRkJReXhaUVVGWkxFTkJRVU1zUTBGQlF6dEJRVU5zUXl4SlFVRkpMRTlCUVU4c1IwRkJSeXhGUVVGRkxFTkJRVU03TzBGQlJXcENMRTFCUVUwc1EwRkJReXhMUVVGTExFZEJRVWNzUzBGQlN5eERRVUZET3p0QlFVVnlRaXhOUVVGTkxFTkJRVU1zVVVGQlVTeEhRVUZITEZWQlFWVXNZVUZCWVN4RlFVRkZPMFZCUTNwRExFOUJRVThzUjBGQlJ5eGhRVUZoTEVOQlFVTTdRVUZETVVJc1EwRkJReXhEUVVGRE96dEJRVVZHTEUxQlFVMHNRMEZCUXl4cFFrRkJhVUlzUjBGQlJ5eFZRVUZWTEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVN1JVRkRMME1zWlVGQlpTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRWxCUVVrc1EwRkJRenRCUVVNdlFpeERRVUZETEVOQlFVTTdPMEZCUlVZc2FVTkJRV2xETEc5Q1FVRkJPMFZCUXk5Q0xHVkJRV1VzUlVGQlJTeFpRVUZaTzBsQlF6TkNMRTlCUVU4N1RVRkRUQ3hQUVVGUExFVkJRVVVzU1VGQlNUdE5RVU5pTEZsQlFWa3NSVUZCUlN4TFFVRkxPMDFCUTI1Q0xGTkJRVk1zUlVGQlJTeExRVUZMTzB0QlEycENMRU5CUVVNN1IwRkRTRHRGUVVORUxHVkJRV1VzUlVGQlJTeFpRVUZaTzBsQlF6TkNMRTlCUVU4N1RVRkRUQ3hQUVVGUExFVkJRVVVzUlVGQlJUdE5RVU5ZTEZOQlFWTXNSVUZCUlN4WlFVRlpMRVZCUVVVN1RVRkRla0lzVDBGQlR5eEZRVUZGTEZsQlFWa3NSVUZCUlR0TlFVTjJRaXhSUVVGUkxFVkJRVVVzV1VGQldTeEZRVUZGTzAxQlEzaENMR0ZCUVdFc1JVRkJSU3haUVVGWkxFVkJRVVU3VFVGRE4wSXNaVUZCWlN4RlFVRkZMRmxCUVZrc1JVRkJSVHROUVVNdlFpeFhRVUZYTEVWQlFVVXNXVUZCV1N4RlFVRkZPMDFCUXpOQ0xFOUJRVThzUlVGQlJTeFpRVUZaTEVWQlFVVTdUVUZEZGtJc1UwRkJVeXhGUVVGRkxGbEJRVmtzUlVGQlJUdE5RVU42UWl4UlFVRlJMRVZCUVVVc1dVRkJXU3hGUVVGRk8wdEJRM3BDTEVOQlFVTTdRVUZEVGl4SFFVRkhPMEZCUTBnN1FVRkRRVHM3UlVGRlJTeHJRa0ZCYTBJc1JVRkJSU3haUVVGWk8wbEJRemxDTEVsQlFVa3NRMEZCUXl4TlFVRk5MRWRCUVVjc1JVRkJSU3hEUVVGRE8wbEJRMnBDTEVsQlFVa3NRMEZCUXl4TFFVRkxMRWRCUVVjc1JVRkJSU3hEUVVGRE8wbEJRMmhDTEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXp0QlFVTTNReXhIUVVGSE96dEZRVVZFTEdsQ1FVRnBRaXhGUVVGRkxGbEJRVms3U1VGRE4wSXNTVUZCU1N4RFFVRkRMRmxCUVZrc1JVRkJSU3hEUVVGRE8wRkJRM2hDTEVkQlFVYzdPMFZCUlVRc2JVSkJRVzFDTEVWQlFVVXNXVUZCV1R0QlFVTnVReXhKUVVGSkxFbEJRVWtzVTBGQlV5eEhRVUZITEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzBGQlF6ZERPMEZCUTBFN08wRkJSVUVzU1VGQlNTeFZRVUZWTEVOQlFVTXNXVUZCV1R0QlFVTXpRanRCUVVOQk96dEJRVVZCTEUxQlFVMHNTVUZCU1N4SlFVRkpMRU5CUVVNc1UwRkJVeXhGUVVGRkxFVkJRVVU3TzBGQlJUVkNMRkZCUVZFc1NVRkJTU3hEUVVGRExHTkJRV01zUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE96dFBRVVV4UXl4SlFVRkpMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWjBKQlFXZENMRVZCUVVVN1ZVRkRPVUlzU1VGQlNTeERRVUZETEhkQ1FVRjNRaXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNaMEpCUVdkQ0xFTkJRVU1zUTBGQlF6dEJRVU55UlN4VFFVRlRPenRSUVVWRUxFbEJRVWtzV1VGQldTeEhRVUZITEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETzFGQlF6VkRMRWxCUVVrc1MwRkJTeXhEUVVGRExGbEJRVmtzUTBGQlF5eFRRVUZUTEVWQlFVVXNXVUZCV1N4RFFVRkRMRVZCUVVVN1ZVRkRMME1zU1VGQlNTeERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRPMEZCUXpsQ0xGTkJRVk03TzBGQlJWUXNUMEZCVHpzN1MwRkZSaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOeVFpeEhRVUZITzBGQlEwZzdPMFZCUlVVc1RVRkJUU3hGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzBGQlF6TkNMRWxCUVVrc1MwRkJTeXhEUVVGRExHTkJRV01zUlVGQlJTeERRVUZETzBGQlF6TkNPMEZCUTBFN1FVRkRRVHM3UVVGRlFTeEpRVUZKTEVsQlFVa3NRMEZCUXl4bFFVRmxMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03UVVGRGFFTTdRVUZEUVR0QlFVTkJPenRKUVVWSkxFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWRCUVVjc1JVRkJSVHROUVVOdVFpeEpRVUZKTEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNN1RVRkRia0lzU1VGQlNTeExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hEUVVGRE8wMUJRelZDTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRWxCUVVrc1EwRkJReXh4UWtGQmNVSXNRMEZCUXl4RFFVRkRPMDFCUTNoRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETEV0QlFVc3NSVUZCUlN4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNc1MwRkJTeXhGUVVGRkxFbEJRVWtzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0TlFVTXpTQ3hQUVVGUE8wRkJRMklzUzBGQlN6czdTVUZGUkN4SlFVRkpMRU5CUVVNc1YwRkJWeXhGUVVGRkxFTkJRVU03U1VGRGJrSXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJRenROUVVOYUxGbEJRVmtzUlVGQlJTeEpRVUZKTzBGQlEzaENMRXRCUVVzc1EwRkJReXhEUVVGRE96dEJRVVZRTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkZMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzU1VGQlNTeERRVUZETEhGQ1FVRnhRaXhEUVVGRExFTkJRVU03TzBGQlJYUkdMRWxCUVVrc1NVRkJTU3hQUVVGUExFZEJRVWNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNUVUZCVFN4SlFVRkpMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eExRVUZMTEU5QlFVOHNRMEZCUXl4UFFVRlBMRWxCUVVrc1JVRkJSU3hEUVVGRE96dEpRVVYwUnl4SlFVRkpMRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRMRmRCUVZjc1JVRkJSU3hEUVVGRExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1YwRkJWeXhGUVVGRkxFZEJRVWNzVFVGQlRTeERRVUZETzBsQlEzcElMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhIUVVGSExFVkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVjBGQlZ5eEpRVUZKTEU5QlFVOHNRMEZCUXl4WFFVRlhMRWxCUVVrc1RVRkJUU3hGUVVGRkxFOUJRVThzUTBGQlF6dFBRVU5zU0N4SlFVRkpMRU5CUVVNc1ZVRkJWU3hSUVVGUkxFVkJRVVU3VVVGRGVFSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTTdVVUZETDBJc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXp0UFFVTXhRaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0UFFVTmFMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTTdRVUZET1VJc1IwRkJSenM3UlVGRlJDeFJRVUZSTEVWQlFVVXNXVUZCV1R0SlFVTndRaXhQUVVGUExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETzBGQlF6VkZMRWRCUVVjN1FVRkRTRHRCUVVOQk96dEZRVVZGTEZkQlFWY3NSVUZCUlN4WlFVRlpPMGxCUTNaQ0xFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFOUJRVThzUTBGQlF5eFZRVUZWTEVsQlFVa3NSVUZCUlR0TlFVTXZReXhKUVVGSkxGTkJRVk1zUjBGQlJ5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wMUJRMnhETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNN1MwRkRNME1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOc1FpeEhRVUZITzBGQlEwZzdPMFZCUlVVc1ZVRkJWU3hGUVVGRkxGbEJRVms3U1VGRGRFSXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRlZCUVZVc1NVRkJTU3hGUVVGRk8wMUJReTlETEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTTdTMEZEYUVNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTmtMRWxCUVVrc1EwRkJReXhaUVVGWkxFVkJRVVVzUTBGQlF6dEJRVU40UWl4SFFVRkhPenRGUVVWRUxIZENRVUYzUWl4RlFVRkZMRlZCUVZVc1RVRkJUU3hGUVVGRk8wdEJRM3BETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4VlFVRlZMRWxCUVVrc1JVRkJSU3hMUVVGTExFVkJRVVU3VFVGRGRrUXNTVUZCU1N4VFFVRlRMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TlFVTnNReXhKUVVGSkxFbEJRVWtzUjBGQlJ5eERRVUZETzFGQlExWXNVVUZCVVN4RlFVRkZMRVZCUVVVc1NVRkJTU3hKUVVGSkxFMUJRVTBzUTBGQlF6dFJRVU16UWl4WlFVRlpMRVZCUVVVc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF6dFBRVU16UWl4RFFVRkRMRU5CUVVNN1RVRkRTQ3hUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRVZCUVVVc1NVRkJTU3hEUVVGRExFTkJRVU03UzBGRE0wTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU5zUWl4SFFVRkhPMEZCUTBnN1FVRkRRVHRCUVVOQk96dEZRVVZGTEhGQ1FVRnhRaXhGUVVGRkxGVkJRVlVzVFVGQlRTeEZRVUZGTzBsQlEzWkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRlZCUVZVc1NVRkJTU3hGUVVGRkxFdEJRVXNzUlVGQlJUdEJRVU4yUkN4TlFVRk5MRWxCUVVrc1UwRkJVeXhIUVVGSExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN08wMUJSV3hETEVsQlFVa3NRMEZCUXl4VFFVRlRMRVZCUVVVN1VVRkRaQ3hOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETEdsSFFVRnBSeXhIUVVGSExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOd1NpeFBRVUZQT3p0TlFVVkVMRWxCUVVrc1NVRkJTU3hIUVVGSExFTkJRVU03VVVGRFZpeFJRVUZSTEVWQlFVVXNTMEZCU3p0UlFVTm1MRmxCUVZrc1JVRkJSU3hOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETzA5QlF6TkNMRU5CUVVNc1EwRkJRenROUVVOSUxGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGQlF6dExRVU16UXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEyeENMRWRCUVVjN08wVkJSVVFzVlVGQlZTeEZRVUZGTEZWQlFWVXNUVUZCVFN4RlFVRkZPMGxCUXpWQ0xFbEJRVWtzUTBGQlF5eHhRa0ZCY1VJc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVU51UXl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRE8wMUJRMW9zV1VGQldTeEZRVUZGTEV0QlFVczdTMEZEY0VJc1EwRkJReXhEUVVGRE8wbEJRMGdzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU03U1VGRE0wSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhYUVVGWExFVkJRVVVzUTBGQlF6dEJRVU0zUWl4SFFVRkhPMEZCUTBnN1FVRkRRVHRCUVVOQk96dEZRVVZGTEdOQlFXTXNSVUZCUlN4VlFVRlZMRkZCUVZFc1JVRkJSVHRCUVVOMFF5eEpRVUZKTEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1QwRkJUeXhEUVVGRExGRkJRVkVzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlRzN1RVRkZhRVFzU1VGQlNTeExRVUZMTEVsQlFVa3NTMEZCU3l4RFFVRkRMRXRCUVVzc1NVRkJTU3hMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NSVUZCUlR0UlFVTTFReXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEdGQlFXRXNSMEZCUnl4SlFVRkpMRU5CUVVNc1dVRkJXU3hEUVVGRE8xRkJRemxETEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hIUVVGSExFbEJRVWtzUTBGQlF5eGpRVUZqTEVOQlFVTTdVVUZEYkVRc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVkQlFVY3NTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJRenRSUVVOMFF5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1IwRkJSeXhKUVVGSkxFTkJRVU1zWTBGQll5eERRVUZETzFGQlEyeEVMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeEhRVUZITEVsQlFVa3NRMEZCUXl4aFFVRmhMRU5CUVVNN1FVRkRka1FzVDBGQlR6czdUVUZGUkN4SlFVRkpMRXRCUVVzc1NVRkJTU3hMUVVGTExFTkJRVU1zUzBGQlN5eEpRVUZKTEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hGUVVGRk8xRkJRMmhFTEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXp0QlFVTnNSQ3hQUVVGUE96dExRVVZHTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRGJFSXNSMEZCUnpzN1JVRkZSQ3hqUVVGakxFVkJRVVVzV1VGQldUdEpRVU14UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETzBGQlF5OUNMRWRCUVVjN08wVkJSVVFzWjBKQlFXZENMRVZCUVVVc1dVRkJXVHRKUVVNMVFpeFBRVUZQTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4VlFVRlZMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVU3VFVGRE0wUXNTVUZCU1N4VFFVRlRMRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TlFVTnNReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03VFVGRGNFTXNUMEZCVHl4SlFVRkpMRU5CUVVNN1MwRkRZaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJRenRCUVVOMFFpeEhRVUZIT3p0RlFVVkVMR1ZCUVdVc1JVRkJSU3hWUVVGVkxGVkJRVlVzUlVGQlJUdEpRVU55UXl4SlFVRkpMRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETzBGQlF6ZENMRWxCUVVrc1NVRkJTU3hUUVVGVExFZEJRVWNzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRCUVVONFF6dEJRVU5CT3p0SlFVVkpMRk5CUVZNc1EwRkJReXhQUVVGUExFTkJRVU1zVlVGQlZTeEpRVUZKTEVWQlFVVXNTMEZCU3l4RlFVRkZPMDFCUTNaRExFbEJRVWtzVTBGQlV5eEhRVUZITEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenROUVVNM1FpeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRPMUZCUTJwQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTzA5QlEzaENMRU5CUVVNc1EwRkJRenRMUVVOS0xFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRiRUlzUjBGQlJ6dEJRVU5JTzBGQlEwRTdRVUZEUVRzN1FVRkZRU3hGUVVGRkxGRkJRVkVzUlVGQlJTeFZRVUZWTEZOQlFWTXNSVUZCUlR0QlFVTnFRenM3U1VGRlNTeEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVeXhGUVVGRk8wMUJRM2hDTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eG5Ra0ZCWjBJc1JVRkJSU3hEUVVGRExFTkJRVU03UVVGRGJrUXNTMEZCU3pzN1NVRkZSQ3hKUVVGSkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTTdTVUZEYmtJc1NVRkJTU3hUUVVGVExFTkJRVU1zVVVGQlVTeEpRVUZKTEU5QlFVOHNVMEZCVXl4RFFVRkRMRkZCUVZFc1MwRkJTeXhWUVVGVkxFVkJRVVU3VFVGRGJFVXNUMEZCVHl4SFFVRkhMRk5CUVZNc1EwRkJReXhSUVVGUkxFVkJRVVVzUTBGQlF6dExRVU5vUXl4TlFVRk5MRWxCUVVrc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVsQlFVa3NVMEZCVXl4RFFVRkRMRmxCUVZrc1JVRkJSVHROUVVNM1JDeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMR0ZCUVdFc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dEJRVU01UXl4TFFVRkxPMEZCUTB3N1FVRkRRVHM3U1VGRlNTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTJwQ0xGRkJRVkVzUlVGQlJTeFBRVUZQTzAxQlEycENMRmxCUVZrc1JVRkJSU3hKUVVGSk8wRkJRM2hDTEV0QlFVc3NSVUZCUlN4SlFVRkpMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU03TzBGQlJURkNMRWRCUVVjN1FVRkRTRHM3UVVGRlFTeEZRVUZGTEdGQlFXRXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSU3hMUVVGTExFVkJRVVU3TzBGQlJUZERMRWxCUVVrc1NVRkJTU3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZET3p0SlFVVnVRaXhMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETEUxQlFVMHNTMEZCU3l4RFFVRkRMRWRCUVVjc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRPMGxCUTJoRkxFbEJRVWtzVTBGQlV5eERRVUZETEZsQlFWa3NRMEZCUXl4TlFVRk5MRXRCUVVzc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eFJRVUZSTEVsQlFVa3NTMEZCU3l4TFFVRkxMRVZCUVVVc1EwRkJReXhGUVVGRk8wMUJReTlGTEZOQlFWTXNRMEZCUXl4WlFVRlpMRU5CUVVNc1MwRkJTeXhEUVVGRExIRkNRVUZ4UWl4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRExGVkJRVlVzVlVGQlZTeEZRVUZGTzFGQlEyaEdMRWxCUVVrc1NVRkJTU3hIUVVGSExGVkJRVlVzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1VVRkRha01zU1VGQlNTeGpRVUZqTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRE8xRkJRMnhETEVsQlFVa3NSMEZCUnl4SlFVRkpMRU5CUVVNc1IwRkJSeXhEUVVGRExGVkJRVlVzUjBGQlJ5eEZRVUZGTzFWQlF6ZENMRWxCUVVrN1dVRkRSaXhQUVVGUExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNN1YwRkRlRUlzUTBGQlF5eFBRVUZQTEVOQlFVTXNSVUZCUlR0WlFVTldMRTlCUVU4c1IwRkJSeXhEUVVGRE8xZEJRMW83VTBGRFJpeERRVUZETEVOQlFVTTdVVUZEU0N4SlFVRkpMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN1VVRkROVUlzU1VGQlNTeERRVUZETEdWQlFXVXNRMEZCUXl4alFVRmpMRU5CUVVNc1JVRkJSVHRWUVVOd1F5eE5RVUZOTEVsQlFVa3NTMEZCU3l4RFFVRkRMRFJEUVVFMFF5eEhRVUZITEdOQlFXTXNRMEZCUXl4RFFVRkRPMU5CUTJoR08xRkJRMFFzU1VGQlNTeERRVUZETEdWQlFXVXNRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFVkJRVVVzU1VGQlNTeERRVUZETEVWQlFVVTdWVUZEZWtVc1QwRkJUeXhIUVVGSExFdEJRVXNzUTBGQlF6dFRRVU5xUWp0UFFVTkdMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdTMEZEWmp0QlFVTk1MRWxCUVVrc1NVRkJTU3hQUVVGUExGTkJRVk1zUTBGQlF5eGhRVUZoTEV0QlFVc3NWVUZCVlN4RlFVRkZPenROUVVWcVJDeFBRVUZQTEVkQlFVY3NVMEZCVXl4RFFVRkRMR0ZCUVdFc1JVRkJSVHRCUVVONlF5eExRVUZMT3p0SlFVVkVMRTlCUVU4c1QwRkJUeXhEUVVGRE8wRkJRMjVDTEVkQlFVYzdRVUZEU0R0QlFVTkJPenRGUVVWRkxGbEJRVmtzUlVGQlJTeFpRVUZaTzBsQlEzaENMRWxCUVVrc1ZVRkJWU3hIUVVGSExFbEJRVWtzUTBGQlF6dEpRVU4wUWl4SlFVRkpMRTFCUVUwc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETzBGQlF6ZENMRWxCUVVrc1NVRkJTU3hUUVVGVExFZEJRVWNzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRCUVVONFF6dEJRVU5CT3p0SlFVVkpMRWxCUVVrc2IwSkJRVzlDTEVkQlFVY3NXVUZCV1R0TlFVTnlReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZPMUZCUTJoRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkVzUlVGQlJUdFZRVU5vUXl4VlFVRlZMRWRCUVVjc1MwRkJTeXhEUVVGRE8xTkJRM0JDTzBGQlExUXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZET3p0TlFVVmtMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU03VVVGRFdpeFBRVUZQTEVWQlFVVXNWVUZCVlR0QlFVTXpRaXhQUVVGUExFTkJRVU1zUTBGQlF6czdUVUZGU0N4SlFVRkpMRlZCUVZVc1JVRkJSVHRSUVVOa0xFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNUMEZCVHl4RlFVRkZMRU5CUVVNN1QwRkRkRUlzVFVGQlRUdFJRVU5NTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03UVVGREwwSXNUMEZCVHp0QlFVTlFPenROUVVWTkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTTdVVUZEV2l4VFFVRlRMRVZCUVVVc1NVRkJTVHRCUVVOMlFpeFBRVUZQTEVOQlFVTXNRMEZCUXpzN1FVRkZWQ3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTJwQ08wRkJRMEU3TzBsQlJVa3NVMEZCVXl4RFFVRkRMRTlCUVU4c1EwRkJReXhWUVVGVkxFbEJRVWtzUlVGQlJTeExRVUZMTEVWQlFVVTdUVUZEZGtNc1NVRkJTU3hUUVVGVExFZEJRVWNzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUXpkQ0xFbEJRVWtzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4aFFVRmhMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU03VFVGRE5VTXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJRenRSUVVOcVFpeFJRVUZSTEVWQlFVVXNUMEZCVHp0UlFVTnFRaXhaUVVGWkxFVkJRVVVzU1VGQlNUdFBRVU51UWl4RlFVRkZMRXRCUVVzc1MwRkJTeXhUUVVGVExFTkJRVU1zVFVGQlRTeEhRVUZITEVOQlFVTXNSMEZCUnl4dlFrRkJiMElzUjBGQlJ5eEpRVUZKTEVOQlFVTXNRMEZCUXp0QlFVTjJSU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRiRUk3UVVGRFFUczdTVUZGU1N4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRExFMUJRVTBzU1VGQlNTeEpRVUZKTEVOQlFVTXNVMEZCVXl4RlFVRkZMRVZCUVVVN1RVRkRla01zU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXp0UlFVTmFMRk5CUVZNc1JVRkJSU3hKUVVGSk8wOUJRMmhDTEVOQlFVTXNRMEZCUXp0TFFVTktPMEZCUTB3c1IwRkJSenRCUVVOSU8wRkJRMEU3TzBWQlJVVXNXVUZCV1N4RlFVRkZMRlZCUVZVc1UwRkJVeXhGUVVGRk8wbEJRMnBETEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4VFFVRlRMRU5CUVVNN1NVRkRPVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRE8wbEJRekZFTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU03UVVGRE4wSXNSMEZCUnp0QlFVTklPMEZCUTBFN08wVkJSVVVzWTBGQll5eEZRVUZGTEZWQlFWVXNVMEZCVXl4RlFVRkZPMGxCUTI1RExFOUJRVThzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4VFFVRlRMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBsQlEzcERMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wZEJRM3BETzBGQlEwZ3NSVUZCUlN4TlFVRk5MRVZCUVVVc1dVRkJXVHM3U1VGRmJFSXNUMEZCVHl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF6dFJRVU5zUWl4UlFVRlJMRVZCUVVVc1NVRkJTU3hEUVVGRExFMUJRVTA3VVVGRGNrSXNVMEZCVXl4RlFVRkZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV6dFBRVU5vUXp0TlFVTkVMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVUdEJRVU42UWl4TFFVRkxMRU5CUVVNN08wZEJSVWc3UVVGRFNDeERRVUZETEVOQlFVTXNRMEZCUXpzN1FVRkZTQ3hKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEU5QlFVOHNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhOUVVGTkxFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNUVUZCVFN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlR0RlFVTXZSU3hOUVVGTkxFTkJRVU1zVFVGQlRTeEhRVUZITEUxQlFVMHNRMEZCUXp0QlFVTjZRaXhEUVVGRE96dEJRVVZFTEUxQlFVMHNRMEZCUXl4UFFVRlBMRWRCUVVjc1RVRkJUU3hEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lkbUZ5SUZKbFlXTjBJRDBnWjJ4dlltRnNMbEpsWVdOMElIeDhJSEpsY1hWcGNtVW9KM0psWVdOMEp5azdYRzUyWVhJZ1JtOXliWE41SUQwZ2UzMDdYRzUyWVhJZ2RtRnNhV1JoZEdsdmJsSjFiR1Z6SUQwZ2NtVnhkV2x5WlNnbkxpOTJZV3hwWkdGMGFXOXVVblZzWlhNdWFuTW5LVHRjYm5aaGNpQjFkR2xzY3lBOUlISmxjWFZwY21Vb0p5NHZkWFJwYkhNdWFuTW5LVHRjYm5aaGNpQk5hWGhwYmlBOUlISmxjWFZwY21Vb0p5NHZUV2w0YVc0dWFuTW5LVHRjYm5aaGNpQnZjSFJwYjI1eklEMGdlMzA3WEc1Y2JrWnZjbTF6ZVM1TmFYaHBiaUE5SUUxcGVHbHVPMXh1WEc1R2IzSnRjM2t1WkdWbVlYVnNkSE1nUFNCbWRXNWpkR2x2YmlBb2NHRnpjMlZrVDNCMGFXOXVjeWtnZTF4dUlDQnZjSFJwYjI1eklEMGdjR0Z6YzJWa1QzQjBhVzl1Y3p0Y2JuMDdYRzVjYmtadmNtMXplUzVoWkdSV1lXeHBaR0YwYVc5dVVuVnNaU0E5SUdaMWJtTjBhVzl1SUNodVlXMWxMQ0JtZFc1aktTQjdYRzRnSUhaaGJHbGtZWFJwYjI1U2RXeGxjMXR1WVcxbFhTQTlJR1oxYm1NN1hHNTlPMXh1WEc1R2IzSnRjM2t1Um05eWJTQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ1oyVjBTVzVwZEdsaGJGTjBZWFJsT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUh0Y2JpQWdJQ0FnSUdselZtRnNhV1E2SUhSeWRXVXNYRzRnSUNBZ0lDQnBjMU4xWW0xcGRIUnBibWM2SUdaaGJITmxMRnh1SUNBZ0lDQWdZMkZ1UTJoaGJtZGxPaUJtWVd4elpWeHVJQ0FnSUgwN1hHNGdJSDBzWEc0Z0lHZGxkRVJsWm1GMWJIUlFjbTl3Y3pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCN1hHNGdJQ0FnSUNCb1pXRmtaWEp6T2lCN2ZTeGNiaUFnSUNBZ0lHOXVVM1ZqWTJWemN6b2dablZ1WTNScGIyNGdLQ2tnZTMwc1hHNGdJQ0FnSUNCdmJrVnljbTl5T2lCbWRXNWpkR2x2YmlBb0tTQjdmU3hjYmlBZ0lDQWdJRzl1VTNWaWJXbDBPaUJtZFc1amRHbHZiaUFvS1NCN2ZTeGNiaUFnSUNBZ0lHOXVWbUZzYVdSVGRXSnRhWFE2SUdaMWJtTjBhVzl1SUNncElIdDlMRnh1SUNBZ0lDQWdiMjVKYm5aaGJHbGtVM1ZpYldsME9pQm1kVzVqZEdsdmJpQW9LU0I3ZlN4Y2JpQWdJQ0FnSUc5dVUzVmliV2wwZEdWa09pQm1kVzVqZEdsdmJpQW9LU0I3ZlN4Y2JpQWdJQ0FnSUc5dVZtRnNhV1E2SUdaMWJtTjBhVzl1SUNncElIdDlMRnh1SUNBZ0lDQWdiMjVKYm5aaGJHbGtPaUJtZFc1amRHbHZiaUFvS1NCN2ZTeGNiaUFnSUNBZ0lHOXVRMmhoYm1kbE9pQm1kVzVqZEdsdmJpQW9LU0I3ZlZ4dUlDQWdJSDA3WEc0Z0lIMHNYRzVjYmlBZ0x5OGdRV1JrSUdFZ2JXRndJSFJ2SUhOMGIzSmxJSFJvWlNCcGJuQjFkSE1nYjJZZ2RHaGxJR1p2Y20wc0lHRWdiVzlrWld3Z2RHOGdjM1J2Y21WY2JpQWdMeThnZEdobElIWmhiSFZsY3lCdlppQjBhR1VnWm05eWJTQmhibVFnY21WbmFYTjBaWElnWTJocGJHUWdhVzV3ZFhSelhHNGdJR052YlhCdmJtVnVkRmRwYkd4TmIzVnVkRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhSb2FYTXVhVzV3ZFhSeklEMGdlMzA3WEc0Z0lDQWdkR2hwY3k1dGIyUmxiQ0E5SUh0OU8xeHVJQ0FnSUhSb2FYTXVjbVZuYVhOMFpYSkpibkIxZEhNb2RHaHBjeTV3Y205d2N5NWphR2xzWkhKbGJpazdYRzRnSUgwc1hHNWNiaUFnWTI5dGNHOXVaVzUwUkdsa1RXOTFiblE2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCMGFHbHpMblpoYkdsa1lYUmxSbTl5YlNncE8xeHVJQ0I5TEZ4dVhHNGdJR052YlhCdmJtVnVkRmRwYkd4VmNHUmhkR1U2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCMllYSWdhVzV3ZFhSTFpYbHpJRDBnVDJKcVpXTjBMbXRsZVhNb2RHaHBjeTVwYm5CMWRITXBPMXh1WEc0Z0lDQWdMeThnVkdobElIVndaR0YwWldRZ1kyaHBiR1J5Wlc0Z1lYSnlZWGtnYVhNZ2JtOTBJR0YyWVdsc1lXSnNaU0JvWlhKbElHWnZjaUJ6YjIxbElISmxZWE52Yml4Y2JpQWdJQ0F2THlCM1pTQnVaV1ZrSUhSdklIZGhhWFFnWm05eUlHNWxlSFFnWlhabGJuUWdiRzl2Y0Z4dUlDQWdJSE5sZEZScGJXVnZkWFFvWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ0lDQXZMeUJVYUdVZ1kyOXRjRzl1Wlc1MElHMXBaMmgwSUdoaGRtVWdZbVZsYmlCMWJtMXZkVzUwWldRZ2IyNGdZVzVjYmlBZ0lDQWdJQzh2SUhWd1pHRjBaVnh1SUNBZ0lDQWdhV1lnS0hSb2FYTXVhWE5OYjNWdWRHVmtLQ2twSUh0Y2JseHVJQ0FnSUNBZ0lDQjBhR2x6TG5KbFoybHpkR1Z5U1c1d2RYUnpLSFJvYVhNdWNISnZjSE11WTJocGJHUnlaVzRwTzF4dVhHNGdJQ0FnSUNBZ2FXWWdLSFJvYVhNdWNISnZjSE11ZG1Gc2FXUmhkR2x2YmtWeWNtOXljeWtnZTF4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11YzJWMFNXNXdkWFJXWVd4cFpHRjBhVzl1UlhKeWIzSnpLSFJvYVhNdWNISnZjSE11ZG1Gc2FXUmhkR2x2YmtWeWNtOXljeWs3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQjJZWElnYm1WM1NXNXdkWFJMWlhseklEMGdUMkpxWldOMExtdGxlWE1vZEdocGN5NXBibkIxZEhNcE8xeHVJQ0FnSUNBZ0lDQnBaaUFvZFhScGJITXVZWEp5WVhselJHbG1abVZ5S0dsdWNIVjBTMlY1Y3l3Z2JtVjNTVzV3ZFhSTFpYbHpLU2tnZTF4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11ZG1Gc2FXUmhkR1ZHYjNKdEtDazdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnZlZ4dVhHNGdJQ0FnZlM1aWFXNWtLSFJvYVhNcExDQXdLVHRjYmlBZ2ZTeGNibHh1SUNBdkx5QlZjR1JoZEdVZ2JXOWtaV3dzSUhOMVltMXBkQ0IwYnlCMWNtd2djSEp2Y0NCaGJtUWdjMlZ1WkNCMGFHVWdiVzlrWld4Y2JpQWdjM1ZpYldsME9pQm1kVzVqZEdsdmJpQW9aWFpsYm5RcElIdGNiaUFnSUNCbGRtVnVkQzV3Y21WMlpXNTBSR1ZtWVhWc2RDZ3BPMXh1WEc0Z0lDQWdMeThnVkhKcFoyZGxjaUJtYjNKdElHRnpJRzV2ZENCd2NtbHpkR2x1WlM1Y2JpQWdJQ0F2THlCSlppQmhibmtnYVc1d2RYUnpJR2hoZG1VZ2JtOTBJR0psWlc0Z2RHOTFZMmhsWkNCNVpYUWdkR2hwY3lCM2FXeHNJRzFoYTJVZ2RHaGxiU0JrYVhKMGVWeHVJQ0FnSUM4dklITnZJSFpoYkdsa1lYUnBiMjRnWW1WamIyMWxjeUIyYVhOcFlteGxJQ2hwWmlCaVlYTmxaQ0J2YmlCcGMxQnlhWE4wYVc1bEtWeHVJQ0FnSUhSb2FYTXVjMlYwUm05eWJWQnlhWE4wYVc1bEtHWmhiSE5sS1R0Y2JseHVJQ0FnSUM4dklGUnZJSE4xY0hCdmNuUWdkWE5sSUdOaGMyVnpJSGRvWlhKbElHNXZJR0Z6ZVc1aklHOXlJSEpsY1hWbGMzUWdiM0JsY21GMGFXOXVJR2x6SUc1bFpXUmxaQzVjYmlBZ0lDQXZMeUJVYUdVZ1hDSnZibE4xWW0xcGRGd2lJR05oYkd4aVlXTnJJR2x6SUdOaGJHeGxaQ0IzYVhSb0lIUm9aU0J0YjJSbGJDQmxMbWN1SUh0bWFXVnNaRTVoYldVNklGd2liWGxXWVd4MVpWd2lmU3hjYmlBZ0lDQXZMeUJwWmlCM1lXNTBhVzVuSUhSdklISmxjMlYwSUhSb1pTQmxiblJwY21VZ1ptOXliU0IwYnlCdmNtbG5hVzVoYkNCemRHRjBaU3dnZEdobElITmxZMjl1WkNCd1lYSmhiU0JwY3lCaElHTmhiR3hpWVdOcklHWnZjaUIwYUdsekxseHVJQ0FnSUdsbUlDZ2hkR2hwY3k1d2NtOXdjeTUxY213cElIdGNiaUFnSUNBZ0lIUm9hWE11ZFhCa1lYUmxUVzlrWld3b0tUdGNiaUFnSUNBZ0lIWmhjaUJ0YjJSbGJDQTlJSFJvYVhNdWJXRndUVzlrWld3b0tUdGNiaUFnSUNBZ0lIUm9hWE11Y0hKdmNITXViMjVUZFdKdGFYUW9iVzlrWld3c0lIUm9hWE11Y21WelpYUk5iMlJsYkN3Z2RHaHBjeTUxY0dSaGRHVkpibkIxZEhOWGFYUm9SWEp5YjNJcE8xeHVJQ0FnSUNBZ2RHaHBjeTV6ZEdGMFpTNXBjMVpoYkdsa0lEOGdkR2hwY3k1d2NtOXdjeTV2YmxaaGJHbGtVM1ZpYldsMEtHMXZaR1ZzTENCMGFHbHpMbkpsYzJWMFRXOWtaV3dwSURvZ2RHaHBjeTV3Y205d2N5NXZia2x1ZG1Gc2FXUlRkV0p0YVhRb2JXOWtaV3dzSUhSb2FYTXVjbVZ6WlhSTmIyUmxiQ2s3WEc0Z0lDQWdJQ0J5WlhSMWNtNDdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2RHaHBjeTUxY0dSaGRHVk5iMlJsYkNncE8xeHVJQ0FnSUhSb2FYTXVjMlYwVTNSaGRHVW9lMXh1SUNBZ0lDQWdhWE5UZFdKdGFYUjBhVzVuT2lCMGNuVmxYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQjBhR2x6TG5CeWIzQnpMbTl1VTNWaWJXbDBLSFJvYVhNdWJXRndUVzlrWld3b0tTd2dkR2hwY3k1eVpYTmxkRTF2WkdWc0xDQjBhR2x6TG5Wd1pHRjBaVWx1Y0hWMGMxZHBkR2hGY25KdmNpazdYRzVjYmlBZ0lDQjJZWElnYUdWaFpHVnljeUE5SUNoUFltcGxZM1F1YTJWNWN5aDBhR2x6TG5CeWIzQnpMbWhsWVdSbGNuTXBMbXhsYm1kMGFDQW1KaUIwYUdsekxuQnliM0J6TG1obFlXUmxjbk1wSUh4OElHOXdkR2x2Ym5NdWFHVmhaR1Z5Y3lCOGZDQjdmVHRjYmx4dUlDQWdJSFpoY2lCdFpYUm9iMlFnUFNCMGFHbHpMbkJ5YjNCekxtMWxkR2h2WkNBbUppQjFkR2xzY3k1aGFtRjRXM1JvYVhNdWNISnZjSE11YldWMGFHOWtMblJ2VEc5M1pYSkRZWE5sS0NsZElEOGdkR2hwY3k1d2NtOXdjeTV0WlhSb2IyUXVkRzlNYjNkbGNrTmhjMlVvS1NBNklDZHdiM04wSnp0Y2JpQWdJQ0IxZEdsc2N5NWhhbUY0VzIxbGRHaHZaRjBvZEdocGN5NXdjbTl3Y3k1MWNtd3NJSFJvYVhNdWJXRndUVzlrWld3b0tTd2dkR2hwY3k1d2NtOXdjeTVqYjI1MFpXNTBWSGx3WlNCOGZDQnZjSFJwYjI1ekxtTnZiblJsYm5SVWVYQmxJSHg4SUNkcWMyOXVKeXdnYUdWaFpHVnljeWxjYmlBZ0lDQWdJQzUwYUdWdUtHWjFibU4wYVc5dUlDaHlaWE53YjI1elpTa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuQnliM0J6TG05dVUzVmpZMlZ6Y3loeVpYTndiMjV6WlNrN1hHNGdJQ0FnSUNBZ0lIUm9hWE11Y0hKdmNITXViMjVUZFdKdGFYUjBaV1FvS1R0Y2JpQWdJQ0FnSUgwdVltbHVaQ2gwYUdsektTbGNiaUFnSUNBZ0lDNWpZWFJqYUNoMGFHbHpMbVpoYVd4VGRXSnRhWFFwTzF4dUlDQjlMRnh1WEc0Z0lHMWhjRTF2WkdWc09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIUm9hWE11Y0hKdmNITXViV0Z3Y0dsdVp5QS9JSFJvYVhNdWNISnZjSE11YldGd2NHbHVaeWgwYUdsekxtMXZaR1ZzS1NBNklIUm9hWE11Ylc5a1pXdzdYRzRnSUgwc1hHNWNiaUFnTHk4Z1IyOWxjeUIwYUhKdmRXZG9JR0ZzYkNCeVpXZHBjM1JsY21Wa0lHTnZiWEJ2Ym1WdWRITWdZVzVrWEc0Z0lDOHZJSFZ3WkdGMFpYTWdkR2hsSUcxdlpHVnNJSFpoYkhWbGMxeHVJQ0IxY0dSaGRHVk5iMlJsYkRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lFOWlhbVZqZEM1clpYbHpLSFJvYVhNdWFXNXdkWFJ6S1M1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNodVlXMWxLU0I3WEc0Z0lDQWdJQ0IyWVhJZ1kyOXRjRzl1Wlc1MElEMGdkR2hwY3k1cGJuQjFkSE5iYm1GdFpWMDdYRzRnSUNBZ0lDQjBhR2x6TG0xdlpHVnNXMjVoYldWZElEMGdZMjl0Y0c5dVpXNTBMbk4wWVhSbExsOTJZV3gxWlR0Y2JpQWdJQ0I5TG1KcGJtUW9kR2hwY3lrcE8xeHVJQ0I5TEZ4dVhHNGdJQzh2SUZKbGMyVjBJR1ZoWTJnZ2EyVjVJR2x1SUhSb1pTQnRiMlJsYkNCMGJ5QjBhR1VnYjNKcFoybHVZV3dnTHlCcGJtbDBhV0ZzSUhaaGJIVmxYRzRnSUhKbGMyVjBUVzlrWld3NklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQlBZbXBsWTNRdWEyVjVjeWgwYUdsekxtbHVjSFYwY3lrdVptOXlSV0ZqYUNobWRXNWpkR2x2YmlBb2JtRnRaU2tnZTF4dUlDQWdJQ0FnZEdocGN5NXBibkIxZEhOYmJtRnRaVjB1Y21WelpYUldZV3gxWlNncE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektTazdYRzRnSUNBZ2RHaHBjeTUyWVd4cFpHRjBaVVp2Y20wb0tUdGNiaUFnZlN4Y2JseHVJQ0J6WlhSSmJuQjFkRlpoYkdsa1lYUnBiMjVGY25KdmNuTTZJR1oxYm1OMGFXOXVJQ2hsY25KdmNuTXBJSHRjYmlBZ0lDQWdUMkpxWldOMExtdGxlWE1vZEdocGN5NXBibkIxZEhNcExtWnZja1ZoWTJnb1puVnVZM1JwYjI0Z0tHNWhiV1VzSUdsdVpHVjRLU0I3WEc0Z0lDQWdJQ0IyWVhJZ1kyOXRjRzl1Wlc1MElEMGdkR2hwY3k1cGJuQjFkSE5iYm1GdFpWMDdYRzRnSUNBZ0lDQjJZWElnWVhKbmN5QTlJRnQ3WEc0Z0lDQWdJQ0FnSUY5cGMxWmhiR2xrT2lBaEtHNWhiV1VnYVc0Z1pYSnliM0p6S1N4Y2JpQWdJQ0FnSUNBZ1gzTmxjblpsY2tWeWNtOXlPaUJsY25KdmNuTmJibUZ0WlYxY2JpQWdJQ0FnSUgxZE8xeHVJQ0FnSUNBZ1kyOXRjRzl1Wlc1MExuTmxkRk4wWVhSbExtRndjR3g1S0dOdmJYQnZibVZ1ZEN3Z1lYSm5jeWs3WEc0Z0lDQWdmUzVpYVc1a0tIUm9hWE1wS1RzZ0lDQmNiaUFnZlN4Y2JseHVJQ0F2THlCSGJ5QjBhSEp2ZFdkb0lHVnljbTl5Y3lCbWNtOXRJSE5sY25abGNpQmhibVFnWjNKaFlpQjBhR1VnWTI5dGNHOXVaVzUwYzF4dUlDQXZMeUJ6ZEc5eVpXUWdhVzRnZEdobElHbHVjSFYwY3lCdFlYQXVJRU5vWVc1blpTQjBhR1ZwY2lCemRHRjBaU0IwYnlCcGJuWmhiR2xrWEc0Z0lDOHZJR0Z1WkNCelpYUWdkR2hsSUhObGNuWmxja1Z5Y205eUlHMWxjM05oWjJWY2JpQWdkWEJrWVhSbFNXNXdkWFJ6VjJsMGFFVnljbTl5T2lCbWRXNWpkR2x2YmlBb1pYSnliM0p6S1NCN1hHNGdJQ0FnVDJKcVpXTjBMbXRsZVhNb1pYSnliM0p6S1M1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNodVlXMWxMQ0JwYm1SbGVDa2dlMXh1SUNBZ0lDQWdkbUZ5SUdOdmJYQnZibVZ1ZENBOUlIUm9hWE11YVc1d2RYUnpXMjVoYldWZE8xeHVYRzRnSUNBZ0lDQnBaaUFvSVdOdmJYQnZibVZ1ZENrZ2UxeHVJQ0FnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb0oxbHZkU0JoY21VZ2RISjVhVzVuSUhSdklIVndaR0YwWlNCaGJpQnBibkIxZENCMGFHRjBJR1J2WlhNZ2JtOTBJR1Y0YVhOMGN5NGdWbVZ5YVdaNUlHVnljbTl5Y3lCdlltcGxZM1FnZDJsMGFDQnBibkIxZENCdVlXMWxjeTRnSnlBcklFcFRUMDR1YzNSeWFXNW5hV1o1S0dWeWNtOXljeWtwTzF4dUlDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNCMllYSWdZWEpuY3lBOUlGdDdYRzRnSUNBZ0lDQWdJRjlwYzFaaGJHbGtPaUJtWVd4elpTeGNiaUFnSUNBZ0lDQWdYM05sY25abGNrVnljbTl5T2lCbGNuSnZjbk5iYm1GdFpWMWNiaUFnSUNBZ0lIMWRPMXh1SUNBZ0lDQWdZMjl0Y0c5dVpXNTBMbk5sZEZOMFlYUmxMbUZ3Y0d4NUtHTnZiWEJ2Ym1WdWRDd2dZWEpuY3lrN1hHNGdJQ0FnZlM1aWFXNWtLSFJvYVhNcEtUdGNiaUFnZlN4Y2JseHVJQ0JtWVdsc1UzVmliV2wwT2lCbWRXNWpkR2x2YmlBb1pYSnliM0p6S1NCN1hHNGdJQ0FnZEdocGN5NTFjR1JoZEdWSmJuQjFkSE5YYVhSb1JYSnliM0lvWlhKeWIzSnpLVHRjYmlBZ0lDQjBhR2x6TG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUdselUzVmliV2wwZEdsdVp6b2dabUZzYzJWY2JpQWdJQ0I5S1R0Y2JpQWdJQ0IwYUdsekxuQnliM0J6TG05dVJYSnliM0lvWlhKeWIzSnpLVHRjYmlBZ0lDQjBhR2x6TG5CeWIzQnpMbTl1VTNWaWJXbDBkR1ZrS0NrN1hHNGdJSDBzWEc1Y2JpQWdMeThnVkhKaGRtVnljMlVnZEdobElHTm9hV3hrY21WdUlHRnVaQ0JqYUdsc1pISmxiaUJ2WmlCamFHbHNaSEpsYmlCMGJ5Qm1hVzVrWEc0Z0lDOHZJR0ZzYkNCcGJuQjFkSE1nWW5rZ1kyaGxZMnRwYm1jZ2RHaGxJRzVoYldVZ2NISnZjQzRnVFdGNVltVWdaRzhnWVNCaVpYUjBaWEpjYmlBZ0x5OGdZMmhsWTJzZ2FHVnlaVnh1SUNCeVpXZHBjM1JsY2tsdWNIVjBjem9nWm5WdVkzUnBiMjRnS0dOb2FXeGtjbVZ1S1NCN1hHNGdJQ0FnVW1WaFkzUXVRMmhwYkdSeVpXNHVabTl5UldGamFDaGphR2xzWkhKbGJpd2dablZ1WTNScGIyNGdLR05vYVd4a0tTQjdYRzVjYmlBZ0lDQWdJR2xtSUNoamFHbHNaQ0FtSmlCamFHbHNaQzV3Y205d2N5QW1KaUJqYUdsc1pDNXdjbTl3Y3k1dVlXMWxLU0I3WEc0Z0lDQWdJQ0FnSUdOb2FXeGtMbkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTBnUFNCMGFHbHpMbUYwZEdGamFGUnZSbTl5YlR0Y2JpQWdJQ0FnSUNBZ1kyaHBiR1F1Y0hKdmNITXVYMlJsZEdGamFFWnliMjFHYjNKdElEMGdkR2hwY3k1a1pYUmhZMmhHY205dFJtOXliVHRjYmlBZ0lDQWdJQ0FnWTJocGJHUXVjSEp2Y0hNdVgzWmhiR2xrWVhSbElEMGdkR2hwY3k1MllXeHBaR0YwWlR0Y2JpQWdJQ0FnSUNBZ1kyaHBiR1F1Y0hKdmNITXVYMmx6Um05eWJVUnBjMkZpYkdWa0lEMGdkR2hwY3k1cGMwWnZjbTFFYVhOaFlteGxaRHRjYmlBZ0lDQWdJQ0FnWTJocGJHUXVjSEp2Y0hNdVgybHpWbUZzYVdSV1lXeDFaU0E5SUhSb2FYTXVjblZ1Vm1Gc2FXUmhkR2x2Ymp0Y2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ2FXWWdLR05vYVd4a0lDWW1JR05vYVd4a0xuQnliM0J6SUNZbUlHTm9hV3hrTG5CeWIzQnpMbU5vYVd4a2NtVnVLU0I3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVjbVZuYVhOMFpYSkpibkIxZEhNb1kyaHBiR1F1Y0hKdmNITXVZMmhwYkdSeVpXNHBPMXh1SUNBZ0lDQWdmVnh1WEc0Z0lDQWdmUzVpYVc1a0tIUm9hWE1wS1R0Y2JpQWdmU3hjYmx4dUlDQnBjMFp2Y20xRWFYTmhZbXhsWkRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCMGFHbHpMbkJ5YjNCekxtUnBjMkZpYkdWa08xeHVJQ0I5TEZ4dVhHNGdJR2RsZEVOMWNuSmxiblJXWVd4MVpYTTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0J5WlhSMWNtNGdUMkpxWldOMExtdGxlWE1vZEdocGN5NXBibkIxZEhNcExuSmxaSFZqWlNobWRXNWpkR2x2YmlBb1pHRjBZU3dnYm1GdFpTa2dlMXh1SUNBZ0lDQWdkbUZ5SUdOdmJYQnZibVZ1ZENBOUlIUm9hWE11YVc1d2RYUnpXMjVoYldWZE8xeHVJQ0FnSUNBZ1pHRjBZVnR1WVcxbFhTQTlJR052YlhCdmJtVnVkQzV6ZEdGMFpTNWZkbUZzZFdVN1hHNGdJQ0FnSUNCeVpYUjFjbTRnWkdGMFlUdGNiaUFnSUNCOUxtSnBibVFvZEdocGN5a3NJSHQ5S1R0Y2JpQWdmU3hjYmx4dUlDQnpaWFJHYjNKdFVISnBjM1JwYm1VNklHWjFibU4wYVc5dUlDaHBjMUJ5YVhOMGFXNWxLU0I3WEc0Z0lDQWdkbUZ5SUdsdWNIVjBjeUE5SUhSb2FYTXVhVzV3ZFhSek8xeHVJQ0FnSUhaaGNpQnBibkIxZEV0bGVYTWdQU0JQWW1wbFkzUXVhMlY1Y3locGJuQjFkSE1wTzF4dVhHNGdJQ0FnTHk4Z1NYUmxjbUYwWlNCMGFISnZkV2RvSUdWaFkyZ2dZMjl0Y0c5dVpXNTBJR0Z1WkNCelpYUWdhWFFnWVhNZ2NISnBjM1JwYm1WY2JpQWdJQ0F2THlCdmNpQmNJbVJwY25SNVhDSXVYRzRnSUNBZ2FXNXdkWFJMWlhsekxtWnZja1ZoWTJnb1puVnVZM1JwYjI0Z0tHNWhiV1VzSUdsdVpHVjRLU0I3WEc0Z0lDQWdJQ0IyWVhJZ1kyOXRjRzl1Wlc1MElEMGdhVzV3ZFhSelcyNWhiV1ZkTzF4dUlDQWdJQ0FnWTI5dGNHOXVaVzUwTG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUNBZ1gybHpVSEpwYzNScGJtVTZJR2x6VUhKcGMzUnBibVZjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJSDB1WW1sdVpDaDBhR2x6S1NrN1hHNGdJSDBzWEc1Y2JpQWdMeThnVlhObElIUm9aU0JpYVc1a1pXUWdkbUZzZFdWeklHRnVaQ0IwYUdVZ1lXTjBkV0ZzSUdsdWNIVjBJSFpoYkhWbElIUnZYRzRnSUM4dklIWmhiR2xrWVhSbElIUm9aU0JwYm5CMWRDQmhibVFnYzJWMElHbDBjeUJ6ZEdGMFpTNGdWR2hsYmlCamFHVmpheUIwYUdWY2JpQWdMeThnYzNSaGRHVWdiMllnZEdobElHWnZjbTBnYVhSelpXeG1YRzRnSUhaaGJHbGtZWFJsT2lCbWRXNWpkR2x2YmlBb1kyOXRjRzl1Wlc1MEtTQjdYRzVjYmlBZ0lDQXZMeUJVY21sbloyVnlJRzl1UTJoaGJtZGxYRzRnSUNBZ2FXWWdLSFJvYVhNdWMzUmhkR1V1WTJGdVEyaGhibWRsS1NCN1hHNGdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxtOXVRMmhoYm1kbEtIUm9hWE11WjJWMFEzVnljbVZ1ZEZaaGJIVmxjeWdwS1R0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlIUnlkV1U3WEc0Z0lDQWdhV1lnS0dOdmJYQnZibVZ1ZEM1MllXeHBaR0YwWlNBbUppQjBlWEJsYjJZZ1kyOXRjRzl1Wlc1MExuWmhiR2xrWVhSbElEMDlQU0FuWm5WdVkzUnBiMjRuS1NCN1hHNGdJQ0FnSUNCcGMxWmhiR2xrSUQwZ1kyOXRjRzl1Wlc1MExuWmhiR2xrWVhSbEtDazdYRzRnSUNBZ2ZTQmxiSE5sSUdsbUlDaGpiMjF3YjI1bGJuUXVjSEp2Y0hNdWNtVnhkV2x5WldRZ2ZId2dZMjl0Y0c5dVpXNTBMbDkyWVd4cFpHRjBhVzl1Y3lrZ2UxeHVJQ0FnSUNBZ2FYTldZV3hwWkNBOUlIUm9hWE11Y25WdVZtRnNhV1JoZEdsdmJpaGpiMjF3YjI1bGJuUXBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lDOHZJRkoxYmlCMGFISnZkV2RvSUhSb1pTQjJZV3hwWkdGMGFXOXVjeXdnYzNCc2FYUWdkR2hsYlNCMWNDQmhibVFnWTJGc2JGeHVJQ0FnSUM4dklIUm9aU0IyWVd4cFpHRjBiM0lnU1VZZ2RHaGxjbVVnYVhNZ1lTQjJZV3gxWlNCdmNpQnBkQ0JwY3lCeVpYRjFhWEpsWkZ4dUlDQWdJR052YlhCdmJtVnVkQzV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0JmYVhOV1lXeHBaRG9nYVhOV1lXeHBaQ3hjYmlBZ0lDQWdJRjl6WlhKMlpYSkZjbkp2Y2pvZ2JuVnNiRnh1SUNBZ0lIMHNJSFJvYVhNdWRtRnNhV1JoZEdWR2IzSnRLVHRjYmx4dUlDQjlMRnh1WEc0Z0lDOHZJRU5vWldOcmN5QjJZV3hwWkdGMGFXOXVJRzl1SUdOMWNuSmxiblFnZG1Gc2RXVWdiM0lnWVNCd1lYTnpaV1FnZG1Gc2RXVmNiaUFnY25WdVZtRnNhV1JoZEdsdmJqb2dablZ1WTNScGIyNGdLR052YlhCdmJtVnVkQ3dnZG1Gc2RXVXBJSHRjYmx4dUlDQWdJSFpoY2lCcGMxWmhiR2xrSUQwZ2RISjFaVHRjYmlBZ0lDQmNiaUFnSUNCMllXeDFaU0E5SUdGeVozVnRaVzUwY3k1c1pXNW5kR2dnUFQwOUlESWdQeUIyWVd4MVpTQTZJR052YlhCdmJtVnVkQzV6ZEdGMFpTNWZkbUZzZFdVN1hHNGdJQ0FnYVdZZ0tHTnZiWEJ2Ym1WdWRDNWZkbUZzYVdSaGRHbHZibk11YkdWdVozUm9JQ1ltSUNoamIyMXdiMjVsYm5RdWNISnZjSE11Y21WeGRXbHlaV1FnZkh3Z2RtRnNkV1VnSVQwOUlDY25LU2tnZTF4dUlDQWdJQ0FnWTI5dGNHOXVaVzUwTGw5MllXeHBaR0YwYVc5dWN5NXpjR3hwZENndlhGd3NLRDhoVzE1N1hGeGJYU3BiZlZ4Y1hWMHBMMmNwTG1admNrVmhZMmdvWm5WdVkzUnBiMjRnS0haaGJHbGtZWFJwYjI0cElIdGNiaUFnSUNBZ0lDQWdkbUZ5SUdGeVozTWdQU0IyWVd4cFpHRjBhVzl1TG5Od2JHbDBLQ2M2SnlrN1hHNGdJQ0FnSUNBZ0lIWmhjaUIyWVd4cFpHRjBaVTFsZEdodlpDQTlJR0Z5WjNNdWMyaHBablFvS1R0Y2JpQWdJQ0FnSUNBZ1lYSm5jeUE5SUdGeVozTXViV0Z3S0daMWJtTjBhVzl1SUNoaGNtY3BJSHRjYmlBZ0lDQWdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUVwVFQwNHVjR0Z5YzJVb1lYSm5LVHRjYmlBZ0lDQWdJQ0FnSUNCOUlHTmhkR05vSUNobEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnWVhKbk95QXZMeUJKZENCcGN5QmhJSE4wY21sdVp5QnBaaUJwZENCallXNGdibTkwSUhCaGNuTmxJR2wwWEc0Z0lDQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJQ0FnWVhKbmN5QTlJRnQyWVd4MVpWMHVZMjl1WTJGMEtHRnlaM01wTzF4dUlDQWdJQ0FnSUNCcFppQW9JWFpoYkdsa1lYUnBiMjVTZFd4bGMxdDJZV3hwWkdGMFpVMWxkR2h2WkYwcElIdGNiaUFnSUNBZ0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMFp2Y20xemVTQmtiMlZ6SUc1dmRDQm9ZWFpsSUhSb1pTQjJZV3hwWkdGMGFXOXVJSEoxYkdVNklDY2dLeUIyWVd4cFpHRjBaVTFsZEdodlpDazdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnYVdZZ0tDRjJZV3hwWkdGMGFXOXVVblZzWlhOYmRtRnNhV1JoZEdWTlpYUm9iMlJkTG1Gd2NHeDVLSFJvYVhNdVoyVjBRM1Z5Y21WdWRGWmhiSFZsY3lncExDQmhjbWR6S1NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2x6Vm1Gc2FXUWdQU0JtWVd4elpUdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdmUzVpYVc1a0tIUm9hWE1wS1R0Y2JpQWdJQ0I5WEc0Z0lDQWdhV1lnS0hSNWNHVnZaaUJqYjIxd2IyNWxiblF1WTJobFkydFdZV3hwWkdsMGVTQTlQVDBnWENKbWRXNWpkR2x2Ymx3aUtTQjdYRzRnSUNBZ0lDQXZMeUIwYUdVZ1kyOXRjRzl1Wlc1MElHUmxabWx1WlhNZ1lXNGdaWGh3YkdsamFYUWdZMmhsWTJ0V1lXeHBaR2wwZVNCbWRXNWpkR2x2Ymx4dUlDQWdJQ0FnYVhOV1lXeHBaQ0E5SUdOdmJYQnZibVZ1ZEM1amFHVmphMVpoYkdsa2FYUjVLQ2xjYmlBZ0lDQjlYRzVjYmlBZ0lDQnlaWFIxY200Z2FYTldZV3hwWkR0Y2JpQWdmU3hjYmx4dUlDQXZMeUJXWVd4cFpHRjBaU0IwYUdVZ1ptOXliU0JpZVNCbmIybHVaeUIwYUhKdmRXZG9JR0ZzYkNCamFHbHNaQ0JwYm5CMWRDQmpiMjF3YjI1bGJuUnpYRzRnSUM4dklHRnVaQ0JqYUdWamF5QjBhR1ZwY2lCemRHRjBaVnh1SUNCMllXeHBaR0YwWlVadmNtMDZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0IyWVhJZ1lXeHNTWE5XWVd4cFpDQTlJSFJ5ZFdVN1hHNGdJQ0FnZG1GeUlHbHVjSFYwY3lBOUlIUm9hWE11YVc1d2RYUnpPMXh1SUNBZ0lIWmhjaUJwYm5CMWRFdGxlWE1nUFNCUFltcGxZM1F1YTJWNWN5aHBibkIxZEhNcE8xeHVYRzRnSUNBZ0x5OGdWMlVnYm1WbFpDQmhJR05oYkd4aVlXTnJJR0Z6SUhkbElHRnlaU0IyWVd4cFpHRjBhVzVuSUdGc2JDQnBibkIxZEhNZ1lXZGhhVzR1SUZSb2FYTWdkMmxzYkZ4dUlDQWdJQzh2SUhKMWJpQjNhR1Z1SUhSb1pTQnNZWE4wSUdOdmJYQnZibVZ1ZENCb1lYTWdjMlYwSUdsMGN5QnpkR0YwWlZ4dUlDQWdJSFpoY2lCdmJsWmhiR2xrWVhScGIyNURiMjF3YkdWMFpTQTlJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUdsdWNIVjBTMlY1Y3k1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNodVlXMWxLU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDZ2hhVzV3ZFhSelcyNWhiV1ZkTG5OMFlYUmxMbDlwYzFaaGJHbGtLU0I3WEc0Z0lDQWdJQ0FnSUNBZ1lXeHNTWE5XWVd4cFpDQTlJR1poYkhObE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtwTzF4dVhHNGdJQ0FnSUNCMGFHbHpMbk5sZEZOMFlYUmxLSHRjYmlBZ0lDQWdJQ0FnYVhOV1lXeHBaRG9nWVd4c1NYTldZV3hwWkZ4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lHbG1JQ2hoYkd4SmMxWmhiR2xrS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11Y0hKdmNITXViMjVXWVd4cFpDZ3BPMXh1SUNBZ0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTV2YmtsdWRtRnNhV1FvS1R0Y2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0x5OGdWR1ZzYkNCMGFHVWdabTl5YlNCMGFHRjBJR2wwSUdOaGJpQnpkR0Z5ZENCMGJ5QjBjbWxuWjJWeUlHTm9ZVzVuWlNCbGRtVnVkSE5jYmlBZ0lDQWdJSFJvYVhNdWMyVjBVM1JoZEdVb2UxeHVJQ0FnSUNBZ0lDQmpZVzVEYUdGdVoyVTZJSFJ5ZFdWY2JpQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBPMXh1WEc0Z0lDQWdMeThnVW5WdUlIWmhiR2xrWVhScGIyNGdZV2RoYVc0Z2FXNGdZMkZ6WlNCaFptWmxZM1JsWkNCaWVTQnZkR2hsY2lCcGJuQjFkSE11SUZSb1pWeHVJQ0FnSUM4dklHeGhjM1FnWTI5dGNHOXVaVzUwSUhaaGJHbGtZWFJsWkNCM2FXeHNJSEoxYmlCMGFHVWdiMjVXWVd4cFpHRjBhVzl1UTI5dGNHeGxkR1VnWTJGc2JHSmhZMnRjYmlBZ0lDQnBibkIxZEV0bGVYTXVabTl5UldGamFDaG1kVzVqZEdsdmJpQW9ibUZ0WlN3Z2FXNWtaWGdwSUh0Y2JpQWdJQ0FnSUhaaGNpQmpiMjF3YjI1bGJuUWdQU0JwYm5CMWRITmJibUZ0WlYwN1hHNGdJQ0FnSUNCMllYSWdhWE5XWVd4cFpDQTlJSFJvYVhNdWNuVnVWbUZzYVdSaGRHbHZiaWhqYjIxd2IyNWxiblFwTzF4dUlDQWdJQ0FnWTI5dGNHOXVaVzUwTG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUNBZ1gybHpWbUZzYVdRNklHbHpWbUZzYVdRc1hHNGdJQ0FnSUNBZ0lGOXpaWEoyWlhKRmNuSnZjam9nYm5Wc2JGeHVJQ0FnSUNBZ2ZTd2dhVzVrWlhnZ1BUMDlJR2x1Y0hWMFMyVjVjeTVzWlc1bmRHZ2dMU0F4SUQ4Z2IyNVdZV3hwWkdGMGFXOXVRMjl0Y0d4bGRHVWdPaUJ1ZFd4c0tUdGNiaUFnSUNCOUxtSnBibVFvZEdocGN5a3BPMXh1WEc0Z0lDQWdMeThnU1dZZ2RHaGxjbVVnWVhKbElHNXZJR2x1Y0hWMGN5d2djMlYwSUhOMFlYUmxJSGRvWlhKbElHWnZjbTBnYVhNZ2NtVmhaSGtnZEc4Z2RISnBaMmRsY2x4dUlDQWdJQzh2SUdOb1lXNW5aU0JsZG1WdWRDNGdUbVYzSUdsdWNIVjBjeUJ0YVdkb2RDQmlaU0JoWkdSbFpDQnNZWFJsY2x4dUlDQWdJR2xtSUNnaGFXNXdkWFJMWlhsekxteGxibWQwYUNBbUppQjBhR2x6TG1selRXOTFiblJsWkNncEtTQjdYRzRnSUNBZ0lDQjBhR2x6TG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUNBZ1kyRnVRMmhoYm1kbE9pQjBjblZsWEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0I5WEc0Z0lIMHNYRzVjYmlBZ0x5OGdUV1YwYUc5a0lIQjFkQ0J2YmlCbFlXTm9JR2x1Y0hWMElHTnZiWEJ2Ym1WdWRDQjBieUJ5WldkcGMzUmxjbHh1SUNBdkx5QnBkSE5sYkdZZ2RHOGdkR2hsSUdadmNtMWNiaUFnWVhSMFlXTm9WRzlHYjNKdE9pQm1kVzVqZEdsdmJpQW9ZMjl0Y0c5dVpXNTBLU0I3WEc0Z0lDQWdkR2hwY3k1cGJuQjFkSE5iWTI5dGNHOXVaVzUwTG5CeWIzQnpMbTVoYldWZElEMGdZMjl0Y0c5dVpXNTBPMXh1SUNBZ0lIUm9hWE11Ylc5a1pXeGJZMjl0Y0c5dVpXNTBMbkJ5YjNCekxtNWhiV1ZkSUQwZ1kyOXRjRzl1Wlc1MExuTjBZWFJsTGw5MllXeDFaVHRjYmlBZ0lDQjBhR2x6TG5aaGJHbGtZWFJsS0dOdmJYQnZibVZ1ZENrN1hHNGdJSDBzWEc1Y2JpQWdMeThnVFdWMGFHOWtJSEIxZENCdmJpQmxZV05vSUdsdWNIVjBJR052YlhCdmJtVnVkQ0IwYnlCMWJuSmxaMmx6ZEdWeVhHNGdJQzh2SUdsMGMyVnNaaUJtY205dElIUm9aU0JtYjNKdFhHNGdJR1JsZEdGamFFWnliMjFHYjNKdE9pQm1kVzVqZEdsdmJpQW9ZMjl0Y0c5dVpXNTBLU0I3WEc0Z0lDQWdaR1ZzWlhSbElIUm9hWE11YVc1d2RYUnpXMk52YlhCdmJtVnVkQzV3Y205d2N5NXVZVzFsWFR0Y2JpQWdJQ0JrWld4bGRHVWdkR2hwY3k1dGIyUmxiRnRqYjIxd2IyNWxiblF1Y0hKdmNITXVibUZ0WlYwN1hHNGdJSDBzWEc0Z0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdjbVYwZFhKdUlGSmxZV04wTGtSUFRTNW1iM0p0S0h0Y2JpQWdJQ0FnSUNBZ2IyNVRkV0p0YVhRNklIUm9hWE11YzNWaWJXbDBMRnh1SUNBZ0lDQWdJQ0JqYkdGemMwNWhiV1U2SUhSb2FYTXVjSEp2Y0hNdVkyeGhjM05PWVcxbFhHNGdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ2RHaHBjeTV3Y205d2N5NWphR2xzWkhKbGJseHVJQ0FnSUNrN1hHNWNiaUFnZlZ4dWZTazdYRzVjYm1sbUlDZ2haMnh2WW1Gc0xtVjRjRzl5ZEhNZ0ppWWdJV2RzYjJKaGJDNXRiMlIxYkdVZ0ppWWdLQ0ZuYkc5aVlXd3VaR1ZtYVc1bElIeDhJQ0ZuYkc5aVlXd3VaR1ZtYVc1bExtRnRaQ2twSUh0Y2JpQWdaMnh2WW1Gc0xrWnZjbTF6ZVNBOUlFWnZjbTF6ZVR0Y2JuMWNibHh1Ylc5a2RXeGxMbVY0Y0c5eWRITWdQU0JHYjNKdGMzazdYRzRpWFgwPSIsIm1vZHVsZS5leHBvcnRzID0ge1xuICBnZXRJbml0aWFsU3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgdmFsdWUgPSAndmFsdWUnIGluIHRoaXMucHJvcHMgPyB0aGlzLnByb3BzLnZhbHVlIDogJyc7XG4gICAgcmV0dXJuIHtcbiAgICAgIF92YWx1ZTogdmFsdWUsXG4gICAgICBfaXNWYWxpZDogdHJ1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiB0cnVlLFxuICAgICAgX3ByaXN0aW5lVmFsdWU6IHZhbHVlXG4gICAgfTtcbiAgfSxcbiAgY29tcG9uZW50V2lsbE1vdW50OiBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgY29uZmlndXJlID0gZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5zZXRWYWxpZGF0aW9ucyh0aGlzLnByb3BzLnZhbGlkYXRpb25zLCB0aGlzLnByb3BzLnJlcXVpcmVkKTtcbiAgICAgIHRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSh0aGlzKTtcbiAgICB9LmJpbmQodGhpcyk7XG5cbiAgICBpZiAoIXRoaXMucHJvcHMubmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGb3JtIElucHV0IHJlcXVpcmVzIGEgbmFtZSBwcm9wZXJ0eSB3aGVuIHVzZWQnKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSkge1xuICAgICAgcmV0dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNNb3VudGVkKCkpIHJldHVybjtcbiAgICAgICAgaWYgKCF0aGlzLnByb3BzLl9hdHRhY2hUb0Zvcm0pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Zvcm0gTWl4aW4gcmVxdWlyZXMgY29tcG9uZW50IHRvIGJlIG5lc3RlZCBpbiBhIEZvcm0nKTtcbiAgICAgICAgfVxuICAgICAgICBjb25maWd1cmUoKTtcbiAgICAgIH0uYmluZCh0aGlzKSwgMCk7XG4gICAgfVxuICAgIGNvbmZpZ3VyZSgpO1xuXG4gIH0sXG5cbiAgLy8gV2UgaGF2ZSB0byBtYWtlIHRoZSB2YWxpZGF0ZSBtZXRob2QgaXMga2VwdCB3aGVuIG5ldyBwcm9wcyBhcmUgYWRkZWRcbiAgY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wczogZnVuY3Rpb24gKG5leHRQcm9wcykge1xuICAgIG5leHRQcm9wcy5fYXR0YWNoVG9Gb3JtID0gdGhpcy5wcm9wcy5fYXR0YWNoVG9Gb3JtO1xuICAgIG5leHRQcm9wcy5fZGV0YWNoRnJvbUZvcm0gPSB0aGlzLnByb3BzLl9kZXRhY2hGcm9tRm9ybTtcbiAgICBuZXh0UHJvcHMuX3ZhbGlkYXRlID0gdGhpcy5wcm9wcy5fdmFsaWRhdGU7XG4gICAgdGhpcy5zZXRWYWxpZGF0aW9ucyhuZXh0UHJvcHMudmFsaWRhdGlvbnMsIG5leHRQcm9wcy5yZXF1aXJlZCk7XG4gIH0sXG5cbiAgY29tcG9uZW50RGlkVXBkYXRlOiBmdW5jdGlvbiAocHJldlByb3BzLCBwcmV2U3RhdGUpIHtcblxuICAgIHZhciBpc1ZhbHVlQ2hhbmdlZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIFxuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5wcm9wcy52YWx1ZSAhPT0gcHJldlByb3BzLnZhbHVlICYmIChcbiAgICAgICAgICB0aGlzLnN0YXRlLl92YWx1ZSA9PT0gcHJldlByb3BzLnZhbHVlIHx8XG5cbiAgICAgICAgICAvLyBTaW5jZSB1bmRlZmluZWQgaXMgY29udmVydGVkIHRvIGVtcHR5IHN0cmluZyB3ZSBoYXZlIHRvXG4gICAgICAgICAgLy8gY2hlY2sgdGhhdCBzcGVjaWZpY2FsbHlcbiAgICAgICAgICAodGhpcy5zdGF0ZS5fdmFsdWUgPT09ICcnICYmIHByZXZQcm9wcy52YWx1ZSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICApXG4gICAgICApO1xuXG4gICAgfS5iaW5kKHRoaXMpO1xuXG5cbiAgICAvLyBJZiB2YWxpZGF0aW9ucyBoYXMgY2hhbmdlZCBvciBzb21ldGhpbmcgb3V0c2lkZSBjaGFuZ2VzIFxuICAgIC8vIHRoZSB2YWx1ZSwgc2V0IHRoZSB2YWx1ZSBhZ2FpbiBydW5uaW5nIGEgdmFsaWRhdGlvblxuXG4gICAgaWYgKHByZXZQcm9wcy52YWxpZGF0aW9ucyAhPT0gdGhpcy5wcm9wcy52YWxpZGF0aW9ucyB8fCBpc1ZhbHVlQ2hhbmdlZCgpKSB7XG4gICAgICB2YXIgdmFsdWUgPSAndmFsdWUnIGluIHRoaXMucHJvcHMgPyB0aGlzLnByb3BzLnZhbHVlIDogJyc7XG4gICAgICB0aGlzLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH0sXG5cbiAgLy8gRGV0YWNoIGl0IHdoZW4gY29tcG9uZW50IHVubW91bnRzXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcy5wcm9wcy5fZGV0YWNoRnJvbUZvcm0odGhpcyk7XG4gIH0sXG5cbiAgc2V0VmFsaWRhdGlvbnM6IGZ1bmN0aW9uICh2YWxpZGF0aW9ucywgcmVxdWlyZWQpIHtcblxuICAgIC8vIEFkZCB2YWxpZGF0aW9ucyB0byB0aGUgc3RvcmUgaXRzZWxmIGFzIHRoZSBwcm9wcyBvYmplY3QgY2FuIG5vdCBiZSBtb2RpZmllZFxuICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnMgfHwgJyc7XG5cbiAgICBpZiAocmVxdWlyZWQpIHtcbiAgICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnMgPyB2YWxpZGF0aW9ucyArICcsJyA6ICcnO1xuICAgICAgdGhpcy5fdmFsaWRhdGlvbnMgKz0gJ2lzVmFsdWUnO1xuICAgIH1cblxuICB9LFxuXG4gIC8vIFdlIHZhbGlkYXRlIGFmdGVyIHRoZSB2YWx1ZSBoYXMgYmVlbiBzZXRcbiAgc2V0VmFsdWU6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgX3ZhbHVlOiB2YWx1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiBmYWxzZVxuICAgIH0sIGZ1bmN0aW9uICgpIHtcbiAgICAgIHRoaXMucHJvcHMuX3ZhbGlkYXRlKHRoaXMpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG4gIHJlc2V0VmFsdWU6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIF92YWx1ZTogdGhpcy5zdGF0ZS5fcHJpc3RpbmVWYWx1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiB0cnVlXG4gICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5wcm9wcy5fdmFsaWRhdGUodGhpcyk7XG4gICAgfSk7XG4gIH0sXG4gIGdldFZhbHVlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX3ZhbHVlO1xuICB9LFxuICBoYXNWYWx1ZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLl92YWx1ZSAhPT0gJyc7XG4gIH0sXG4gIGdldEVycm9yTWVzc2FnZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLmlzVmFsaWQoKSB8fCB0aGlzLnNob3dSZXF1aXJlZCgpID8gbnVsbCA6IHRoaXMuc3RhdGUuX3NlcnZlckVycm9yIHx8IHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9yO1xuICB9LFxuICBpc0Zvcm1EaXNhYmxlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLl9pc0Zvcm1EaXNhYmxlZCgpO1xuICB9LFxuICBpc1ZhbGlkOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX2lzVmFsaWQ7XG4gIH0sXG4gIGlzUHJpc3RpbmU6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5faXNQcmlzdGluZTtcbiAgfSxcbiAgaXNSZXF1aXJlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhIXRoaXMucHJvcHMucmVxdWlyZWQ7XG4gIH0sXG4gIHNob3dSZXF1aXJlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLmlzUmVxdWlyZWQoKSAmJiB0aGlzLnN0YXRlLl92YWx1ZSA9PT0gJyc7XG4gIH0sXG4gIHNob3dFcnJvcjogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhdGhpcy5zaG93UmVxdWlyZWQoKSAmJiAhdGhpcy5zdGF0ZS5faXNWYWxpZDtcbiAgfSxcbiAgaXNWYWxpZFZhbHVlOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5faXNWYWxpZFZhbHVlLmNhbGwobnVsbCwgdGhpcywgdmFsdWUpO1xuICB9XG59O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZUV2w0YVc0dWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0pqTDAxcGVHbHVMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVYzdSVUZEWml4bFFVRmxMRVZCUVVVc1dVRkJXVHRKUVVNelFpeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRE1VUXNUMEZCVHp0TlFVTk1MRTFCUVUwc1JVRkJSU3hMUVVGTE8wMUJRMklzVVVGQlVTeEZRVUZGTEVsQlFVazdUVUZEWkN4WFFVRlhMRVZCUVVVc1NVRkJTVHROUVVOcVFpeGpRVUZqTEVWQlFVVXNTMEZCU3p0TFFVTjBRaXhEUVVGRE8wZEJRMGc3UVVGRFNDeEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxGbEJRVms3TzBsQlJUbENMRWxCUVVrc1UwRkJVeXhIUVVGSExGbEJRVms3VFVGRE1VSXNTVUZCU1N4RFFVRkRMR05CUVdNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NSVUZCUlN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzAxQlEycEZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTNKRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN08wbEJSV0lzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hGUVVGRk8wMUJRM0JDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc0swTkJRU3RETEVOQlFVTXNRMEZCUXp0QlFVTjJSU3hMUVVGTE96dEpRVVZFTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExHRkJRV0VzUlVGQlJUdE5RVU0zUWl4UFFVRlBMRlZCUVZVc1EwRkJReXhaUVVGWk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhGUVVGRkxFVkJRVVVzVDBGQlR6dFJRVU01UWl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGhRVUZoTEVWQlFVVTdWVUZETjBJc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5eHpSRUZCYzBRc1EwRkJReXhEUVVGRE8xTkJRM3BGTzFGQlEwUXNVMEZCVXl4RlFVRkZMRU5CUVVNN1QwRkRZaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOc1FqdEJRVU5NTEVsQlFVa3NVMEZCVXl4RlFVRkZMRU5CUVVNN08wRkJSV2hDTEVkQlFVYzdRVUZEU0RzN1JVRkZSU3g1UWtGQmVVSXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSVHRKUVVNNVF5eFRRVUZUTEVOQlFVTXNZVUZCWVN4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETzBsQlEyNUVMRk5CUVZNc1EwRkJReXhsUVVGbExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNN1NVRkRka1FzVTBGQlV5eERRVUZETEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF6dEpRVU16UXl4SlFVRkpMRU5CUVVNc1kwRkJZeXhEUVVGRExGTkJRVk1zUTBGQlF5eFhRVUZYTEVWQlFVVXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8wRkJRMjVGTEVkQlFVYzdPMEZCUlVnc1JVRkJSU3hyUWtGQmEwSXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSU3hUUVVGVExFVkJRVVU3TzBGQlJYUkVMRWxCUVVrc1NVRkJTU3hqUVVGakxFZEJRVWNzV1VGQldUczdUVUZGTDBJN1VVRkRSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NTMEZCU3l4VFFVRlRMRU5CUVVNc1MwRkJTenRCUVVNMVF5eFZRVUZWTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hMUVVGTExGTkJRVk1zUTBGQlF5eExRVUZMTzBGQlF5OURPMEZCUTBFN08xZEJSVmNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRXRCUVVzc1JVRkJSU3hKUVVGSkxGTkJRVk1zUTBGQlF5eExRVUZMTEV0QlFVc3NVMEZCVXl4RFFVRkRPMU5CUXpWRU8wRkJRMVFzVVVGQlVUczdRVUZGVWl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEycENPMEZCUTBFN1FVRkRRVHRCUVVOQk96dEpRVVZKTEVsQlFVa3NVMEZCVXl4RFFVRkRMRmRCUVZjc1MwRkJTeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NTVUZCU1N4alFVRmpMRVZCUVVVc1JVRkJSVHROUVVONFJTeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1IwRkJSeXhGUVVGRkxFTkJRVU03VFVGRE1VUXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dExRVU4wUWp0QlFVTk1MRWRCUVVjN1FVRkRTRHM3UlVGRlJTeHZRa0ZCYjBJc1JVRkJSU3haUVVGWk8wbEJRMmhETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEzSkRMRWRCUVVjN08wRkJSVWdzUlVGQlJTeGpRVUZqTEVWQlFVVXNWVUZCVlN4WFFVRlhMRVZCUVVVc1VVRkJVU3hGUVVGRk8wRkJRMjVFT3p0QlFVVkJMRWxCUVVrc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eFhRVUZYTEVsQlFVa3NSVUZCUlN4RFFVRkRPenRKUVVWMFF5eEpRVUZKTEZGQlFWRXNSVUZCUlR0TlFVTmFMRWxCUVVrc1EwRkJReXhaUVVGWkxFZEJRVWNzVjBGQlZ5eEhRVUZITEZkQlFWY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1JVRkJSU3hEUVVGRE8wMUJRM3BFTEVsQlFVa3NRMEZCUXl4WlFVRlpMRWxCUVVrc1UwRkJVeXhEUVVGRE8wRkJRM0pETEV0QlFVczdPMEZCUlV3c1IwRkJSenRCUVVOSU96dEZRVVZGTEZGQlFWRXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVONlFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1RVRkJUU3hGUVVGRkxFdEJRVXM3VFVGRFlpeFhRVUZYTEVWQlFVVXNTMEZCU3p0TFFVTnVRaXhGUVVGRkxGbEJRVms3VFVGRFlpeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dExRVU0xUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzBkQlEyWTdSVUZEUkN4VlFVRlZMRVZCUVVVc1dVRkJXVHRKUVVOMFFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1RVRkJUU3hGUVVGRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNZMEZCWXp0TlFVTnFReXhYUVVGWExFVkJRVVVzU1VGQlNUdExRVU5zUWl4RlFVRkZMRmxCUVZrN1RVRkRZaXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRMUVVNMVFpeERRVUZETEVOQlFVTTdSMEZEU2p0RlFVTkVMRkZCUVZFc1JVRkJSU3haUVVGWk8wbEJRM0JDTEU5QlFVOHNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03UjBGRE1VSTdSVUZEUkN4UlFVRlJMRVZCUVVVc1dVRkJXVHRKUVVOd1FpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hMUVVGTExFVkJRVVVzUTBGQlF6dEhRVU5xUXp0RlFVTkVMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVOHNTVUZCU1N4RFFVRkRMRTlCUVU4c1JVRkJSU3hKUVVGSkxFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNSMEZCUnl4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFpRVUZaTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU03UjBGRE4wYzdSVUZEUkN4alFVRmpMRVZCUVVVc1dVRkJXVHRKUVVNeFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hGUVVGRkxFTkJRVU03UjBGRGNrTTdSVUZEUkN4UFFVRlBMRVZCUVVVc1dVRkJXVHRKUVVOdVFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wZEJRelZDTzBWQlEwUXNWVUZCVlN4RlFVRkZMRmxCUVZrN1NVRkRkRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRmRCUVZjc1EwRkJRenRIUVVNdlFqdEZRVU5FTEZWQlFWVXNSVUZCUlN4WlFVRlpPMGxCUTNSQ0xFOUJRVThzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wZEJRemxDTzBWQlEwUXNXVUZCV1N4RlFVRkZMRmxCUVZrN1NVRkRlRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEV0QlFVc3NSVUZCUlN4RFFVRkRPMGRCUTNSRU8wVkJRMFFzVTBGQlV5eEZRVUZGTEZsQlFWazdTVUZEY2tJc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETzBkQlEzSkVPMFZCUTBRc1dVRkJXU3hGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzBsQlF6ZENMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGhRVUZoTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTTdSMEZEZWtRN1EwRkRSaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2liVzlrZFd4bExtVjRjRzl5ZEhNZ1BTQjdYRzRnSUdkbGRFbHVhWFJwWVd4VGRHRjBaVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhaaGNpQjJZV3gxWlNBOUlDZDJZV3gxWlNjZ2FXNGdkR2hwY3k1d2NtOXdjeUEvSUhSb2FYTXVjSEp2Y0hNdWRtRnNkV1VnT2lBbkp6dGNiaUFnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnWDNaaGJIVmxPaUIyWVd4MVpTeGNiaUFnSUNBZ0lGOXBjMVpoYkdsa09pQjBjblZsTEZ4dUlDQWdJQ0FnWDJselVISnBjM1JwYm1VNklIUnlkV1VzWEc0Z0lDQWdJQ0JmY0hKcGMzUnBibVZXWVd4MVpUb2dkbUZzZFdWY2JpQWdJQ0I5TzF4dUlDQjlMRnh1SUNCamIyMXdiMjVsYm5SWGFXeHNUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJSFpoY2lCamIyNW1hV2QxY21VZ1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxuTmxkRlpoYkdsa1lYUnBiMjV6S0hSb2FYTXVjSEp2Y0hNdWRtRnNhV1JoZEdsdmJuTXNJSFJvYVhNdWNISnZjSE11Y21WeGRXbHlaV1FwTzF4dUlDQWdJQ0FnZEdocGN5NXdjbTl3Y3k1ZllYUjBZV05vVkc5R2IzSnRLSFJvYVhNcE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektUdGNibHh1SUNBZ0lHbG1JQ2doZEdocGN5NXdjbTl3Y3k1dVlXMWxLU0I3WEc0Z0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMFp2Y20wZ1NXNXdkWFFnY21WeGRXbHlaWE1nWVNCdVlXMWxJSEJ5YjNCbGNuUjVJSGRvWlc0Z2RYTmxaQ2NwTzF4dUlDQWdJSDFjYmx4dUlDQWdJR2xtSUNnaGRHaHBjeTV3Y205d2N5NWZZWFIwWVdOb1ZHOUdiM0p0S1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnYzJWMFZHbHRaVzkxZENobWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR2xtSUNnaGRHaHBjeTVwYzAxdmRXNTBaV1FvS1NrZ2NtVjBkWEp1TzF4dUlDQWdJQ0FnSUNCcFppQW9JWFJvYVhNdWNISnZjSE11WDJGMGRHRmphRlJ2Um05eWJTa2dlMXh1SUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWduUm05eWJTQk5hWGhwYmlCeVpYRjFhWEpsY3lCamIyMXdiMjVsYm5RZ2RHOGdZbVVnYm1WemRHVmtJR2x1SUdFZ1JtOXliU2NwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lHTnZibVpwWjNWeVpTZ3BPMXh1SUNBZ0lDQWdmUzVpYVc1a0tIUm9hWE1wTENBd0tUdGNiaUFnSUNCOVhHNGdJQ0FnWTI5dVptbG5kWEpsS0NrN1hHNWNiaUFnZlN4Y2JseHVJQ0F2THlCWFpTQm9ZWFpsSUhSdklHMWhhMlVnZEdobElIWmhiR2xrWVhSbElHMWxkR2h2WkNCcGN5QnJaWEIwSUhkb1pXNGdibVYzSUhCeWIzQnpJR0Z5WlNCaFpHUmxaRnh1SUNCamIyMXdiMjVsYm5SWGFXeHNVbVZqWldsMlpWQnliM0J6T2lCbWRXNWpkR2x2YmlBb2JtVjRkRkJ5YjNCektTQjdYRzRnSUNBZ2JtVjRkRkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTBnUFNCMGFHbHpMbkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTA3WEc0Z0lDQWdibVY0ZEZCeWIzQnpMbDlrWlhSaFkyaEdjbTl0Um05eWJTQTlJSFJvYVhNdWNISnZjSE11WDJSbGRHRmphRVp5YjIxR2IzSnRPMXh1SUNBZ0lHNWxlSFJRY205d2N5NWZkbUZzYVdSaGRHVWdQU0IwYUdsekxuQnliM0J6TGw5MllXeHBaR0YwWlR0Y2JpQWdJQ0IwYUdsekxuTmxkRlpoYkdsa1lYUnBiMjV6S0c1bGVIUlFjbTl3Y3k1MllXeHBaR0YwYVc5dWN5d2dibVY0ZEZCeWIzQnpMbkpsY1hWcGNtVmtLVHRjYmlBZ2ZTeGNibHh1SUNCamIyMXdiMjVsYm5SRWFXUlZjR1JoZEdVNklHWjFibU4wYVc5dUlDaHdjbVYyVUhKdmNITXNJSEJ5WlhaVGRHRjBaU2tnZTF4dVhHNGdJQ0FnZG1GeUlHbHpWbUZzZFdWRGFHRnVaMlZrSUQwZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdYRzRnSUNBZ0lDQnlaWFIxY200Z0tGeHVJQ0FnSUNBZ0lDQjBhR2x6TG5CeWIzQnpMblpoYkhWbElDRTlQU0J3Y21WMlVISnZjSE11ZG1Gc2RXVWdKaVlnS0Z4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11YzNSaGRHVXVYM1poYkhWbElEMDlQU0J3Y21WMlVISnZjSE11ZG1Gc2RXVWdmSHhjYmx4dUlDQWdJQ0FnSUNBZ0lDOHZJRk5wYm1ObElIVnVaR1ZtYVc1bFpDQnBjeUJqYjI1MlpYSjBaV1FnZEc4Z1pXMXdkSGtnYzNSeWFXNW5JSGRsSUdoaGRtVWdkRzljYmlBZ0lDQWdJQ0FnSUNBdkx5QmphR1ZqYXlCMGFHRjBJSE53WldOcFptbGpZV3hzZVZ4dUlDQWdJQ0FnSUNBZ0lDaDBhR2x6TG5OMFlYUmxMbDkyWVd4MVpTQTlQVDBnSnljZ0ppWWdjSEpsZGxCeWIzQnpMblpoYkhWbElEMDlQU0IxYm1SbFptbHVaV1FwWEc0Z0lDQWdJQ0FnSUNsY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNCOUxtSnBibVFvZEdocGN5azdYRzVjYmx4dUlDQWdJQzh2SUVsbUlIWmhiR2xrWVhScGIyNXpJR2hoY3lCamFHRnVaMlZrSUc5eUlITnZiV1YwYUdsdVp5QnZkWFJ6YVdSbElHTm9ZVzVuWlhNZ1hHNGdJQ0FnTHk4Z2RHaGxJSFpoYkhWbExDQnpaWFFnZEdobElIWmhiSFZsSUdGbllXbHVJSEoxYm01cGJtY2dZU0IyWVd4cFpHRjBhVzl1WEc1Y2JpQWdJQ0JwWmlBb2NISmxkbEJ5YjNCekxuWmhiR2xrWVhScGIyNXpJQ0U5UFNCMGFHbHpMbkJ5YjNCekxuWmhiR2xrWVhScGIyNXpJSHg4SUdselZtRnNkV1ZEYUdGdVoyVmtLQ2twSUh0Y2JpQWdJQ0FnSUhaaGNpQjJZV3gxWlNBOUlDZDJZV3gxWlNjZ2FXNGdkR2hwY3k1d2NtOXdjeUEvSUhSb2FYTXVjSEp2Y0hNdWRtRnNkV1VnT2lBbkp6dGNiaUFnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvZG1Gc2RXVXBPMXh1SUNBZ0lIMWNiaUFnZlN4Y2JseHVJQ0F2THlCRVpYUmhZMmdnYVhRZ2QyaGxiaUJqYjIxd2IyNWxiblFnZFc1dGIzVnVkSE5jYmlBZ1kyOXRjRzl1Wlc1MFYybHNiRlZ1Ylc5MWJuUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0IwYUdsekxuQnliM0J6TGw5a1pYUmhZMmhHY205dFJtOXliU2gwYUdsektUdGNiaUFnZlN4Y2JseHVJQ0J6WlhSV1lXeHBaR0YwYVc5dWN6b2dablZ1WTNScGIyNGdLSFpoYkdsa1lYUnBiMjV6TENCeVpYRjFhWEpsWkNrZ2UxeHVYRzRnSUNBZ0x5OGdRV1JrSUhaaGJHbGtZWFJwYjI1eklIUnZJSFJvWlNCemRHOXlaU0JwZEhObGJHWWdZWE1nZEdobElIQnliM0J6SUc5aWFtVmpkQ0JqWVc0Z2JtOTBJR0psSUcxdlpHbG1hV1ZrWEc0Z0lDQWdkR2hwY3k1ZmRtRnNhV1JoZEdsdmJuTWdQU0IyWVd4cFpHRjBhVzl1Y3lCOGZDQW5KenRjYmx4dUlDQWdJR2xtSUNoeVpYRjFhWEpsWkNrZ2UxeHVJQ0FnSUNBZ2RHaHBjeTVmZG1Gc2FXUmhkR2x2Ym5NZ1BTQjJZV3hwWkdGMGFXOXVjeUEvSUhaaGJHbGtZWFJwYjI1eklDc2dKeXduSURvZ0p5YzdYRzRnSUNBZ0lDQjBhR2x6TGw5MllXeHBaR0YwYVc5dWN5QXJQU0FuYVhOV1lXeDFaU2M3WEc0Z0lDQWdmVnh1WEc0Z0lIMHNYRzVjYmlBZ0x5OGdWMlVnZG1Gc2FXUmhkR1VnWVdaMFpYSWdkR2hsSUhaaGJIVmxJR2hoY3lCaVpXVnVJSE5sZEZ4dUlDQnpaWFJXWVd4MVpUb2dablZ1WTNScGIyNGdLSFpoYkhWbEtTQjdYRzRnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0JmZG1Gc2RXVTZJSFpoYkhWbExGeHVJQ0FnSUNBZ1gybHpVSEpwYzNScGJtVTZJR1poYkhObFhHNGdJQ0FnZlN3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTVmZG1Gc2FXUmhkR1VvZEdocGN5azdYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBLVHRjYmlBZ2ZTeGNiaUFnY21WelpYUldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lIUm9hWE11YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnWDNaaGJIVmxPaUIwYUdsekxuTjBZWFJsTGw5d2NtbHpkR2x1WlZaaGJIVmxMRnh1SUNBZ0lDQWdYMmx6VUhKcGMzUnBibVU2SUhSeWRXVmNiaUFnSUNCOUxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxuQnliM0J6TGw5MllXeHBaR0YwWlNoMGFHbHpLVHRjYmlBZ0lDQjlLVHRjYmlBZ2ZTeGNiaUFnWjJWMFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXpkR0YwWlM1ZmRtRnNkV1U3WEc0Z0lIMHNYRzRnSUdoaGMxWmhiSFZsT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUhSb2FYTXVjM1JoZEdVdVgzWmhiSFZsSUNFOVBTQW5KenRjYmlBZ2ZTeGNiaUFnWjJWMFJYSnliM0pOWlhOellXZGxPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWFYTldZV3hwWkNncElIeDhJSFJvYVhNdWMyaHZkMUpsY1hWcGNtVmtLQ2tnUHlCdWRXeHNJRG9nZEdocGN5NXpkR0YwWlM1ZmMyVnlkbVZ5UlhKeWIzSWdmSHdnZEdocGN5NXdjbTl3Y3k1MllXeHBaR0YwYVc5dVJYSnliM0k3WEc0Z0lIMHNYRzRnSUdselJtOXliVVJwYzJGaWJHVmtPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWNISnZjSE11WDJselJtOXliVVJwYzJGaWJHVmtLQ2s3WEc0Z0lIMHNYRzRnSUdselZtRnNhV1E2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXpkR0YwWlM1ZmFYTldZV3hwWkR0Y2JpQWdmU3hjYmlBZ2FYTlFjbWx6ZEdsdVpUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjBhR2x6TG5OMFlYUmxMbDlwYzFCeWFYTjBhVzVsTzF4dUlDQjlMRnh1SUNCcGMxSmxjWFZwY21Wa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlDRWhkR2hwY3k1d2NtOXdjeTV5WlhGMWFYSmxaRHRjYmlBZ2ZTeGNiaUFnYzJodmQxSmxjWFZwY21Wa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIUm9hWE11YVhOU1pYRjFhWEpsWkNncElDWW1JSFJvYVhNdWMzUmhkR1V1WDNaaGJIVmxJRDA5UFNBbkp6dGNiaUFnZlN4Y2JpQWdjMmh2ZDBWeWNtOXlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJQ0YwYUdsekxuTm9iM2RTWlhGMWFYSmxaQ2dwSUNZbUlDRjBhR2x6TG5OMFlYUmxMbDlwYzFaaGJHbGtPMXh1SUNCOUxGeHVJQ0JwYzFaaGJHbGtWbUZzZFdVNklHWjFibU4wYVc5dUlDaDJZV3gxWlNrZ2UxeHVJQ0FnSUhKbGRIVnliaUIwYUdsekxuQnliM0J6TGw5cGMxWmhiR2xrVm1Gc2RXVXVZMkZzYkNodWRXeHNMQ0IwYUdsekxDQjJZV3gxWlNrN1hHNGdJSDFjYm4wN1hHNGlYWDA9IiwidmFyIGNzcmZUb2tlblNlbGVjdG9yID0gdHlwZW9mIGRvY3VtZW50ICE9ICd1bmRlZmluZWQnID8gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbWV0YVtuYW1lPVwiY3NyZi10b2tlblwiXScpIDogbnVsbDtcblxudmFyIHRvVVJMRW5jb2RlZCA9IGZ1bmN0aW9uIChlbGVtZW50LCBrZXksIGxpc3QpIHtcbiAgdmFyIGxpc3QgPSBsaXN0IHx8IFtdO1xuICBpZiAodHlwZW9mIChlbGVtZW50KSA9PSAnb2JqZWN0Jykge1xuICAgIGZvciAodmFyIGlkeCBpbiBlbGVtZW50KVxuICAgICAgdG9VUkxFbmNvZGVkKGVsZW1lbnRbaWR4XSwga2V5ID8ga2V5ICsgJ1snICsgaWR4ICsgJ10nIDogaWR4LCBsaXN0KTtcbiAgfSBlbHNlIHtcbiAgICBsaXN0LnB1c2goa2V5ICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGVsZW1lbnQpKTtcbiAgfVxuICByZXR1cm4gbGlzdC5qb2luKCcmJyk7XG59O1xuXG52YXIgcmVxdWVzdCA9IGZ1bmN0aW9uIChtZXRob2QsIHVybCwgZGF0YSwgY29udGVudFR5cGUsIGhlYWRlcnMpIHtcblxuICB2YXIgY29udGVudFR5cGUgPSBjb250ZW50VHlwZSA9PT0gJ3VybGVuY29kZWQnID8gJ2FwcGxpY2F0aW9uLycgKyBjb250ZW50VHlwZS5yZXBsYWNlKCd1cmxlbmNvZGVkJywgJ3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpIDogJ2FwcGxpY2F0aW9uL2pzb24nO1xuICBkYXRhID0gY29udGVudFR5cGUgPT09ICdhcHBsaWNhdGlvbi9qc29uJyA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogdG9VUkxFbmNvZGVkKGRhdGEpO1xuXG4gIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgdHJ5IHtcbiAgICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICAgIHhoci5vcGVuKG1ldGhvZCwgdXJsLCB0cnVlKTtcbiAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCdBY2NlcHQnLCAnYXBwbGljYXRpb24vanNvbicpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsIGNvbnRlbnRUeXBlKTtcblxuICAgICAgaWYgKCEhY3NyZlRva2VuU2VsZWN0b3IgJiYgISFjc3JmVG9rZW5TZWxlY3Rvci5jb250ZW50KSB7XG4gICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCdYLUNTUkYtVG9rZW4nLCBjc3JmVG9rZW5TZWxlY3Rvci5jb250ZW50KTtcbiAgICAgIH1cblxuICAgICAgLy8gQWRkIHBhc3NlZCBoZWFkZXJzXG4gICAgICBPYmplY3Qua2V5cyhoZWFkZXJzKS5mb3JFYWNoKGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoaGVhZGVyLCBoZWFkZXJzW2hlYWRlcl0pO1xuICAgICAgfSk7XG5cbiAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhciByZXNwb25zZSA9IHhoci5yZXNwb25zZVRleHQgPyBKU09OLnBhcnNlKHhoci5yZXNwb25zZVRleHQpIDogbnVsbDtcbiAgICAgICAgICAgIGlmICh4aHIuc3RhdHVzID49IDIwMCAmJiB4aHIuc3RhdHVzIDwgMzAwKSB7XG4gICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmVqZWN0KHJlc3BvbnNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICB4aHIuc2VuZChkYXRhKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZWplY3QoZSk7XG4gICAgfVxuICB9KTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBhcnJheXNEaWZmZXI6IGZ1bmN0aW9uIChhcnJheUEsIGFycmF5Qikge1xuICAgIHZhciBpc0RpZmZlcmVudCA9IGZhbHNlO1xuICAgIGlmIChhcnJheUEubGVuZ3RoICE9PSBhcnJheUIubGVuZ3RoKSB7XG4gICAgICBpc0RpZmZlcmVudCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFycmF5QS5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBpbmRleCkge1xuICAgICAgICBpZiAoaXRlbSAhPT0gYXJyYXlCW2luZGV4XSkge1xuICAgICAgICAgIGlzRGlmZmVyZW50ID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBpc0RpZmZlcmVudDtcbiAgfSxcbiAgYWpheDoge1xuICAgIHBvc3Q6IHJlcXVlc3QuYmluZChudWxsLCAnUE9TVCcpLFxuICAgIHB1dDogcmVxdWVzdC5iaW5kKG51bGwsICdQVVQnKVxuICB9XG59O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZkWFJwYkhNdWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0pqTDNWMGFXeHpMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFbEJRVWtzYVVKQlFXbENMRWRCUVVjc1QwRkJUeXhSUVVGUkxFbEJRVWtzVjBGQlZ5eEhRVUZITEZGQlFWRXNRMEZCUXl4aFFVRmhMRU5CUVVNc2VVSkJRWGxDTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN08wRkJSV3hJTEVsQlFVa3NXVUZCV1N4SFFVRkhMRlZCUVZVc1QwRkJUeXhGUVVGRkxFZEJRVWNzUlVGQlJTeEpRVUZKTEVWQlFVVTdSVUZETDBNc1NVRkJTU3hKUVVGSkxFZEJRVWNzU1VGQlNTeEpRVUZKTEVWQlFVVXNRMEZCUXp0RlFVTjBRaXhKUVVGSkxGRkJRVkVzVDBGQlR5eERRVUZETEVsQlFVa3NVVUZCVVN4RlFVRkZPMGxCUTJoRExFdEJRVXNzU1VGQlNTeEhRVUZITEVsQlFVa3NUMEZCVHp0TlFVTnlRaXhaUVVGWkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUjBGQlJ5eEhRVUZITEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1IwRkJSeXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBkQlEzWkZMRTFCUVUwN1NVRkRUQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc2EwSkJRV3RDTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJRenRIUVVOd1JEdEZRVU5FTEU5QlFVOHNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dEJRVU40UWl4RFFVRkRMRU5CUVVNN08wRkJSVVlzU1VGQlNTeFBRVUZQTEVkQlFVY3NWVUZCVlN4TlFVRk5MRVZCUVVVc1IwRkJSeXhGUVVGRkxFbEJRVWtzUlVGQlJTeFhRVUZYTEVWQlFVVXNUMEZCVHl4RlFVRkZPenRGUVVVdlJDeEpRVUZKTEZkQlFWY3NSMEZCUnl4WFFVRlhMRXRCUVVzc1dVRkJXU3hIUVVGSExHTkJRV01zUjBGQlJ5eFhRVUZYTEVOQlFVTXNUMEZCVHl4RFFVRkRMRmxCUVZrc1JVRkJSU3gxUWtGQmRVSXNRMEZCUXl4SFFVRkhMR3RDUVVGclFpeERRVUZETzBGQlEzQktMRVZCUVVVc1NVRkJTU3hIUVVGSExGZEJRVmNzUzBGQlN5eHJRa0ZCYTBJc1IwRkJSeXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRmxCUVZrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6czdSVUZGZEVZc1QwRkJUeXhKUVVGSkxFOUJRVThzUTBGQlF5eFZRVUZWTEU5QlFVOHNSVUZCUlN4TlFVRk5MRVZCUVVVN1NVRkROVU1zU1VGQlNUdE5RVU5HTEVsQlFVa3NSMEZCUnl4SFFVRkhMRWxCUVVrc1kwRkJZeXhGUVVGRkxFTkJRVU03VFVGREwwSXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUXpWQ0xFZEJRVWNzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhSUVVGUkxFVkJRVVVzYTBKQlFXdENMRU5CUVVNc1EwRkJRenRCUVVONlJDeE5RVUZOTEVkQlFVY3NRMEZCUXl4blFrRkJaMElzUTBGQlF5eGpRVUZqTEVWQlFVVXNWMEZCVnl4RFFVRkRMRU5CUVVNN08wMUJSV3hFTEVsQlFVa3NRMEZCUXl4RFFVRkRMR2xDUVVGcFFpeEpRVUZKTEVOQlFVTXNRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eFBRVUZQTEVWQlFVVTdVVUZEZEVRc1IwRkJSeXhEUVVGRExHZENRVUZuUWl4RFFVRkRMR05CUVdNc1JVRkJSU3hwUWtGQmFVSXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRCUVVONFJTeFBRVUZQTzBGQlExQTdPMDFCUlUwc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hOUVVGTkxFVkJRVVU3VVVGRE4wTXNSMEZCUnl4RFFVRkRMR2RDUVVGblFpeERRVUZETEUxQlFVMHNSVUZCUlN4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4wUkN4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEhRVUZITEVOQlFVTXNhMEpCUVd0Q0xFZEJRVWNzV1VGQldUdEJRVU16UXl4UlFVRlJMRWxCUVVrc1IwRkJSeXhEUVVGRExGVkJRVlVzUzBGQlN5eERRVUZETEVWQlFVVTdPMVZCUlhoQ0xFbEJRVWs3V1VGRFJpeEpRVUZKTEZGQlFWRXNSMEZCUnl4SFFVRkhMRU5CUVVNc1dVRkJXU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRmxCUVZrc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dFpRVU4wUlN4SlFVRkpMRWRCUVVjc1EwRkJReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4TlFVRk5MRWRCUVVjc1IwRkJSeXhGUVVGRk8yTkJRM3BETEU5QlFVOHNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRoUVVOdVFpeE5RVUZOTzJOQlEwd3NUVUZCVFN4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8yRkJRMnhDTzFkQlEwWXNRMEZCUXl4UFFVRlBMRU5CUVVNc1JVRkJSVHRaUVVOV0xFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjBRaXhYUVVGWE96dFRRVVZHTzA5QlEwWXNRMEZCUXp0TlFVTkdMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdTMEZEYUVJc1EwRkJReXhQUVVGUExFTkJRVU1zUlVGQlJUdE5RVU5XTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOWU8wZEJRMFlzUTBGQlF5eERRVUZETzBGQlEwd3NRMEZCUXl4RFFVRkRPenRCUVVWR0xFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVYzdSVUZEWml4WlFVRlpMRVZCUVVVc1ZVRkJWU3hOUVVGTkxFVkJRVVVzVFVGQlRTeEZRVUZGTzBsQlEzUkRMRWxCUVVrc1YwRkJWeXhIUVVGSExFdEJRVXNzUTBGQlF6dEpRVU40UWl4SlFVRkpMRTFCUVUwc1EwRkJReXhOUVVGTkxFdEJRVXNzVFVGQlRTeERRVUZETEUxQlFVMHNSVUZCUlR0TlFVTnVReXhYUVVGWExFZEJRVWNzU1VGQlNTeERRVUZETzB0QlEzQkNMRTFCUVUwN1RVRkRUQ3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSVHRSUVVOd1F5eEpRVUZKTEVsQlFVa3NTMEZCU3l4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFVkJRVVU3VlVGRE1VSXNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJRenRUUVVOd1FqdFBRVU5HTEVOQlFVTXNRMEZCUXp0TFFVTktPMGxCUTBRc1QwRkJUeXhYUVVGWExFTkJRVU03UjBGRGNFSTdSVUZEUkN4SlFVRkpMRVZCUVVVN1NVRkRTaXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRVZCUVVVc1RVRkJUU3hEUVVGRE8wbEJRMmhETEVkQlFVY3NSVUZCUlN4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTTdSMEZETDBJN1EwRkRSaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lkbUZ5SUdOemNtWlViMnRsYmxObGJHVmpkRzl5SUQwZ2RIbHdaVzltSUdSdlkzVnRaVzUwSUNFOUlDZDFibVJsWm1sdVpXUW5JRDhnWkc5amRXMWxiblF1Y1hWbGNubFRaV3hsWTNSdmNpZ25iV1YwWVZ0dVlXMWxQVndpWTNOeVppMTBiMnRsYmx3aVhTY3BJRG9nYm5Wc2JEdGNibHh1ZG1GeUlIUnZWVkpNUlc1amIyUmxaQ0E5SUdaMWJtTjBhVzl1SUNobGJHVnRaVzUwTENCclpYa3NJR3hwYzNRcElIdGNiaUFnZG1GeUlHeHBjM1FnUFNCc2FYTjBJSHg4SUZ0ZE8xeHVJQ0JwWmlBb2RIbHdaVzltSUNobGJHVnRaVzUwS1NBOVBTQW5iMkpxWldOMEp5a2dlMXh1SUNBZ0lHWnZjaUFvZG1GeUlHbGtlQ0JwYmlCbGJHVnRaVzUwS1Z4dUlDQWdJQ0FnZEc5VlVreEZibU52WkdWa0tHVnNaVzFsYm5SYmFXUjRYU3dnYTJWNUlEOGdhMlY1SUNzZ0oxc25JQ3NnYVdSNElDc2dKMTBuSURvZ2FXUjRMQ0JzYVhOMEtUdGNiaUFnZlNCbGJITmxJSHRjYmlBZ0lDQnNhWE4wTG5CMWMyZ29hMlY1SUNzZ0p6MG5JQ3NnWlc1amIyUmxWVkpKUTI5dGNHOXVaVzUwS0dWc1pXMWxiblFwS1R0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnYkdsemRDNXFiMmx1S0NjbUp5azdYRzU5TzF4dVhHNTJZWElnY21WeGRXVnpkQ0E5SUdaMWJtTjBhVzl1SUNodFpYUm9iMlFzSUhWeWJDd2daR0YwWVN3Z1kyOXVkR1Z1ZEZSNWNHVXNJR2hsWVdSbGNuTXBJSHRjYmx4dUlDQjJZWElnWTI5dWRHVnVkRlI1Y0dVZ1BTQmpiMjUwWlc1MFZIbHdaU0E5UFQwZ0ozVnliR1Z1WTI5a1pXUW5JRDhnSjJGd2NHeHBZMkYwYVc5dUx5Y2dLeUJqYjI1MFpXNTBWSGx3WlM1eVpYQnNZV05sS0NkMWNteGxibU52WkdWa0p5d2dKM2d0ZDNkM0xXWnZjbTB0ZFhKc1pXNWpiMlJsWkNjcElEb2dKMkZ3Y0d4cFkyRjBhVzl1TDJwemIyNG5PMXh1SUNCa1lYUmhJRDBnWTI5dWRHVnVkRlI1Y0dVZ1BUMDlJQ2RoY0hCc2FXTmhkR2x2Ymk5cWMyOXVKeUEvSUVwVFQwNHVjM1J5YVc1bmFXWjVLR1JoZEdFcElEb2dkRzlWVWt4RmJtTnZaR1ZrS0dSaGRHRXBPMXh1WEc0Z0lISmxkSFZ5YmlCdVpYY2dVSEp2YldselpTaG1kVzVqZEdsdmJpQW9jbVZ6YjJ4MlpTd2djbVZxWldOMEtTQjdYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJSFpoY2lCNGFISWdQU0J1WlhjZ1dFMU1TSFIwY0ZKbGNYVmxjM1FvS1R0Y2JpQWdJQ0FnSUhob2NpNXZjR1Z1S0cxbGRHaHZaQ3dnZFhKc0xDQjBjblZsS1R0Y2JpQWdJQ0FnSUhob2NpNXpaWFJTWlhGMVpYTjBTR1ZoWkdWeUtDZEJZMk5sY0hRbkxDQW5ZWEJ3YkdsallYUnBiMjR2YW5OdmJpY3BPMXh1SUNBZ0lDQWdlR2h5TG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvSjBOdmJuUmxiblF0Vkhsd1pTY3NJR052Ym5SbGJuUlVlWEJsS1R0Y2JseHVJQ0FnSUNBZ2FXWWdLQ0VoWTNOeVpsUnZhMlZ1VTJWc1pXTjBiM0lnSmlZZ0lTRmpjM0ptVkc5clpXNVRaV3hsWTNSdmNpNWpiMjUwWlc1MEtTQjdYRzRnSUNBZ0lDQWdJSGhvY2k1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NkWUxVTlRVa1l0Vkc5clpXNG5MQ0JqYzNKbVZHOXJaVzVUWld4bFkzUnZjaTVqYjI1MFpXNTBLVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnTHk4Z1FXUmtJSEJoYzNObFpDQm9aV0ZrWlhKelhHNGdJQ0FnSUNCUFltcGxZM1F1YTJWNWN5aG9aV0ZrWlhKektTNW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaG9aV0ZrWlhJcElIdGNiaUFnSUNBZ0lDQWdlR2h5TG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvYUdWaFpHVnlMQ0JvWldGa1pYSnpXMmhsWVdSbGNsMHBPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUhob2NpNXZibkpsWVdSNWMzUmhkR1ZqYUdGdVoyVWdQU0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2g0YUhJdWNtVmhaSGxUZEdGMFpTQTlQVDBnTkNrZ2UxeHVYRzRnSUNBZ0lDQWdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhaaGNpQnlaWE53YjI1elpTQTlJSGhvY2k1eVpYTndiMjV6WlZSbGVIUWdQeUJLVTA5T0xuQmhjbk5sS0hob2NpNXlaWE53YjI1elpWUmxlSFFwSURvZ2JuVnNiRHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2g0YUhJdWMzUmhkSFZ6SUQ0OUlESXdNQ0FtSmlCNGFISXVjM1JoZEhWeklEd2dNekF3S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGMyOXNkbVVvY21WemNHOXVjMlVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2NtVnFaV04wS0hKbGMzQnZibk5sS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnSUNCOUlHTmhkR05vSUNobEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpXcGxZM1FvWlNrN1hHNGdJQ0FnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwN1hHNGdJQ0FnSUNCNGFISXVjMlZ1WkNoa1lYUmhLVHRjYmlBZ0lDQjlJR05oZEdOb0lDaGxLU0I3WEc0Z0lDQWdJQ0J5WldwbFkzUW9aU2s3WEc0Z0lDQWdmVnh1SUNCOUtUdGNibjA3WEc1Y2JtMXZaSFZzWlM1bGVIQnZjblJ6SUQwZ2UxeHVJQ0JoY25KaGVYTkVhV1ptWlhJNklHWjFibU4wYVc5dUlDaGhjbkpoZVVFc0lHRnljbUY1UWlrZ2UxeHVJQ0FnSUhaaGNpQnBjMFJwWm1abGNtVnVkQ0E5SUdaaGJITmxPMXh1SUNBZ0lHbG1JQ2hoY25KaGVVRXViR1Z1WjNSb0lDRTlQU0JoY25KaGVVSXViR1Z1WjNSb0tTQjdYRzRnSUNBZ0lDQnBjMFJwWm1abGNtVnVkQ0E5SUhSeWRXVTdYRzRnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUdGeWNtRjVRUzVtYjNKRllXTm9LR1oxYm1OMGFXOXVJQ2hwZEdWdExDQnBibVJsZUNrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYVhSbGJTQWhQVDBnWVhKeVlYbENXMmx1WkdWNFhTa2dlMXh1SUNBZ0lDQWdJQ0FnSUdselJHbG1abVZ5Wlc1MElEMGdkSEoxWlR0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ2ZWeHVJQ0FnSUhKbGRIVnliaUJwYzBScFptWmxjbVZ1ZER0Y2JpQWdmU3hjYmlBZ1lXcGhlRG9nZTF4dUlDQWdJSEJ2YzNRNklISmxjWFZsYzNRdVltbHVaQ2h1ZFd4c0xDQW5VRTlUVkNjcExGeHVJQ0FnSUhCMWREb2djbVZ4ZFdWemRDNWlhVzVrS0c1MWJHd3NJQ2RRVlZRbktWeHVJQ0I5WEc1OU8xeHVJbDE5IiwibW9kdWxlLmV4cG9ydHMgPSB7XG4gICdpc1ZhbHVlJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlICE9PSAnJztcbiAgfSxcbiAgJ2lzRW1haWwnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL14oKChbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKFxcLihbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKSopfCgoXFx4MjIpKCgoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oKFtcXHgwMS1cXHgwOFxceDBiXFx4MGNcXHgwZS1cXHgxZlxceDdmXXxcXHgyMXxbXFx4MjMtXFx4NWJdfFtcXHg1ZC1cXHg3ZV18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pfChcXFxcKFtcXHgwMS1cXHgwOVxceDBiXFx4MGNcXHgwZC1cXHg3Zl18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pKSkpKigoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oXFx4MjIpKSlAKCgoW2Etel18XFxkfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKXwoKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkpKVxcLikrKChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSl8KChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSkpJC9pKTtcbiAgfSxcbiAgJ2lzVHJ1ZSc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gdHJ1ZTtcbiAgfSxcbiAgJ2lzTnVtZXJpYyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFyIG1hdGNoUmVzdWx0cyA9IHZhbHVlLm1hdGNoKC9bLStdPyhcXGQqWy5dKT9cXGQrLyk7XG4gICAgICBpZiAoISEgbWF0Y2hSZXN1bHRzKSB7XG4gICAgICAgIHJldHVybiBtYXRjaFJlc3VsdHNbMF0gPT0gdmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9LFxuICAnaXNBbHBoYSc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpdKyQvKTtcbiAgfSxcbiAgJ2lzV29yZHMnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL15bYS16QS1aXFxzXSskLyk7XG4gIH0sXG4gICdpc1NwZWNpYWxXb3Jkcyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpcXHNcXHUwMEMwLVxcdTAxN0ZdKyQvKTtcbiAgfSxcbiAgaXNMZW5ndGg6IGZ1bmN0aW9uICh2YWx1ZSwgbWluLCBtYXgpIHtcbiAgICBpZiAobWF4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPj0gbWluICYmIHZhbHVlLmxlbmd0aCA8PSBtYXg7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPj0gbWluO1xuICB9LFxuICBlcXVhbHM6IGZ1bmN0aW9uICh2YWx1ZSwgZXFsKSB7XG4gICAgcmV0dXJuIHZhbHVlID09IGVxbDtcbiAgfSxcbiAgZXF1YWxzRmllbGQ6IGZ1bmN0aW9uICh2YWx1ZSwgZmllbGQpIHtcbiAgICByZXR1cm4gdmFsdWUgPT0gdGhpc1tmaWVsZF07XG4gIH1cbn07XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdmRtRnNhV1JoZEdsdmJsSjFiR1Z6TG1weklpd2ljMjkxY21ObGN5STZXeUl2VlhObGNuTXZZMmh5YVhOMGFXRnVZV3htYjI1cEwwUnZZM1Z0Wlc1MGN5OWtaWFl2Wm05eWJYTjVMWEpsWVdOMEwzTnlZeTkyWVd4cFpHRjBhVzl1VW5Wc1pYTXVhbk1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFc1RVRkJUU3hEUVVGRExFOUJRVThzUjBGQlJ6dEZRVU5tTEZOQlFWTXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVNeFFpeFBRVUZQTEV0QlFVc3NTMEZCU3l4RlFVRkZMRU5CUVVNN1IwRkRja0k3UlVGRFJDeFRRVUZUTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRNVUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMSGswUWtGQmVUUkNMRU5CUVVNc1EwRkJRenRIUVVNdk5VSTdSVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3U1VGRGVrSXNUMEZCVHl4TFFVRkxMRXRCUVVzc1NVRkJTU3hEUVVGRE8wZEJRM1pDTzBWQlEwUXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8wbEJRelZDTEVsQlFVa3NUMEZCVHl4TFFVRkxMRXRCUVVzc1VVRkJVU3hGUVVGRk8wMUJRemRDTEU5QlFVOHNTVUZCU1N4RFFVRkRPMHRCUTJJc1RVRkJUVHROUVVOTUxFbEJRVWtzV1VGQldTeEhRVUZITEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc2JVSkJRVzFDTEVOQlFVTXNRMEZCUXp0TlFVTndSQ3hKUVVGSkxFTkJRVU1zUlVGQlJTeFpRVUZaTEVWQlFVVTdVVUZEYmtJc1QwRkJUeXhaUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NTMEZCU3l4RFFVRkRPMDlCUTJwRExFMUJRVTA3VVVGRFRDeFBRVUZQTEV0QlFVc3NRMEZCUXp0UFFVTmtPMHRCUTBZN1IwRkRSanRGUVVORUxGTkJRVk1zUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0SlFVTXhRaXhQUVVGUExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4RFFVRkRMRU5CUVVNN1IwRkRia003UlVGRFJDeFRRVUZUTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRNVUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1EwRkJReXhEUVVGRE8wZEJRM0pETzBWQlEwUXNaMEpCUVdkQ0xFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdTVUZEYWtNc1QwRkJUeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETERSQ1FVRTBRaXhEUVVGRExFTkJRVU03UjBGRGJFUTdSVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVVzUjBGQlJ5eEZRVUZGTEVkQlFVY3NSVUZCUlR0SlFVTnVReXhKUVVGSkxFZEJRVWNzUzBGQlN5eFRRVUZUTEVWQlFVVTdUVUZEY2tJc1QwRkJUeXhMUVVGTExFTkJRVU1zVFVGQlRTeEpRVUZKTEVkQlFVY3NTVUZCU1N4TFFVRkxMRU5CUVVNc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF6dExRVU51UkR0SlFVTkVMRTlCUVU4c1MwRkJTeXhEUVVGRExFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVTTdSMEZETlVJN1JVRkRSQ3hOUVVGTkxFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVXNSMEZCUnl4RlFVRkZPMGxCUXpWQ0xFOUJRVThzUzBGQlN5eEpRVUZKTEVkQlFVY3NRMEZCUXp0SFFVTnlRanRGUVVORUxGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlN4TFFVRkxMRVZCUVVVN1NVRkRia01zVDBGQlR5eExRVUZMTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wZEJRemRDTzBOQlEwWXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltMXZaSFZzWlM1bGVIQnZjblJ6SUQwZ2UxeHVJQ0FuYVhOV1lXeDFaU2M2SUdaMWJtTjBhVzl1SUNoMllXeDFaU2tnZTF4dUlDQWdJSEpsZEhWeWJpQjJZV3gxWlNBaFBUMGdKeWM3WEc0Z0lIMHNYRzRnSUNkcGMwVnRZV2xzSnpvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbExtMWhkR05vS0M5ZUtDZ29XMkV0ZWwxOFhGeGtmRnNoSTF4Y0pDVW1KMXhjS2x4Y0sxeGNMVnhjTHoxY1hEOWNYRjVmWUh0Y1hIeDlmbDE4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEt5aGNYQzRvVzJFdGVsMThYRnhrZkZzaEkxeGNKQ1VtSjF4Y0tseGNLMXhjTFZ4Y0x6MWNYRDljWEY1ZllIdGNYSHg5ZmwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLeWtxS1h3b0tGeGNlREl5S1Nnb0tDaGNYSGd5TUh4Y1hIZ3dPU2txS0Z4Y2VEQmtYRng0TUdFcEtUOG9YRng0TWpCOFhGeDRNRGtwS3lrL0tDaGJYRng0TURFdFhGeDRNRGhjWEhnd1lseGNlREJqWEZ4NE1HVXRYRng0TVdaY1hIZzNabDE4WEZ4NE1qRjhXMXhjZURJekxWeGNlRFZpWFh4YlhGeDROV1F0WEZ4NE4yVmRmRnRjWEhVd01FRXdMVnhjZFVRM1JrWmNYSFZHT1RBd0xWeGNkVVpFUTBaY1hIVkdSRVl3TFZ4Y2RVWkdSVVpkS1h3b1hGeGNYQ2hiWEZ4NE1ERXRYRng0TURsY1hIZ3dZbHhjZURCalhGeDRNR1F0WEZ4NE4yWmRmRnRjWEhVd01FRXdMVnhjZFVRM1JrWmNYSFZHT1RBd0xWeGNkVVpFUTBaY1hIVkdSRVl3TFZ4Y2RVWkdSVVpkS1NrcEtTb29LQ2hjWEhneU1IeGNYSGd3T1NrcUtGeGNlREJrWEZ4NE1HRXBLVDhvWEZ4NE1qQjhYRng0TURrcEt5ay9LRnhjZURJeUtTa3BRQ2dvS0Z0aExYcGRmRnhjWkh4YlhGeDFNREJCTUMxY1hIVkVOMFpHWEZ4MVJqa3dNQzFjWEhWR1JFTkdYRngxUmtSR01DMWNYSFZHUmtWR1hTbDhLQ2hiWVMxNlhYeGNYR1I4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEtGdGhMWHBkZkZ4Y1pId3RmRnhjTG54ZmZINThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS2loYllTMTZYWHhjWEdSOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLU2xjWEM0cEt5Z29XMkV0ZWwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBmQ2dvVzJFdGVsMThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS0Z0aExYcGRmRnhjWkh3dGZGeGNMbnhmZkg1OFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLaWhiWVMxNlhYeGJYRngxTURCQk1DMWNYSFZFTjBaR1hGeDFSamt3TUMxY1hIVkdSRU5HWEZ4MVJrUkdNQzFjWEhWR1JrVkdYU2twS1NRdmFTazdYRzRnSUgwc1hHNGdJQ2RwYzFSeWRXVW5PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1VnUFQwOUlIUnlkV1U3WEc0Z0lIMHNYRzRnSUNkcGMwNTFiV1Z5YVdNbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCcFppQW9kSGx3Wlc5bUlIWmhiSFZsSUQwOVBTQW5iblZ0WW1WeUp5a2dlMXh1SUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1U3WEc0Z0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lIWmhjaUJ0WVhSamFGSmxjM1ZzZEhNZ1BTQjJZV3gxWlM1dFlYUmphQ2d2V3kwclhUOG9YRnhrS2xzdVhTay9YRnhrS3k4cE8xeHVJQ0FnSUNBZ2FXWWdLQ0VoSUcxaGRHTm9VbVZ6ZFd4MGN5a2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdiV0YwWTJoU1pYTjFiSFJ6V3pCZElEMDlJSFpoYkhWbE8xeHVJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUdaaGJITmxPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNiaUFnZlN4Y2JpQWdKMmx6UVd4d2FHRW5PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YldGMFkyZ29MMTViWVMxNlFTMWFYU3NrTHlrN1hHNGdJSDBzWEc0Z0lDZHBjMWR2Y21Sekp6b2dablZ1WTNScGIyNGdLSFpoYkhWbEtTQjdYRzRnSUNBZ2NtVjBkWEp1SUhaaGJIVmxMbTFoZEdOb0tDOWVXMkV0ZWtFdFdseGNjMTBySkM4cE8xeHVJQ0I5TEZ4dUlDQW5hWE5UY0dWamFXRnNWMjl5WkhNbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVXViV0YwWTJnb0wxNWJZUzE2UVMxYVhGeHpYRngxTURCRE1DMWNYSFV3TVRkR1hTc2tMeWs3WEc0Z0lIMHNYRzRnSUdselRHVnVaM1JvT2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VzSUcxcGJpd2diV0Y0S1NCN1hHNGdJQ0FnYVdZZ0tHMWhlQ0FoUFQwZ2RXNWtaV1pwYm1Wa0tTQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YkdWdVozUm9JRDQ5SUcxcGJpQW1KaUIyWVd4MVpTNXNaVzVuZEdnZ1BEMGdiV0Y0TzF4dUlDQWdJSDFjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YkdWdVozUm9JRDQ5SUcxcGJqdGNiaUFnZlN4Y2JpQWdaWEYxWVd4ek9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVc0lHVnhiQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjJZV3gxWlNBOVBTQmxjV3c3WEc0Z0lIMHNYRzRnSUdWeGRXRnNjMFpwWld4a09pQm1kVzVqZEdsdmJpQW9kbUZzZFdVc0lHWnBaV3hrS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbElEMDlJSFJvYVhOYlptbGxiR1JkTzF4dUlDQjlYRzU5TzF4dUlsMTkiXX0= diff --git a/build/specs.js b/build/specs.js index d6201a1..85c02bf 100644 --- a/build/specs.js +++ b/build/specs.js @@ -1222,7 +1222,7 @@ describe('Validation', function() { }); - it('should use provided checkValidity function', function () { + it('should use provided validate function', function () { var isValid = jasmine.createSpy('valid'); var TestInput = React.createClass({displayName: "TestInput", @@ -1236,7 +1236,7 @@ describe('Validation', function() { } return React.createElement("input", {value: this.getValue(), onChange: this.updateValue}) }, - checkValidity: function () { + validate: function () { return this.getValue() === "checkValidity"; } }); @@ -1247,7 +1247,6 @@ describe('Validation', function() { ); var input = TestUtils.findRenderedDOMComponentWithTag(form, 'INPUT'); - expect(isValid).not.toHaveBeenCalled(); TestUtils.Simulate.change(input, {target: {value: 'checkValidity'}}); expect(isValid).toHaveBeenCalled(); @@ -1771,7 +1770,7 @@ Formsy.Form = React.createClass({displayName: "Form", } var isValid = true; - if (component.validate) { + if (component.validate && typeof component.validate === 'function') { isValid = component.validate(); } else if (component.props.required || component._validations) { isValid = this.runValidation(component); @@ -2038,4 +2037,4 @@ module.exports = { },{}]},{},["./specs/Element-spec.js","./specs/Formsy-spec.js","./specs/Submit-spec.js","./specs/Validation-spec.js"]) -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NwZWNzL0VsZW1lbnQtc3BlYy5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3BlY3MvRm9ybXN5LXNwZWMuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NwZWNzL1N1Ym1pdC1zcGVjLmpzIiwiL1VzZXJzL2NocmlzdGlhbmFsZm9uaS9Eb2N1bWVudHMvZGV2L2Zvcm1zeS1yZWFjdC9zcGVjcy9WYWxpZGF0aW9uLXNwZWMuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy9NaXhpbi5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3JjL21haW4uanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy91dGlscy5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3JjL3ZhbGlkYXRpb25SdWxlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQ0FBLElBQUksTUFBTSxHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDOztBQUV6QyxRQUFRLENBQUMsU0FBUyxFQUFFLFdBQVc7O0FBRS9CLEVBQUUsRUFBRSxDQUFDLGlFQUFpRSxFQUFFLFlBQVk7O0lBRWhGLElBQUksU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxXQUFXLEVBQUUsV0FBVztNQUN6RCxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxD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QUFHLENBQUM7R0FDckI7RUFDRCxXQUFXLEVBQUUsVUFBVSxLQUFLLEVBQUUsS0FBSyxFQUFFO0lBQ25DLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztHQUM3QjtBQUNILENBQUMsQ0FBQzs7QUFFRiIsImZpbGUiOiJnZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiKGZ1bmN0aW9uIGUodCxuLHIpe2Z1bmN0aW9uIHMobyx1KXtpZighbltvXSl7aWYoIXRbb10pe3ZhciBhPXR5cGVvZiByZXF1aXJlPT1cImZ1bmN0aW9uXCImJnJlcXVpcmU7aWYoIXUmJmEpcmV0dXJuIGEobywhMCk7aWYoaSlyZXR1cm4gaShvLCEwKTt2YXIgZj1uZXcgRXJyb3IoXCJDYW5ub3QgZmluZCBtb2R1bGUgJ1wiK28rXCInXCIpO3Rocm93IGYuY29kZT1cIk1PRFVMRV9OT1RfRk9VTkRcIixmfXZhciBsPW5bb109e2V4cG9ydHM6e319O3Rbb11bMF0uY2FsbChsLmV4cG9ydHMsZnVuY3Rpb24oZSl7dmFyIG49dFtvXVsxXVtlXTtyZXR1cm4gcyhuP246ZSl9LGwsbC5leHBvcnRzLGUsdCxuLHIpfXJldHVybiBuW29dLmV4cG9ydHN9dmFyIGk9dHlwZW9mIHJlcXVpcmU9PVwiZnVuY3Rpb25cIiYmcmVxdWlyZTtmb3IodmFyIG89MDtvPHIubGVuZ3RoO28rKylzKHJbb10pO3JldHVybiBzfSkiLCJ2YXIgRm9ybXN5ID0gcmVxdWlyZSgnLi8uLi9zcmMvbWFpbi5qcycpO1xuXG5kZXNjcmliZSgnRWxlbWVudCcsIGZ1bmN0aW9uKCkge1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHBhc3NlZCBhbmQgc2V0VmFsdWUoKSB2YWx1ZSB3aGVuIHVzaW5nIGdldFZhbHVlKCknLCBmdW5jdGlvbiAoKSB7XG4gICAgXG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIG51bGwsIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHZhbHVlOiBcImZvb1wifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgZXhwZWN0KGlucHV0LmdldERPTU5vZGUoKS52YWx1ZSkudG9CZSgnZm9vJyk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnZm9vYmFyJ319KTtcbiAgICBleHBlY3QoaW5wdXQuZ2V0RE9NTm9kZSgpLnZhbHVlKS50b0JlKCdmb29iYXInKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHNldCBiYWNrIHRvIHByaXN0aW5lIHZhbHVlIHdoZW4gcnVubmluZyByZXNldCcsIGZ1bmN0aW9uICgpIHtcbiAgICBcbiAgICB2YXIgcmVzZXQgPSBudWxsO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmVzZXQgPSB0aGlzLnJlc2V0VmFsdWU7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvb2Jhcid9fSk7XG4gICAgcmVzZXQoKTtcbiAgICBleHBlY3QoaW5wdXQuZ2V0RE9NTm9kZSgpLnZhbHVlKS50b0JlKCdmb28nKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiBlcnJvciBtZXNzYWdlIHBhc3NlZCB3aGVuIGNhbGxpbmcgZ2V0RXJyb3JNZXNzYWdlKCknLCBmdW5jdGlvbiAoKSB7XG4gICAgXG4gICAgdmFyIGdldEVycm9yTWVzc2FnZSA9IG51bGw7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICBnZXRFcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZTtcbiAgICAgIH0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIG51bGwsIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHZhbHVlOiBcImZvb1wiLCB2YWxpZGF0aW9uczogXCJpc0VtYWlsXCIsIHZhbGlkYXRpb25FcnJvcjogXCJIYXMgdG8gYmUgZW1haWxcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIGV4cGVjdChnZXRFcnJvck1lc3NhZ2UoKSkudG9CZSgnSGFzIHRvIGJlIGVtYWlsJyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gc2VydmVyIGVycm9yIG1lc3NhZ2Ugd2hlbiBjYWxsaW5nIGdldEVycm9yTWVzc2FnZSgpJywgZnVuY3Rpb24gKGRvbmUpIHtcbiAgICBcbiAgICBqYXNtaW5lLkFqYXguaW5zdGFsbCgpO1xuXG4gICAgdmFyIGdldEVycm9yTWVzc2FnZSA9IG51bGw7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICBnZXRFcnJvck1lc3NhZ2UgPSB0aGlzLmdldEVycm9yTWVzc2FnZTtcbiAgICAgIH0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCJ9LCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIiwgdmFsaWRhdGlvbnM6IFwiaXNFbWFpbFwiLCB2YWxpZGF0aW9uRXJyb3I6IFwiSGFzIHRvIGJlIGVtYWlsXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuXG4gICAgamFzbWluZS5BamF4LnJlcXVlc3RzLm1vc3RSZWNlbnQoKS5yZXNwb25kV2l0aCh7XG4gICAgICBzdGF0dXM6IDUwMCxcbiAgICAgIGNvbnRlbnRUeXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICByZXNwb25zZVRleHQ6ICd7XCJmb29cIjogXCJiYXJcIn0nXG4gICAgfSlcblxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgZXhwZWN0KGdldEVycm9yTWVzc2FnZSgpKS50b0JlKCdiYXInKTtcbiAgICAgIGphc21pbmUuQWpheC51bmluc3RhbGwoKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9LCAwKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0cnVlIG9yIGZhbHNlIHdoZW4gY2FsbGluZyBpc1ZhbGlkKCkgZGVwZW5kaW5nIG9uIHZhbGlkIHN0YXRlJywgZnVuY3Rpb24gKCkge1xuICAgIFxuICAgIHZhciBpc1ZhbGlkID0gbnVsbDtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlzVmFsaWQgPSB0aGlzLmlzVmFsaWQ7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIGV4cGVjdChpc1ZhbGlkKCkpLnRvQmUoZmFsc2UpO1xuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvb0Bmb28uY29tJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCgpKS50b0JlKHRydWUpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2Ugd2hlbiBjYWxsaW5nIGlzUmVxdWlyZWQoKSBkZXBlbmRpbmcgb24gcGFzc2VkIHJlcXVpcmVkIGF0dHJpYnV0ZScsIGZ1bmN0aW9uICgpIHtcbiAgICBcbiAgICB2YXIgaXNSZXF1aXJlZHMgPSBbXTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlzUmVxdWlyZWRzLnB1c2godGhpcy5pc1JlcXVpcmVkKTtcbiAgICAgIH0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCJ9LCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIn0pLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIiwgcmVxdWlyZWQ6IHRydWV9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICBleHBlY3QoaXNSZXF1aXJlZHNbMF0oKSkudG9CZShmYWxzZSk7XG4gICAgZXhwZWN0KGlzUmVxdWlyZWRzWzFdKCkpLnRvQmUodHJ1ZSk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gdHJ1ZSBvciBmYWxzZSB3aGVuIGNhbGxpbmcgc2hvd1JlcXVpcmVkKCkgZGVwZW5kaW5nIG9uIGlucHV0IGJlaW5nIGVtcHR5IGFuZCByZXF1aXJlZCBpcyBwYXNzZWQsIG9yIG5vdCcsIGZ1bmN0aW9uICgpIHtcbiAgICBcbiAgICB2YXIgc2hvd1JlcXVpcmVkcyA9IFtdO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgc2hvd1JlcXVpcmVkcy5wdXNoKHRoaXMuc2hvd1JlcXVpcmVkKTtcbiAgICAgIH0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCJ9LCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcIkFcIiwgdmFsdWU6IFwiZm9vXCJ9KSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJCXCIsIHZhbHVlOiBcIlwiLCByZXF1aXJlZDogdHJ1ZX0pLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcIkNcIiwgdmFsdWU6IFwiXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICBleHBlY3Qoc2hvd1JlcXVpcmVkc1swXSgpKS50b0JlKGZhbHNlKTtcbiAgICBleHBlY3Qoc2hvd1JlcXVpcmVkc1sxXSgpKS50b0JlKHRydWUpO1xuICAgIGV4cGVjdChzaG93UmVxdWlyZWRzWzJdKCkpLnRvQmUoZmFsc2UpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2Ugd2hlbiBjYWxsaW5nIHNob3dFcnJvcigpIGRlcGVuZGluZyBvbiB2YWx1ZSBpcyBpbnZhbGlkIG9yIGEgc2VydmVyIGVycm9yIGhhcyBhcnJpdmVkLCBvciBub3QnLCBmdW5jdGlvbiAoZG9uZSkge1xuXG4gICAgdmFyIHNob3dFcnJvciA9IG51bGw7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICBzaG93RXJyb3IgPSB0aGlzLnNob3dFcnJvcjtcbiAgICAgIH0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCJ9LCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIiwgdmFsaWRhdGlvbnM6IFwiaXNFbWFpbFwiLCB2YWxpZGF0aW9uRXJyb3I6IFwiVGhpcyBpcyBub3QgYW4gZW1haWxcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIGV4cGVjdChzaG93RXJyb3IoKSkudG9CZSh0cnVlKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvb0Bmb28uY29tJ319KTtcbiAgICBleHBlY3Qoc2hvd0Vycm9yKCkpLnRvQmUoZmFsc2UpO1xuXG4gICAgamFzbWluZS5BamF4Lmluc3RhbGwoKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTsgICAgXG4gICAgamFzbWluZS5BamF4LnJlcXVlc3RzLm1vc3RSZWNlbnQoKS5yZXNwb25kV2l0aCh7XG4gICAgICBzdGF0dXM6IDUwMCxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgcmVzcG9uc2VUZXh0OiAne1wiZm9vXCI6IFwiRW1haWwgYWxyZWFkeSBleGlzdHNcIn0nXG4gICAgfSk7XG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBleHBlY3Qoc2hvd0Vycm9yKCkpLnRvQmUodHJ1ZSk7XG4gICAgICBqYXNtaW5lLkFqYXgudW5pbnN0YWxsKCk7XG4gICAgICBkb25lKCk7XG4gICAgfSwgMCk7XG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2Ugd2hlbiBjYWxsaW5nIGlzUHJpc3RpbmUoKSBkZXBlbmRpbmcgb24gaW5wdXQgaGFzIGJlZW4gXCJ0b3VjaGVkXCIgb3Igbm90JywgZnVuY3Rpb24gKCkge1xuICAgIFxuICAgIHZhciBpc1ByaXN0aW5lID0gbnVsbDtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlzUHJpc3RpbmUgPSB0aGlzLmlzUHJpc3RpbmU7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJBXCIsIHZhbHVlOiBcImZvb1wifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgZXhwZWN0KGlzUHJpc3RpbmUoKSkudG9CZSh0cnVlKTtcbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICdmb28nfX0pO1xuICAgIGV4cGVjdChpc1ByaXN0aW5lKCkpLnRvQmUoZmFsc2UpO1xuICAgIFxuICB9KTtcblxuaXQoJ3Nob3VsZCBhbGxvdyBhbiB1bmRlZmluZWQgdmFsdWUgdG8gYmUgdXBkYXRlZCB0byBhIHZhbHVlJywgZnVuY3Rpb24gKGRvbmUpIHtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgIGdldEluaXRpYWxTdGF0ZTogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4ge3ZhbHVlOiB1bmRlZmluZWR9O1xuICAgICAgfSxcbiAgICAgIGNoYW5nZVZhbHVlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgIHZhbHVlOiAnZm9vJ1xuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiQVwiLCB2YWx1ZTogdGhpcy5zdGF0ZS52YWx1ZX0pXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpXG4gICAgKTtcblxuICAgIGZvcm0uY2hhbmdlVmFsdWUoKTtcbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGV4cGVjdChpbnB1dC5nZXRET01Ob2RlKCkudmFsdWUpLnRvQmUoJ2ZvbycpO1xuICAgICAgZG9uZSgpO1xuICAgIH0sIDApO1xuICB9KTsgIFxuXG4gIGl0KCdzaG91bGQgYmUgYWJsZSB0byBkeW5hbWljYWxseSBjaGFuZ2UgdmFsaWRhdGlvbnMnLCBmdW5jdGlvbiAoZG9uZSkge1xuXG4gICAgdmFyIGlzSW52YWxpZCA9IGZhbHNlO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCl9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgZ2V0SW5pdGlhbFN0YXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiB7dmFsdWU6ICdmb29AYmFyLmNvbScsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCd9O1xuICAgICAgfSxcbiAgICAgIGNoYW5nZVZhbGlkYXRpb25zOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgIHZhbGlkYXRpb25zOiAnZXF1YWxzOmZvbydcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgc2V0SW52YWxpZDogZnVuY3Rpb24gKCkge1xuICAgICAgICBjb25zb2xlLmxvZygnUnVubmluZyBpdCEnKTtcbiAgICAgICAgaXNJbnZhbGlkID0gdHJ1ZTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wiLCBvbkludmFsaWQ6IHRoaXMuc2V0SW52YWxpZH0sIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcIkFcIiwgdmFsaWRhdGlvbnM6IHRoaXMuc3RhdGUudmFsaWRhdGlvbnMsIHZhbHVlOiB0aGlzLnN0YXRlLnZhbHVlfSlcbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwgbnVsbClcbiAgICApO1xuXG4gICAgZm9ybS5jaGFuZ2VWYWxpZGF0aW9ucygpO1xuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgZXhwZWN0KGlzSW52YWxpZCkudG9CZSh0cnVlKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9LCAwKTtcbiAgfSk7ICBcblxuICBpdCgnc2hvdWxkIGJlIGFibGUgdG8gdGVzdCBhIHZhbHVlcyB2YWxpZGl0eScsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBpc0ludmFsaWQgPSBmYWxzZTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIG51bGwsIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcIkFcIiwgdmFsaWRhdGlvbnM6IFwiaXNFbWFpbFwifSlcbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwgbnVsbClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZENvbXBvbmVudFdpdGhUeXBlKGZvcm0sIFRlc3RJbnB1dCk7XG4gICAgZXhwZWN0KGlucHV0LmlzVmFsaWRWYWx1ZSgnZm9vQGJhci5jb20nKSkudG9CZSh0cnVlKTtcbiAgICBleHBlY3QoaW5wdXQuaXNWYWxpZFZhbHVlKCdmb29AYmFyJykpLnRvQmUoZmFsc2UpO1xuXG4gIH0pOyBcblxufSk7XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y0dWamN5OUZiR1Z0Wlc1MExYTndaV011YW5NaUxDSnpiM1Z5WTJWeklqcGJJaTlWYzJWeWN5OWphSEpwYzNScFlXNWhiR1p2Ym1rdlJHOWpkVzFsYm5SekwyUmxkaTltYjNKdGMza3RjbVZoWTNRdmMzQmxZM012Uld4bGJXVnVkQzF6Y0dWakxtcHpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSkJRVUZCTEVsQlFVa3NUVUZCVFN4SFFVRkhMRTlCUVU4c1EwRkJReXhyUWtGQmEwSXNRMEZCUXl4RFFVRkRPenRCUVVWNlF5eFJRVUZSTEVOQlFVTXNVMEZCVXl4RlFVRkZMRmRCUVZjN08wRkJSUzlDTEVWQlFVVXNSVUZCUlN4RFFVRkRMR2xGUVVGcFJTeEZRVUZGTEZsQlFWazdPMGxCUldoR0xFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8wMUJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VFVGRGRFSXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UFFVTnVRenROUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENMRTlCUVU4c2IwSkJRVUVzVDBGQlRTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hKUVVGSkxFTkJRVU1zVVVGQlVTeEZRVUZGTEVWQlFVTXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hKUVVGSkxFTkJRVU1zVjBGQldTeERRVUZGTEVOQlFVRTdUMEZEY0VVN1MwRkRSaXhEUVVGRExFTkJRVU03U1VGRFNDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTzAxQlEzSkRMRzlDUVVGRExGZEJRVmNzUlVGQlFTeEpRVUZETEVWQlFVRTdVVUZEV0N4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVc3NRMEZCUlN4RFFVRkJPMDFCUTNaQ0xFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1NVRkROME1zVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU5zUlN4SlFVRkpMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZET3p0QlFVVndSQ3hIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXh6UkVGQmMwUXNSVUZCUlN4WlFVRlpPenRKUVVWeVJTeEpRVUZKTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNN1NVRkRha0lzU1VGQlNTd3JRa0ZCSzBJc2VVSkJRVUU3VFVGRGFrTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF6dE5RVU4wUWl4cFFrRkJhVUlzUlVGQlJTeFpRVUZaTzFGQlF6ZENMRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU1zVlVGQlZTeERRVUZETzA5QlEzcENPMDFCUTBRc1YwRkJWeXhGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzFGQlF6VkNMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRQUVVOdVF6dE5RVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMUZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4SlFVRkRMRVZCUVVFN1VVRkRXQ3h2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVzc1EwRkJSU3hEUVVGQk8wMUJRM1pDTEVOQlFVRTdRVUZEY0VJc1MwRkJTeXhEUVVGRE96dEpRVVZHTEVsQlFVa3NTMEZCU3l4SFFVRkhMRk5CUVZNc1EwRkJReXdyUWtGQkswSXNRMEZCUXl4SlFVRkpMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU03U1VGRGNrVXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1MwRkJTeXhGUVVGRkxGRkJRVkVzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTTVSQ3hMUVVGTExFVkJRVVVzUTBGQlF6dEJRVU5hTEVsQlFVa3NUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03TzBGQlJXcEVMRWRCUVVjc1EwRkJReXhEUVVGRE96dEJRVVZNTEVWQlFVVXNSVUZCUlN4RFFVRkRMRzFGUVVGdFJTeEZRVUZGTEZsQlFWazdPMGxCUld4R0xFbEJRVWtzWlVGQlpTeEhRVUZITEVsQlFVa3NRMEZCUXp0SlFVTXpRaXhKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHROUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8wMUJRM1JDTEdsQ1FVRnBRaXhGUVVGRkxGbEJRVms3VVVGRE4wSXNaVUZCWlN4SFFVRkhMRWxCUVVrc1EwRkJReXhsUVVGbExFTkJRVU03VDBGRGVFTTdUVUZEUkN4WFFVRlhMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3VVVGRE5VSXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMDlCUTI1RE8wMUJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdVVUZEYkVJc1QwRkJUeXh2UWtGQlFTeFBRVUZOTEVWQlFVRXNRMEZCUVN4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVVXNSVUZCUXl4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eFhRVUZaTEVOQlFVVXNRMEZCUVR0UFFVTndSVHRMUVVOR0xFTkJRVU1zUTBGQlF6dEpRVU5JTEVsQlFVa3NTVUZCU1N4SFFVRkhMRk5CUVZNc1EwRkJReXhyUWtGQmEwSTdUVUZEY2tNc2IwSkJRVU1zVjBGQlZ5eEZRVUZCTEVsQlFVTXNSVUZCUVR0UlFVTllMRzlDUVVGRExGTkJRVk1zUlVGQlFTeERRVUZCTEVOQlFVTXNTVUZCUVN4RlFVRkpMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1YwRkJRU3hGUVVGWExFTkJRVU1zVTBGQlFTeEZRVUZUTEVOQlFVTXNaVUZCUVN4RlFVRmxMRU5CUVVNc2FVSkJRV2xDTEVOQlFVVXNRMEZCUVR0TlFVTXZSU3hEUVVGQk8wRkJRM0JDTEV0QlFVc3NRMEZCUXpzN1FVRkZUaXhKUVVGSkxFMUJRVTBzUTBGQlF5eGxRVUZsTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhwUWtGQmFVSXNRMEZCUXl4RFFVRkRPenRCUVVWMFJDeEhRVUZITEVOQlFVTXNRMEZCUXpzN1FVRkZUQ3hGUVVGRkxFVkJRVVVzUTBGQlF5eHRSVUZCYlVVc1JVRkJSU3hWUVVGVkxFbEJRVWtzUlVGQlJUczdRVUZGTVVZc1NVRkJTU3hQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRPenRKUVVWMlFpeEpRVUZKTEdWQlFXVXNSMEZCUnl4SlFVRkpMRU5CUVVNN1NVRkRNMElzU1VGQlNTd3JRa0ZCSzBJc2VVSkJRVUU3VFVGRGFrTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF6dE5RVU4wUWl4cFFrRkJhVUlzUlVGQlJTeFpRVUZaTzFGQlF6ZENMR1ZCUVdVc1IwRkJSeXhKUVVGSkxFTkJRVU1zWlVGQlpTeERRVUZETzA5QlEzaERPMDFCUTBRc1YwRkJWeXhGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzFGQlF6VkNMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRQUVVOdVF6dE5RVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMUZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4RFFVRkJMRU5CUVVNc1IwRkJRU3hGUVVGSExFTkJRVU1zVVVGQlV5eERRVUZCTEVWQlFVRTdVVUZEZUVJc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhYUVVGQkxFVkJRVmNzUTBGQlF5eFRRVUZCTEVWQlFWTXNRMEZCUXl4bFFVRkJMRVZCUVdVc1EwRkJReXhwUWtGQmFVSXNRMEZCUlN4RFFVRkJPMDFCUXk5RkxFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRCUVVWT0xFbEJRVWtzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEZWQlFWVXNSVUZCUlN4RFFVRkRMRU5CUVVNN08wbEJSWGhFTEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEZkQlFWY3NRMEZCUXp0TlFVTTNReXhOUVVGTkxFVkJRVVVzUjBGQlJ6dE5RVU5ZTEZkQlFWY3NSVUZCUlN4clFrRkJhMEk3VFVGREwwSXNXVUZCV1N4RlFVRkZMR2RDUVVGblFqdEJRVU53UXl4TFFVRkxMRU5CUVVNN08wbEJSVVlzVlVGQlZTeERRVUZETEZsQlFWazdUVUZEY2tJc1RVRkJUU3hEUVVGRExHVkJRV1VzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wMUJRM1JETEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03VFVGRGVrSXNTVUZCU1N4RlFVRkZMRU5CUVVNN1FVRkRZaXhMUVVGTExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUlZZc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc05rVkJRVFpGTEVWQlFVVXNXVUZCV1RzN1NVRkZOVVlzU1VGQlNTeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRPMGxCUTI1Q0xFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8wMUJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VFVGRGRFSXNhVUpCUVdsQ0xFVkJRVVVzV1VGQldUdFJRVU0zUWl4UFFVRlBMRWRCUVVjc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF6dFBRVU40UWp0TlFVTkVMRmRCUVZjc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdFJRVU0xUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1QwRkRia003VFVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0UlFVTnNRaXhQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkRMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZkQlFWa3NRMEZCUlN4RFFVRkJPMDlCUTNCRk8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0TlFVTnlReXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWRCUVVFc1JVRkJSeXhEUVVGRExGRkJRVk1zUTBGQlFTeEZRVUZCTzFGQlEzaENMRzlDUVVGRExGTkJRVk1zUlVGQlFTeERRVUZCTEVOQlFVTXNTVUZCUVN4RlFVRkpMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1YwRkJRU3hGUVVGWExFTkJRVU1zVTBGQlV5eERRVUZGTEVOQlFVRTdUVUZETjBNc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1RVRkJUU3hEUVVGRExFOUJRVThzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wbEJRemxDTEVsQlFVa3NTMEZCU3l4SFFVRkhMRk5CUVZNc1EwRkJReXdyUWtGQkswSXNRMEZCUXl4SlFVRkpMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU03U1VGRGNrVXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1MwRkJTeXhGUVVGRkxHRkJRV0VzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjJSU3hKUVVGSkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6czdRVUZGYWtNc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc09FWkJRVGhHTEVWQlFVVXNXVUZCV1RzN1NVRkZOMGNzU1VGQlNTeFhRVUZYTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTNKQ0xFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8wMUJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VFVGRGRFSXNhVUpCUVdsQ0xFVkJRVVVzV1VGQldUdFJRVU0zUWl4WFFVRlhMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0UFFVTnVRenROUVVORUxGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0UlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VDBGRGJrTTdUVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRSUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8wOUJRM0JGTzB0QlEwWXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFZEJRVUVzUlVGQlJ5eERRVUZETEZGQlFWTXNRMEZCUVN4RlFVRkJPMUZCUTNoQ0xHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRkxFTkJRVUVzUlVGQlFUdFJRVU51UXl4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRkZCUVVFc1JVRkJRU3hEUVVGRkxFTkJRVUU3VFVGRGVFSXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNUVUZCVFN4RFFVRkRMRmRCUVZjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRM3BETEVsQlFVa3NUVUZCVFN4RFFVRkRMRmRCUVZjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE96dEJRVVY0UXl4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl4MVNFRkJkVWdzUlVGQlJTeFpRVUZaT3p0SlFVVjBTU3hKUVVGSkxHRkJRV0VzUjBGQlJ5eEZRVUZGTEVOQlFVTTdTVUZEZGtJc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeHBRa0ZCYVVJc1JVRkJSU3haUVVGWk8xRkJRemRDTEdGQlFXRXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExGbEJRVmtzUTBGQlF5eERRVUZETzA5QlEzWkRPMDFCUTBRc1YwRkJWeXhGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzFGQlF6VkNMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRQUVVOdVF6dE5RVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMUZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4RFFVRkJMRU5CUVVNc1IwRkJRU3hGUVVGSExFTkJRVU1zVVVGQlV5eERRVUZCTEVWQlFVRTdVVUZEZUVJc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhIUVVGQkxFVkJRVWNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVVc1EwRkJRU3hGUVVGQk8xRkJRMnBETEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUlVGQlFTeEZRVUZGTEVOQlFVTXNVVUZCUVN4RlFVRkJMRU5CUVVVc1EwRkJRU3hGUVVGQk8xRkJReTlDTEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUlVGQlJTeERRVUZGTEVOQlFVRTdUVUZEYkVJc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1RVRkJUU3hEUVVGRExHRkJRV0VzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzBsQlEzWkRMRTFCUVUwc1EwRkJReXhoUVVGaExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEJRVU14UXl4SlFVRkpMRTFCUVUwc1EwRkJReXhoUVVGaExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6czdRVUZGTTBNc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc01FaEJRVEJJTEVWQlFVVXNWVUZCVlN4SlFVRkpMRVZCUVVVN08wbEJSVGRKTEVsQlFVa3NVMEZCVXl4SFFVRkhMRWxCUVVrc1EwRkJRenRKUVVOeVFpeEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdE5RVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzAxQlEzUkNMR2xDUVVGcFFpeEZRVUZGTEZsQlFWazdVVUZETjBJc1UwRkJVeXhIUVVGSExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTTdUMEZETlVJN1RVRkRSQ3hYUVVGWExFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdVVUZETlVJc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wOUJRMjVETzAxQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1VVRkRiRUlzVDBGQlR5eHZRa0ZCUVN4UFFVRk5MRVZCUVVFc1EwRkJRU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlJMRVZCUVVVc1JVRkJReXhEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4WFFVRlpMRU5CUVVVc1EwRkJRVHRQUVVOd1JUdExRVU5HTEVOQlFVTXNRMEZCUXp0SlFVTklMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1RVRkRja01zYjBKQlFVTXNWMEZCVnl4RlFVRkJMRU5CUVVFc1EwRkJReXhIUVVGQkxFVkJRVWNzUTBGQlF5eFJRVUZUTEVOQlFVRXNSVUZCUVR0UlFVTjRRaXh2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExGZEJRVUVzUlVGQlZ5eERRVUZETEZOQlFVRXNSVUZCVXl4RFFVRkRMR1ZCUVVFc1JVRkJaU3hEUVVGRExITkNRVUZ6UWl4RFFVRkZMRU5CUVVFN1RVRkRjRVlzUTBGQlFUdEJRVU53UWl4TFFVRkxMRU5CUVVNN08wRkJSVTRzU1VGQlNTeE5RVUZOTEVOQlFVTXNVMEZCVXl4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdPMGxCUlM5Q0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMR0ZCUVdFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4yUlN4SlFVRkpMRTFCUVUwc1EwRkJReXhUUVVGVExFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenM3U1VGRmFFTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFVkJRVVVzUTBGQlF6dEpRVU4yUWl4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRU5CUVVNc1EwRkJRenRKUVVNM1F5eFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eFhRVUZYTEVOQlFVTTdUVUZETjBNc1RVRkJUU3hGUVVGRkxFZEJRVWM3VFVGRFdDeFpRVUZaTEVWQlFVVXNhMEpCUVd0Q08wMUJRMmhETEZsQlFWa3NSVUZCUlN4cFEwRkJhVU03UzBGRGFFUXNRMEZCUXl4RFFVRkRPMGxCUTBnc1ZVRkJWU3hEUVVGRExGbEJRVms3VFVGRGNrSXNUVUZCVFN4RFFVRkRMRk5CUVZNc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUXk5Q0xFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNVMEZCVXl4RlFVRkZMRU5CUVVNN1RVRkRla0lzU1VGQlNTeEZRVUZGTEVOQlFVTTdTMEZEVWl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRMVlzUjBGQlJ5eERRVUZETEVOQlFVTTdPMEZCUlV3c1JVRkJSU3hGUVVGRkxFTkJRVU1zYjBkQlFXOUhMRVZCUVVVc1dVRkJXVHM3U1VGRmJrZ3NTVUZCU1N4VlFVRlZMRWRCUVVjc1NVRkJTU3hEUVVGRE8wbEJRM1JDTEVsQlFVa3NLMEpCUVN0Q0xIbENRVUZCTzAxQlEycERMRTFCUVUwc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTTdUVUZEZEVJc2FVSkJRV2xDTEVWQlFVVXNXVUZCV1R0UlFVTTNRaXhWUVVGVkxFZEJRVWNzU1VGQlNTeERRVUZETEZWQlFWVXNRMEZCUXp0UFFVTTVRanROUVVORUxGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0UlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VDBGRGJrTTdUVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRSUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8wOUJRM0JGTzB0QlEwWXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFZEJRVUVzUlVGQlJ5eERRVUZETEZGQlFWTXNRMEZCUVN4RlFVRkJPMUZCUTNoQ0xHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRkxFTkJRVUU3VFVGRGNrSXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNUVUZCVFN4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMGxCUTJoRExFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU12UkN4SlFVRkpMRTFCUVUwc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRmNrTXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeERRVUZETERCRVFVRXdSQ3hGUVVGRkxGVkJRVlVzU1VGQlNTeEZRVUZGTzBsQlF6TkZMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzVFVGQlRTeEZRVUZGTEZsQlFWazdVVUZEYkVJc1QwRkJUeXh2UWtGQlFTeFBRVUZOTEVWQlFVRXNRMEZCUVN4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVY3NRMEZCUlN4RFFVRkJPMDlCUTNoRE8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N3NFFrRkJPRUlzZDBKQlFVRTdUVUZEYUVNc1pVRkJaU3hGUVVGRkxGbEJRVms3VVVGRE0wSXNUMEZCVHl4RFFVRkRMRXRCUVVzc1JVRkJSU3hUUVVGVExFTkJRVU1zUTBGQlF6dFBRVU16UWp0TlFVTkVMRmRCUVZjc1JVRkJSU3haUVVGWk8xRkJRM1pDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNN1ZVRkRXaXhMUVVGTExFVkJRVVVzUzBGQlN6dFRRVU5pTEVOQlFVTXNRMEZCUXp0UFFVTktPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSTdWVUZEUlN4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEVkQlFVRXNSVUZCUnl4RFFVRkRMRkZCUVZNc1EwRkJRU3hGUVVGQk8xbEJRM2hDTEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TFFVRk5MRU5CUVVVc1EwRkJRVHRWUVVOc1F5eERRVUZCTzFWQlEyUTdUMEZEU0R0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFbEJRVVVzUTBGQlFUdEJRVU5xUWl4TFFVRkxMRU5CUVVNN08wbEJSVVlzU1VGQlNTeERRVUZETEZkQlFWY3NSVUZCUlN4RFFVRkRPMGxCUTI1Q0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVlVGQlZTeERRVUZETEZsQlFWazdUVUZEY2tJc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdUVUZETjBNc1NVRkJTU3hGUVVGRkxFTkJRVU03UzBGRFVpeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTFZc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2EwUkJRV3RFTEVWQlFVVXNWVUZCVlN4SlFVRkpMRVZCUVVVN08wbEJSWEpGTEVsQlFVa3NVMEZCVXl4SFFVRkhMRXRCUVVzc1EwRkJRenRKUVVOMFFpeEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdE5RVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzAxQlEzUkNMRTFCUVUwc1JVRkJSU3haUVVGWk8xRkJRMnhDTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGSExFTkJRVVVzUTBGQlFUdFBRVU40UXp0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzT0VKQlFUaENMSGRDUVVGQk8wMUJRMmhETEdWQlFXVXNSVUZCUlN4WlFVRlpPMUZCUXpOQ0xFOUJRVThzUTBGQlF5eExRVUZMTEVWQlFVVXNZVUZCWVN4RlFVRkZMRmRCUVZjc1JVRkJSU3hUUVVGVExFTkJRVU1zUTBGQlF6dFBRVU4yUkR0TlFVTkVMR2xDUVVGcFFpeEZRVUZGTEZsQlFWazdVVUZETjBJc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF6dFZRVU5hTEZkQlFWY3NSVUZCUlN4WlFVRlpPMU5CUXpGQ0xFTkJRVU1zUTBGQlF6dFBRVU5LTzAxQlEwUXNWVUZCVlN4RlFVRkZMRmxCUVZrN1VVRkRkRUlzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4aFFVRmhMRU5CUVVNc1EwRkJRenRSUVVNelFpeFRRVUZUTEVkQlFVY3NTVUZCU1N4RFFVRkRPMDlCUTJ4Q08wMUJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdVVUZEYkVJN1ZVRkRSU3h2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWRCUVVFc1JVRkJSeXhEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZETEZOQlFVRXNSVUZCVXl4RFFVRkZMRWxCUVVrc1EwRkJReXhWUVVGWkxFTkJRVUVzUlVGQlFUdFpRVU53UkN4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRWRCUVVFc1JVRkJSeXhEUVVGRExGZEJRVUVzUlVGQlZ5eERRVUZGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1YwRkJWeXhGUVVGRExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhMUVVGTkxFTkJRVVVzUTBGQlFUdFZRVU4yUlN4RFFVRkJPMVZCUTJRN1QwRkRTRHRMUVVOR0xFTkJRVU1zUTBGQlF6dEpRVU5JTEVsQlFVa3NTVUZCU1N4SFFVRkhMRk5CUVZNc1EwRkJReXhyUWtGQmEwSTdUVUZEY2tNc2IwSkJRVU1zVVVGQlVTeEZRVUZCTEVsQlFVVXNRMEZCUVR0QlFVTnFRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNTVUZCU1N4RFFVRkRMR2xDUVVGcFFpeEZRVUZGTEVOQlFVTTdTVUZEZWtJc1ZVRkJWU3hEUVVGRExGbEJRVms3VFVGRGNrSXNUVUZCVFN4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TlFVTTNRaXhKUVVGSkxFVkJRVVVzUTBGQlF6dExRVU5TTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRWaXhIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXd3UTBGQk1FTXNSVUZCUlN4WlFVRlpPenRKUVVWNlJDeEpRVUZKTEZOQlFWTXNSMEZCUnl4TFFVRkxMRU5CUVVNN1NVRkRkRUlzU1VGQlNTd3JRa0ZCSzBJc2VVSkJRVUU3VFVGRGFrTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF6dE5RVU4wUWl4TlFVRk5MRVZCUVVVc1dVRkJXVHRSUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSeXhEUVVGRkxFTkJRVUU3VDBGRGVFTTdTMEZEUml4RFFVRkRMRU5CUVVNN1NVRkRTQ3hKUVVGSkxEaENRVUU0UWl4M1FrRkJRVHROUVVOb1F5eE5RVUZOTEVWQlFVVXNXVUZCV1R0UlFVTnNRanRWUVVORkxHOUNRVUZETEZkQlFWY3NSVUZCUVN4SlFVRkRMRVZCUVVFN1dVRkRXQ3h2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFZEJRVUVzUlVGQlJ5eERRVUZETEZkQlFVRXNSVUZCVnl4RFFVRkRMRk5CUVZNc1EwRkJSU3hEUVVGQk8xVkJReTlDTEVOQlFVRTdWVUZEWkR0UFFVTklPMHRCUTBZc1EwRkJReXhEUVVGRE8wbEJRMGdzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdE5RVU55UXl4dlFrRkJReXhSUVVGUkxFVkJRVUVzU1VGQlJTeERRVUZCTzBGQlEycENMRXRCUVVzc1EwRkJRenM3U1VGRlJpeEpRVUZKTEV0QlFVc3NSMEZCUnl4VFFVRlRMRU5CUVVNc05rSkJRVFpDTEVOQlFVTXNTVUZCU1N4RlFVRkZMRk5CUVZNc1EwRkJReXhEUVVGRE8wbEJRM0pGTEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1dVRkJXU3hEUVVGRExHRkJRV0VzUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wRkJRM3BFTEVsQlFVa3NUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhaUVVGWkxFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03TzBGQlJYUkVMRWRCUVVjc1EwRkJReXhEUVVGRE96dERRVVZLTEVOQlFVTXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkluWmhjaUJHYjNKdGMza2dQU0J5WlhGMWFYSmxLQ2N1THk0dUwzTnlZeTl0WVdsdUxtcHpKeWs3WEc1Y2JtUmxjMk55YVdKbEtDZEZiR1Z0Wlc1MEp5d2dablZ1WTNScGIyNG9LU0I3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0J5WlhSMWNtNGdjR0Z6YzJWa0lHRnVaQ0J6WlhSV1lXeDFaU2dwSUhaaGJIVmxJSGRvWlc0Z2RYTnBibWNnWjJWMFZtRnNkV1VvS1Njc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQmNiaUFnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lIVndaR0YwWlZaaGJIVmxPaUJtZFc1amRHbHZiaUFvWlhabGJuUXBJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXpaWFJXWVd4MVpTaGxkbVZ1ZEM1MFlYSm5aWFF1ZG1Gc2RXVXBPMXh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG5Wd1pHRjBaVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ0FnSUNBOFZHVnpkRWx1Y0hWMElHNWhiV1U5WENKbWIyOWNJaUIyWVd4MVpUMWNJbVp2YjF3aUx6NWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmx4dUlDQWdJSFpoY2lCcGJuQjFkQ0E5SUZSbGMzUlZkR2xzY3k1bWFXNWtVbVZ1WkdWeVpXUkVUMDFEYjIxd2IyNWxiblJYYVhSb1ZHRm5LR1p2Y20wc0lDZEpUbEJWVkNjcE8xeHVJQ0FnSUdWNGNHVmpkQ2hwYm5CMWRDNW5aWFJFVDAxT2IyUmxLQ2t1ZG1Gc2RXVXBMblJ2UW1Vb0oyWnZieWNwTzF4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzVqYUdGdVoyVW9hVzV3ZFhRc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oyWnZiMkpoY2lkOWZTazdYRzRnSUNBZ1pYaHdaV04wS0dsdWNIVjBMbWRsZEVSUFRVNXZaR1VvS1M1MllXeDFaU2t1ZEc5Q1pTZ25abTl2WW1GeUp5azdYRzVjYmlBZ2ZTazdYRzVjYmlBZ2FYUW9KM05vYjNWc1pDQnpaWFFnWW1GamF5QjBieUJ3Y21semRHbHVaU0IyWVd4MVpTQjNhR1Z1SUhKMWJtNXBibWNnY21WelpYUW5MQ0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnWEc0Z0lDQWdkbUZ5SUhKbGMyVjBJRDBnYm5Wc2JEdGNiaUFnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lHTnZiWEJ2Ym1WdWRFUnBaRTF2ZFc1ME9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUhKbGMyVjBJRDBnZEdocGN5NXlaWE5sZEZaaGJIVmxPMXh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJSFZ3WkdGMFpWWmhiSFZsT2lCbWRXNWpkR2x2YmlBb1pYWmxiblFwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSV1lXeDFaU2hsZG1WdWRDNTBZWEpuWlhRdWRtRnNkV1VwTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxuVndaR0YwWlZaaGJIVmxmUzgrWEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEVadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNBZ0lDQThWR1Z6ZEVsdWNIVjBJRzVoYldVOVhDSm1iMjljSWlCMllXeDFaVDFjSW1admIxd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSjJadmIySmhjaWQ5ZlNrN1hHNGdJQ0FnY21WelpYUW9LVHRjYmlBZ0lDQmxlSEJsWTNRb2FXNXdkWFF1WjJWMFJFOU5UbTlrWlNncExuWmhiSFZsS1M1MGIwSmxLQ2RtYjI4bktUdGNibHh1SUNCOUtUdGNibHh1SUNCcGRDZ25jMmh2ZFd4a0lISmxkSFZ5YmlCbGNuSnZjaUJ0WlhOellXZGxJSEJoYzNObFpDQjNhR1Z1SUdOaGJHeHBibWNnWjJWMFJYSnliM0pOWlhOellXZGxLQ2tuTENCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ1hHNGdJQ0FnZG1GeUlHZGxkRVZ5Y205eVRXVnpjMkZuWlNBOUlHNTFiR3c3WEc0Z0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0JqYjIxd2IyNWxiblJFYVdSTmIzVnVkRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQm5aWFJGY25KdmNrMWxjM05oWjJVZ1BTQjBhR2x6TG1kbGRFVnljbTl5VFdWemMyRm5aVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0IxY0dSaGRHVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvWlhabGJuUXVkR0Z5WjJWMExuWmhiSFZsS1R0Y2JpQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmU0J2YmtOb1lXNW5aVDE3ZEdocGN5NTFjR1JoZEdWV1lXeDFaWDB2UGx4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBwTzF4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBZ0lDQWdQRlJsYzNSSmJuQjFkQ0J1WVcxbFBWd2labTl2WENJZ2RtRnNkV1U5WENKbWIyOWNJaUIyWVd4cFpHRjBhVzl1Y3oxY0ltbHpSVzFoYVd4Y0lpQjJZV3hwWkdGMGFXOXVSWEp5YjNJOVhDSklZWE1nZEc4Z1ltVWdaVzFoYVd4Y0lpOCtYRzRnSUNBZ0lDQThMMFp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0JsZUhCbFkzUW9aMlYwUlhKeWIzSk5aWE56WVdkbEtDa3BMblJ2UW1Vb0owaGhjeUIwYnlCaVpTQmxiV0ZwYkNjcE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2NtVjBkWEp1SUhObGNuWmxjaUJsY25KdmNpQnRaWE56WVdkbElIZG9aVzRnWTJGc2JHbHVaeUJuWlhSRmNuSnZjazFsYzNOaFoyVW9LU2NzSUdaMWJtTjBhVzl1SUNoa2IyNWxLU0I3WEc0Z0lDQWdYRzRnSUNBZ2FtRnpiV2x1WlM1QmFtRjRMbWx1YzNSaGJHd29LVHRjYmx4dUlDQWdJSFpoY2lCblpYUkZjbkp2Y2sxbGMzTmhaMlVnUFNCdWRXeHNPMXh1SUNBZ0lIWmhjaUJVWlhOMFNXNXdkWFFnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdZMjl0Y0c5dVpXNTBSR2xrVFc5MWJuUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ1oyVjBSWEp5YjNKTlpYTnpZV2RsSUQwZ2RHaHBjeTVuWlhSRmNuSnZjazFsYzNOaFoyVTdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdkWEJrWVhSbFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNobGRtVnVkQ2tnZTF4dUlDQWdJQ0FnSUNCMGFHbHpMbk5sZEZaaGJIVmxLR1YyWlc1MExuUmhjbWRsZEM1MllXeDFaU2s3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBOGFXNXdkWFFnZG1Gc2RXVTllM1JvYVhNdVoyVjBWbUZzZFdVb0tYMGdiMjVEYUdGdVoyVTllM1JvYVhNdWRYQmtZWFJsVm1Gc2RXVjlMejVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvWEc0Z0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wZ2RYSnNQVndpTDNWelpYSnpYQ0krWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSW1admIxd2lJSFpoYkhWbFBWd2labTl2WENJZ2RtRnNhV1JoZEdsdmJuTTlYQ0pwYzBWdFlXbHNYQ0lnZG1Gc2FXUmhkR2x2YmtWeWNtOXlQVndpU0dGeklIUnZJR0psSUdWdFlXbHNYQ0l2UGx4dUlDQWdJQ0FnUEM5R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBcE8xeHVYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVjM1ZpYldsMEtHWnZjbTB1WjJWMFJFOU5UbTlrWlNncEtUdGNibHh1SUNBZ0lHcGhjMjFwYm1VdVFXcGhlQzV5WlhGMVpYTjBjeTV0YjNOMFVtVmpaVzUwS0NrdWNtVnpjRzl1WkZkcGRHZ29lMXh1SUNBZ0lDQWdjM1JoZEhWek9pQTFNREFzWEc0Z0lDQWdJQ0JqYjI1MFpXNTBWSGx3WlRvZ0oyRndjR3hwWTJGMGFXOXVMMnB6YjI0bkxGeHVJQ0FnSUNBZ2NtVnpjRzl1YzJWVVpYaDBPaUFuZTF3aVptOXZYQ0k2SUZ3aVltRnlYQ0o5SjF4dUlDQWdJSDBwWEc1Y2JpQWdJQ0J6WlhSVWFXMWxiM1YwS0daMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lHVjRjR1ZqZENoblpYUkZjbkp2Y2sxbGMzTmhaMlVvS1NrdWRHOUNaU2duWW1GeUp5azdYRzRnSUNBZ0lDQnFZWE50YVc1bExrRnFZWGd1ZFc1cGJuTjBZV3hzS0NrN1hHNGdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdmU3dnTUNrN1hHNWNiaUFnZlNrN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCeVpYUjFjbTRnZEhKMVpTQnZjaUJtWVd4elpTQjNhR1Z1SUdOaGJHeHBibWNnYVhOV1lXeHBaQ2dwSUdSbGNHVnVaR2x1WnlCdmJpQjJZV3hwWkNCemRHRjBaU2NzSUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCY2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlHNTFiR3c3WEc0Z0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0JqYjIxd2IyNWxiblJFYVdSTmIzVnVkRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnBjMVpoYkdsa0lEMGdkR2hwY3k1cGMxWmhiR2xrTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhWd1pHRjBaVlpoYkhWbE9pQm1kVzVqZEdsdmJpQW9aWFpsYm5RcElIdGNiaUFnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMblZ3WkdGMFpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJSFZ5YkQxY0lpOTFjMlZ5YzF3aVBseHVJQ0FnSUNBZ0lDQThWR1Z6ZEVsdWNIVjBJRzVoYldVOVhDSm1iMjljSWlCMllXeDFaVDFjSW1admIxd2lJSFpoYkdsa1lYUnBiMjV6UFZ3aWFYTkZiV0ZwYkZ3aUx6NWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmx4dUlDQWdJR1Y0Y0dWamRDaHBjMVpoYkdsa0tDa3BMblJ2UW1Vb1ptRnNjMlVwTzF4dUlDQWdJSFpoY2lCcGJuQjFkQ0E5SUZSbGMzUlZkR2xzY3k1bWFXNWtVbVZ1WkdWeVpXUkVUMDFEYjIxd2IyNWxiblJYYVhSb1ZHRm5LR1p2Y20wc0lDZEpUbEJWVkNjcE8xeHVJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1amFHRnVaMlVvYVc1d2RYUXNJSHQwWVhKblpYUTZJSHQyWVd4MVpUb2dKMlp2YjBCbWIyOHVZMjl0SjMxOUtUdGNiaUFnSUNCbGVIQmxZM1FvYVhOV1lXeHBaQ2dwS1M1MGIwSmxLSFJ5ZFdVcE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2NtVjBkWEp1SUhSeWRXVWdiM0lnWm1Gc2MyVWdkMmhsYmlCallXeHNhVzVuSUdselVtVnhkV2x5WldRb0tTQmtaWEJsYm1ScGJtY2diMjRnY0dGemMyVmtJSEpsY1hWcGNtVmtJR0YwZEhKcFluVjBaU2NzSUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCY2JpQWdJQ0IyWVhJZ2FYTlNaWEYxYVhKbFpITWdQU0JiWFR0Y2JpQWdJQ0IyWVhJZ1ZHVnpkRWx1Y0hWMElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdiV2w0YVc1ek9pQmJSbTl5YlhONUxrMXBlR2x1WFN4Y2JpQWdJQ0FnSUdOdmJYQnZibVZ1ZEVScFpFMXZkVzUwT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR2x6VW1WeGRXbHlaV1J6TG5CMWMyZ29kR2hwY3k1cGMxSmxjWFZwY21Wa0tUdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQjFjR1JoZEdWV1lXeDFaVG9nWm5WdVkzUnBiMjRnS0dWMlpXNTBLU0I3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVjMlYwVm1Gc2RXVW9aWFpsYm5RdWRHRnlaMlYwTG5aaGJIVmxLVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTQnZia05vWVc1blpUMTdkR2hwY3k1MWNHUmhkR1ZXWVd4MVpYMHZQbHh1SUNBZ0lDQWdmVnh1SUNBZ0lIMHBPMXh1SUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2hjYmlBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCMWNtdzlYQ0l2ZFhObGNuTmNJajVjYmlBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpWm05dlhDSWdkbUZzZFdVOVhDSm1iMjljSWk4K1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJIVmxQVndpWm05dlhDSWdjbVZ4ZFdseVpXUXZQbHh1SUNBZ0lDQWdQQzlHYjNKdGMza3VSbTl5YlQ1Y2JpQWdJQ0FwTzF4dVhHNGdJQ0FnWlhod1pXTjBLR2x6VW1WeGRXbHlaV1J6V3pCZEtDa3BMblJ2UW1Vb1ptRnNjMlVwTzF4dUlDQWdJR1Y0Y0dWamRDaHBjMUpsY1hWcGNtVmtjMXN4WFNncEtTNTBiMEpsS0hSeWRXVXBPMXh1WEc0Z0lIMHBPMXh1WEc0Z0lHbDBLQ2R6YUc5MWJHUWdjbVYwZFhKdUlIUnlkV1VnYjNJZ1ptRnNjMlVnZDJobGJpQmpZV3hzYVc1bklITm9iM2RTWlhGMWFYSmxaQ2dwSUdSbGNHVnVaR2x1WnlCdmJpQnBibkIxZENCaVpXbHVaeUJsYlhCMGVTQmhibVFnY21WeGRXbHlaV1FnYVhNZ2NHRnpjMlZrTENCdmNpQnViM1FuTENCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ1hHNGdJQ0FnZG1GeUlITm9iM2RTWlhGMWFYSmxaSE1nUFNCYlhUdGNiaUFnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lHTnZiWEJ2Ym1WdWRFUnBaRTF2ZFc1ME9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUhOb2IzZFNaWEYxYVhKbFpITXVjSFZ6YUNoMGFHbHpMbk5vYjNkU1pYRjFhWEpsWkNrN1hHNGdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ2RYQmtZWFJsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2hsZG1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuTmxkRlpoYkhWbEtHVjJaVzUwTG5SaGNtZGxkQzUyWVd4MVpTazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUE4YVc1d2RYUWdkbUZzZFdVOWUzUm9hWE11WjJWMFZtRnNkV1VvS1gwZ2IyNURhR0Z1WjJVOWUzUm9hWE11ZFhCa1lYUmxWbUZzZFdWOUx6NWNiaUFnSUNBZ0lIMWNiaUFnSUNCOUtUdGNiaUFnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9YRzRnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTBnZFhKc1BWd2lMM1Z6WlhKelhDSStYRzRnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMWNJa0ZjSWlCMllXeDFaVDFjSW1admIxd2lMejVjYmlBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpUWx3aUlIWmhiSFZsUFZ3aVhDSWdjbVZ4ZFdseVpXUXZQbHh1SUNBZ0lDQWdJQ0E4VkdWemRFbHVjSFYwSUc1aGJXVTlYQ0pEWENJZ2RtRnNkV1U5WENKY0lpOCtYRzRnSUNBZ0lDQThMMFp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0JsZUhCbFkzUW9jMmh2ZDFKbGNYVnBjbVZrYzFzd1hTZ3BLUzUwYjBKbEtHWmhiSE5sS1R0Y2JpQWdJQ0JsZUhCbFkzUW9jMmh2ZDFKbGNYVnBjbVZrYzFzeFhTZ3BLUzUwYjBKbEtIUnlkV1VwTzF4dUlDQWdJR1Y0Y0dWamRDaHphRzkzVW1WeGRXbHlaV1J6V3pKZEtDa3BMblJ2UW1Vb1ptRnNjMlVwTzF4dVhHNGdJSDBwTzF4dVhHNGdJR2wwS0NkemFHOTFiR1FnY21WMGRYSnVJSFJ5ZFdVZ2IzSWdabUZzYzJVZ2QyaGxiaUJqWVd4c2FXNW5JSE5vYjNkRmNuSnZjaWdwSUdSbGNHVnVaR2x1WnlCdmJpQjJZV3gxWlNCcGN5QnBiblpoYkdsa0lHOXlJR0VnYzJWeWRtVnlJR1Z5Y205eUlHaGhjeUJoY25KcGRtVmtMQ0J2Y2lCdWIzUW5MQ0JtZFc1amRHbHZiaUFvWkc5dVpTa2dlMXh1WEc0Z0lDQWdkbUZ5SUhOb2IzZEZjbkp2Y2lBOUlHNTFiR3c3WEc0Z0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0JqYjIxd2IyNWxiblJFYVdSTmIzVnVkRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnphRzkzUlhKeWIzSWdQU0IwYUdsekxuTm9iM2RGY25KdmNqdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQjFjR1JoZEdWV1lXeDFaVG9nWm5WdVkzUnBiMjRnS0dWMlpXNTBLU0I3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVjMlYwVm1Gc2RXVW9aWFpsYm5RdWRHRnlaMlYwTG5aaGJIVmxLVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTQnZia05vWVc1blpUMTdkR2hwY3k1MWNHUmhkR1ZXWVd4MVpYMHZQbHh1SUNBZ0lDQWdmVnh1SUNBZ0lIMHBPMXh1SUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2hjYmlBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCMWNtdzlYQ0l2ZFhObGNuTmNJajVjYmlBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpWm05dlhDSWdkbUZzZFdVOVhDSm1iMjljSWlCMllXeHBaR0YwYVc5dWN6MWNJbWx6UlcxaGFXeGNJaUIyWVd4cFpHRjBhVzl1UlhKeWIzSTlYQ0pVYUdseklHbHpJRzV2ZENCaGJpQmxiV0ZwYkZ3aUx6NWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmx4dUlDQWdJR1Y0Y0dWamRDaHphRzkzUlhKeWIzSW9LU2t1ZEc5Q1pTaDBjblZsS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSjJadmIwQm1iMjh1WTI5dEozMTlLVHRjYmlBZ0lDQmxlSEJsWTNRb2MyaHZkMFZ5Y205eUtDa3BMblJ2UW1Vb1ptRnNjMlVwTzF4dVhHNGdJQ0FnYW1GemJXbHVaUzVCYW1GNExtbHVjM1JoYkd3b0tUdGNiaUFnSUNCVVpYTjBWWFJwYkhNdVUybHRkV3hoZEdVdWMzVmliV2wwS0dadmNtMHVaMlYwUkU5TlRtOWtaU2dwS1RzZ0lDQWdYRzRnSUNBZ2FtRnpiV2x1WlM1QmFtRjRMbkpsY1hWbGMzUnpMbTF2YzNSU1pXTmxiblFvS1M1eVpYTndiMjVrVjJsMGFDaDdYRzRnSUNBZ0lDQnpkR0YwZFhNNklEVXdNQ3hjYmlBZ0lDQWdJSEpsYzNCdmJuTmxWSGx3WlRvZ0oyRndjR3hwWTJGMGFXOXVMMnB6YjI0bkxGeHVJQ0FnSUNBZ2NtVnpjRzl1YzJWVVpYaDBPaUFuZTF3aVptOXZYQ0k2SUZ3aVJXMWhhV3dnWVd4eVpXRmtlU0JsZUdsemRITmNJbjBuWEc0Z0lDQWdmU2s3WEc0Z0lDQWdjMlYwVkdsdFpXOTFkQ2htZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNCbGVIQmxZM1FvYzJodmQwVnljbTl5S0NrcExuUnZRbVVvZEhKMVpTazdYRzRnSUNBZ0lDQnFZWE50YVc1bExrRnFZWGd1ZFc1cGJuTjBZV3hzS0NrN1hHNGdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdmU3dnTUNrN1hHNGdJSDBwTzF4dVhHNGdJR2wwS0NkemFHOTFiR1FnY21WMGRYSnVJSFJ5ZFdVZ2IzSWdabUZzYzJVZ2QyaGxiaUJqWVd4c2FXNW5JR2x6VUhKcGMzUnBibVVvS1NCa1pYQmxibVJwYm1jZ2IyNGdhVzV3ZFhRZ2FHRnpJR0psWlc0Z1hDSjBiM1ZqYUdWa1hDSWdiM0lnYm05MEp5d2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJRnh1SUNBZ0lIWmhjaUJwYzFCeWFYTjBhVzVsSUQwZ2JuVnNiRHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJR052YlhCdmJtVnVkRVJwWkUxdmRXNTBPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbHpVSEpwYzNScGJtVWdQU0IwYUdsekxtbHpVSEpwYzNScGJtVTdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdkWEJrWVhSbFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNobGRtVnVkQ2tnZTF4dUlDQWdJQ0FnSUNCMGFHbHpMbk5sZEZaaGJIVmxLR1YyWlc1MExuUmhjbWRsZEM1MllXeDFaU2s3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBOGFXNXdkWFFnZG1Gc2RXVTllM1JvYVhNdVoyVjBWbUZzZFdVb0tYMGdiMjVEYUdGdVoyVTllM1JvYVhNdWRYQmtZWFJsVm1Gc2RXVjlMejVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvWEc0Z0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wZ2RYSnNQVndpTDNWelpYSnpYQ0krWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSWtGY0lpQjJZV3gxWlQxY0ltWnZiMXdpTHo1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNibHh1SUNBZ0lHVjRjR1ZqZENocGMxQnlhWE4wYVc1bEtDa3BMblJ2UW1Vb2RISjFaU2s3WEc0Z0lDQWdkbUZ5SUdsdWNIVjBJRDBnVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFUlBUVU52YlhCdmJtVnVkRmRwZEdoVVlXY29abTl5YlN3Z0owbE9VRlZVSnlrN1hHNGdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5abTl2SjMxOUtUdGNiaUFnSUNCbGVIQmxZM1FvYVhOUWNtbHpkR2x1WlNncEtTNTBiMEpsS0daaGJITmxLVHRjYmlBZ0lDQmNiaUFnZlNrN1hHNWNibWwwS0NkemFHOTFiR1FnWVd4c2IzY2dZVzRnZFc1a1pXWnBibVZrSUhaaGJIVmxJSFJ2SUdKbElIVndaR0YwWldRZ2RHOGdZU0IyWVd4MVpTY3NJR1oxYm1OMGFXOXVJQ2hrYjI1bEtTQjdYRzRnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUcxcGVHbHVjem9nVzBadmNtMXplUzVOYVhocGJsMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRHhwYm5CMWRDQjJZV3gxWlQxN2RHaHBjeTVuWlhSV1lXeDFaU2dwZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlGUmxjM1JHYjNKdElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdaMlYwU1c1cGRHbGhiRk4wWVhSbE9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUI3ZG1Gc2RXVTZJSFZ1WkdWbWFXNWxaSDA3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnWTJoaGJtZGxWbUZzZFdVNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXpaWFJUZEdGMFpTaDdYRzRnSUNBZ0lDQWdJQ0FnZG1Gc2RXVTZJQ2RtYjI4blhHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnS0Z4dUlDQWdJQ0FnSUNBZ0lEeEdiM0p0YzNrdVJtOXliU0IxY213OVhDSXZkWE5sY25OY0lqNWNiaUFnSUNBZ0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSWtGY0lpQjJZV3gxWlQxN2RHaHBjeTV6ZEdGMFpTNTJZV3gxWlgwdlBseHVJQ0FnSUNBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRlJsYzNSR2IzSnRMejVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdabTl5YlM1amFHRnVaMlZXWVd4MVpTZ3BPMXh1SUNBZ0lIWmhjaUJwYm5CMWRDQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRVQwMURiMjF3YjI1bGJuUlhhWFJvVkdGbktHWnZjbTBzSUNkSlRsQlZWQ2NwTzF4dUlDQWdJSE5sZEZScGJXVnZkWFFvWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ1pYaHdaV04wS0dsdWNIVjBMbWRsZEVSUFRVNXZaR1VvS1M1MllXeDFaU2t1ZEc5Q1pTZ25abTl2SnlrN1hHNGdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdmU3dnTUNrN1hHNGdJSDBwT3lBZ1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCaVpTQmhZbXhsSUhSdklHUjVibUZ0YVdOaGJHeDVJR05vWVc1blpTQjJZV3hwWkdGMGFXOXVjeWNzSUdaMWJtTjBhVzl1SUNoa2IyNWxLU0I3WEc1Y2JpQWdJQ0IyWVhJZ2FYTkpiblpoYkdsa0lEMGdabUZzYzJVN1hHNGdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJRzFwZUdsdWN6b2dXMFp2Y20xemVTNU5hWGhwYmwwc1hHNGdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmUzgrWEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUZSbGMzUkdiM0p0SUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ1oyVjBTVzVwZEdsaGJGTjBZWFJsT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQjdkbUZzZFdVNklDZG1iMjlBWW1GeUxtTnZiU2NzSUhaaGJHbGtZWFJwYjI1ek9pQW5hWE5GYldGcGJDZDlPMXh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJR05vWVc1blpWWmhiR2xrWVhScGIyNXpPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnSUNBZ0lIWmhiR2xrWVhScGIyNXpPaUFuWlhGMVlXeHpPbVp2YnlkY2JpQWdJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdjMlYwU1c1MllXeHBaRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQmpiMjV6YjJ4bExteHZaeWduVW5WdWJtbHVaeUJwZENFbktUdGNiaUFnSUNBZ0lDQWdhWE5KYm5aaGJHbGtJRDBnZEhKMVpUdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJQ2hjYmlBZ0lDQWdJQ0FnSUNBOFJtOXliWE41TGtadmNtMGdkWEpzUFZ3aUwzVnpaWEp6WENJZ2IyNUpiblpoYkdsa1BYdDBhR2x6TG5ObGRFbHVkbUZzYVdSOVBseHVJQ0FnSUNBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpUVZ3aUlIWmhiR2xrWVhScGIyNXpQWHQwYUdsekxuTjBZWFJsTG5aaGJHbGtZWFJwYjI1emZTQjJZV3gxWlQxN2RHaHBjeTV6ZEdGMFpTNTJZV3gxWlgwdlBseHVJQ0FnSUNBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRlJsYzNSR2IzSnRMejVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdabTl5YlM1amFHRnVaMlZXWVd4cFpHRjBhVzl1Y3lncE8xeHVJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdaWGh3WldOMEtHbHpTVzUyWVd4cFpDa3VkRzlDWlNoMGNuVmxLVHRjYmlBZ0lDQWdJR1J2Ym1Vb0tUdGNiaUFnSUNCOUxDQXdLVHRjYmlBZ2ZTazdJQ0JjYmx4dUlDQnBkQ2duYzJodmRXeGtJR0psSUdGaWJHVWdkRzhnZEdWemRDQmhJSFpoYkhWbGN5QjJZV3hwWkdsMGVTY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0FnSUhaaGNpQnBjMGx1ZG1Gc2FXUWdQU0JtWVd4elpUdGNiaUFnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5THo1Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5S1R0Y2JpQWdJQ0IyWVhJZ1ZHVnpkRVp2Y20wZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJQ2hjYmlBZ0lDQWdJQ0FnSUNBOFJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0lDQWdJQ0FnSUNBOFZHVnpkRWx1Y0hWMElHNWhiV1U5WENKQlhDSWdkbUZzYVdSaGRHbHZibk05WENKcGMwVnRZV2xzWENJdlBseHVJQ0FnSUNBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRlJsYzNSR2IzSnRMejVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdkbUZ5SUdsdWNIVjBJRDBnVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFTnZiWEJ2Ym1WdWRGZHBkR2hVZVhCbEtHWnZjbTBzSUZSbGMzUkpibkIxZENrN1hHNGdJQ0FnWlhod1pXTjBLR2x1Y0hWMExtbHpWbUZzYVdSV1lXeDFaU2duWm05dlFHSmhjaTVqYjIwbktTa3VkRzlDWlNoMGNuVmxLVHRjYmlBZ0lDQmxlSEJsWTNRb2FXNXdkWFF1YVhOV1lXeHBaRlpoYkhWbEtDZG1iMjlBWW1GeUp5a3BMblJ2UW1Vb1ptRnNjMlVwTzF4dVhHNGdJSDBwT3lCY2JseHVmU2s3WEc0aVhYMD0iLCJ2YXIgRm9ybXN5ID0gcmVxdWlyZSgnLi8uLi9zcmMvbWFpbi5qcycpO1xuXG5kZXNjcmliZSgnRm9ybXN5JywgZnVuY3Rpb24gKCkge1xuXG4gIGRlc2NyaWJlKCdTZXR0aW5nIHVwIGEgZm9ybScsIGZ1bmN0aW9uICgpIHtcblxuICAgIGl0KCdzaG91bGQgcmVuZGVyIGEgZm9ybSBpbnRvIHRoZSBkb2N1bWVudCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudCggUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCkpO1xuICAgICAgZXhwZWN0KGZvcm0uZ2V0RE9NTm9kZSgpLnRhZ05hbWUpLnRvRXF1YWwoJ0ZPUk0nKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgc2V0IGEgY2xhc3MgbmFtZSBpZiBwYXNzZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtjbGFzc05hbWU6IFwiZm9vXCJ9KSk7XG4gICAgICBleHBlY3QoZm9ybS5nZXRET01Ob2RlKCkuY2xhc3NOYW1lKS50b0VxdWFsKCdmb28nKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYWxsb3cgZm9yIG51bGwvdW5kZWZpbmVkIGNoaWxkcmVuJywgZnVuY3Rpb24gKGRvbmUpIHtcbiAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICAgIGNoYW5nZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLmNoYW5nZVZhbHVlfSlcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHZhciBtb2RlbCA9IG51bGw7XG4gICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgb25TdWJtaXQ6IGZ1bmN0aW9uIChmb3JtTW9kZWwpIHtcbiAgICAgICAgICBtb2RlbCA9IGZvcm1Nb2RlbDtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblN1Ym1pdDogIHRoaXMub25TdWJtaXR9LCBcbiAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChcImgxXCIsIG51bGwsIFwiVGVzdFwiKSwgXG4gICAgICAgICAgICAgICBudWxsLCBcbiAgICAgICAgICAgICAgIHVuZGVmaW5lZCwgXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJuYW1lXCIsIHZhbHVlOiAgJ2ZvbycgfSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpKTtcbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICAgICAgZXhwZWN0KG1vZGVsKS50b0VxdWFsKHtuYW1lOiAnZm9vJ30pO1xuICAgICAgICBkb25lKCk7XG4gICAgICB9LCAxMCk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGFsbG93IGZvciBpbnB1dHMgYmVpbmcgYWRkZWQgZHluYW1pY2FsbHknLCBmdW5jdGlvbiAoZG9uZSkge1xuXG4gICAgICB2YXIgaW5wdXRzID0gW107XG4gICAgICB2YXIgZm9yY2VVcGRhdGUgPSBudWxsO1xuICAgICAgdmFyIG1vZGVsID0gbnVsbDtcbiAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIG51bGwpXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIGNvbXBvbmVudFdpbGxNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGZvcmNlVXBkYXRlID0gdGhpcy5mb3JjZVVwZGF0ZS5iaW5kKHRoaXMpO1xuICAgICAgICB9LFxuICAgICAgICBvblN1Ym1pdDogZnVuY3Rpb24gKGZvcm1Nb2RlbCkge1xuICAgICAgICAgIG1vZGVsID0gZm9ybU1vZGVsO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gKCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblN1Ym1pdDogdGhpcy5vblN1Ym1pdH0sIFxuICAgICAgICAgICAgICBpbnB1dHNcbiAgICAgICAgICAgICkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudCggXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpIFxuICAgICAgKTtcblxuICAgICAgLy8gV2FpdCBiZWZvcmUgYWRkaW5nIHRoZSBpbnB1dFxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgaW5wdXRzLnB1c2goVGVzdElucHV0KHtcbiAgICAgICAgICBuYW1lOiAndGVzdCdcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIGZvcmNlVXBkYXRlKGZ1bmN0aW9uICgpIHtcblxuICAgICAgICAgIC8vIFdhaXQgZm9yIG5leHQgZXZlbnQgbG9vcCwgYXMgdGhhdCBkb2VzIHRoZSBmb3JtXG4gICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICAgICAgICAgIGV4cGVjdChtb2RlbC50ZXN0KS50b0JlRGVmaW5lZCgpO1xuICAgICAgICAgICAgZG9uZSgpO1xuICAgICAgICAgIH0sIDApO1xuXG4gICAgICAgIH0pO1xuXG4gICAgICB9LCAxMCk7XG5cbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYWxsb3cgZHluYW1pY2FsbHkgYWRkZWQgaW5wdXRzIHRvIHVwZGF0ZSB0aGUgZm9ybS1tb2RlbCcsIGZ1bmN0aW9uIChkb25lKSB7XG5cbiAgICAgIHZhciBpbnB1dHMgPSBbXTtcbiAgICAgIHZhciBmb3JjZVVwZGF0ZSA9IG51bGw7XG4gICAgICB2YXIgbW9kZWwgPSBudWxsO1xuICAgICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgY2hhbmdlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMuY2hhbmdlVmFsdWV9KVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBjb21wb25lbnRXaWxsTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBmb3JjZVVwZGF0ZSA9IHRoaXMuZm9yY2VVcGRhdGUuYmluZCh0aGlzKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25TdWJtaXQ6IGZ1bmN0aW9uIChmb3JtTW9kZWwpIHtcbiAgICAgICAgICBtb2RlbCA9IGZvcm1Nb2RlbDtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuICggXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25TdWJtaXQ6IHRoaXMub25TdWJtaXR9LCBcbiAgICAgICAgICAgICAgaW5wdXRzXG4gICAgICAgICAgICApKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSBcbiAgICAgICk7XG5cbiAgICAgIC8vIFdhaXQgYmVmb3JlIGFkZGluZyB0aGUgaW5wdXRcbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXG4gICAgICAgIGlucHV0cy5wdXNoKFRlc3RJbnB1dCh7XG4gICAgICAgICAgbmFtZTogJ3Rlc3QnXG4gICAgICAgIH0pKTtcblxuICAgICAgICBmb3JjZVVwZGF0ZShmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAvLyBXYWl0IGZvciBuZXh0IGV2ZW50IGxvb3AsIGFzIHRoYXQgZG9lcyB0aGUgZm9ybVxuICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKSwge3RhcmdldDoge3ZhbHVlOiAnZm9vJ319KTtcbiAgICAgICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuICAgICAgICAgICAgZXhwZWN0KG1vZGVsLnRlc3QpLnRvQmUoJ2ZvbycpO1xuICAgICAgICAgICAgZG9uZSgpO1xuICAgICAgICAgIH0sIDApO1xuXG4gICAgICAgIH0pO1xuXG4gICAgICB9LCAwKTtcblxuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBhIGR5bmFtaWNhbGx5IHVwZGF0ZWQgaW5wdXQgdG8gdXBkYXRlIHRoZSBmb3JtLW1vZGVsJywgZnVuY3Rpb24gKGRvbmUpIHtcblxuICAgICAgdmFyIGZvcmNlVXBkYXRlID0gbnVsbDtcbiAgICAgIHZhciBtb2RlbCA9IG51bGw7XG4gICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICBjaGFuZ2VWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy5jaGFuZ2VWYWx1ZX0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICB2YXIgaW5wdXQ7XG4gICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgY29tcG9uZW50V2lsbE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgZm9yY2VVcGRhdGUgPSB0aGlzLmZvcmNlVXBkYXRlLmJpbmQodGhpcyk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uU3VibWl0OiBmdW5jdGlvbiAoZm9ybU1vZGVsKSB7XG4gICAgICAgICAgbW9kZWwgPSBmb3JtTW9kZWw7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGlucHV0ID0gUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcInRlc3RcIiwgdmFsdWU6ICB0aGlzLnByb3BzLnZhbHVlfSk7XG5cbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uU3VibWl0OiB0aGlzLm9uU3VibWl0fSwgXG4gICAgICAgICAgICAgIGlucHV0XG4gICAgICAgICAgICApKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge3ZhbHVlOiBcImZvb1wifSkpO1xuXG4gICAgICAvLyBXYWl0IGJlZm9yZSBjaGFuZ2luZyB0aGUgaW5wdXRcbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBmb3JtLnNldFByb3BzKHt2YWx1ZTogJ2Jhcid9KTtcblxuICAgICAgICBmb3JjZVVwZGF0ZShmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgLy8gV2FpdCBmb3IgbmV4dCBldmVudCBsb29wLCBhcyB0aGF0IGRvZXMgdGhlIGZvcm1cbiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuICAgICAgICAgICAgZXhwZWN0KG1vZGVsLnRlc3QpLnRvQmUoJ2JhcicpO1xuICAgICAgICAgICAgZG9uZSgpO1xuICAgICAgICAgIH0sIDApO1xuXG4gICAgICAgIH0pO1xuXG4gICAgICB9LCAxMCk7XG5cbiAgICB9KTtcblxuICAgIGRlc2NyaWJlKCd2YWxpZGF0aW9ucycsIGZ1bmN0aW9uKCkge1xuICAgICAgdmFyIENoZWNrVmFsaWQsIG9uU3VibWl0LCBPdGhlckNoZWNrVmFsaWQ7XG4gICAgICB2YXIgaXNWYWxpZDtcblxuICAgICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgY2hhbmdlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6ICB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiAgdGhpcy5jaGFuZ2VWYWx1ZX0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgZ2V0RGVmYXVsdFByb3BzOiBmdW5jdGlvbigpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaW5wdXRzOiBbXSxcbiAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICB2YXIgYnVpbHRJbnB1dHMgPSBbXTtcbiAgICAgICAgICB2YXIgaW5wdXRzID0gdGhpcy5wcm9wcy5pbnB1dHM7XG4gICAgICAgICAgZm9yICh2YXIgaT0wOyBpIDwgaW5wdXRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICB2YXIgaW5wdXQgPSBpbnB1dHNbaV07XG4gICAgICAgICAgICBidWlsdElucHV0cy5wdXNoKFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCBSZWFjdC5fX3NwcmVhZCh7fSwgICBpbnB1dCAsIHtrZXk6ICBpbnB1dC5uYW1lfSkpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdmFyIF90aGlzID0gdGhpcztcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge1xuICAgICAgICAgICAgb25TdWJtaXQ6ICBmdW5jdGlvbihhcmcxKSB7IG9uU3VibWl0KGFyZzEpOyB9LCBcbiAgICAgICAgICAgIG9uVmFsaWQ6ICBmdW5jdGlvbigpIHsgaXNWYWxpZCA9IHRydWU7IH0sIFxuICAgICAgICAgICAgb25JbnZhbGlkOiAgZnVuY3Rpb24oKSB7IGlzVmFsaWQgPSBmYWxzZTsgfX0sIFxuICAgICAgICAgICAgIGJ1aWx0SW5wdXRzIFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBiZWZvcmVFYWNoKGZ1bmN0aW9uKCkge1xuICAgICAgICBpc1ZhbGlkID0gdHJ1ZTtcbiAgICAgICAgQ2hlY2tWYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCdDaGVja1ZhbGlkJyk7XG4gICAgICAgIEZvcm1zeS5hZGRWYWxpZGF0aW9uUnVsZSgnQ2hlY2tWYWxpZCcsIENoZWNrVmFsaWQpO1xuICAgICAgICBPdGhlckNoZWNrVmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgnQ2hlY2tWYWxpZCcpO1xuICAgICAgICBGb3Jtc3kuYWRkVmFsaWRhdGlvblJ1bGUoJ090aGVyQ2hlY2tWYWxpZCcsIE90aGVyQ2hlY2tWYWxpZCk7XG4gICAgICAgIG9uU3VibWl0ID0gamFzbWluZS5jcmVhdGVTcHkoJ29uU3VibWl0Jyk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ3Nob3VsZCBydW4gd2hlbiB0aGUgaW5wdXQgY2hhbmdlcycsIGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge2lucHV0czogIFt7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnQ2hlY2tWYWxpZCcsIHZhbHVlOiAnZm9vJ31dIH0pKTtcbiAgICAgICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ2lucHV0Jyk7XG4gICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQuZ2V0RE9NTm9kZSgpLCB7dGFyZ2V0OiB7dmFsdWU6ICdiYXInfX0pO1xuICAgICAgICBleHBlY3QoQ2hlY2tWYWxpZCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ2JhcicpO1xuICAgICAgICBleHBlY3QoT3RoZXJDaGVja1ZhbGlkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdzaG91bGQgYWxsb3cgdGhlIHZhbGlkYXRpb24gdG8gYmUgY2hhbmdlZCcsIGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge2lucHV0czogIFt7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnQ2hlY2tWYWxpZCcsIHZhbHVlOiAnZm9vJ31dIH0pKTtcbiAgICAgICAgZm9ybS5zZXRQcm9wcyh7aW5wdXRzOiBbe25hbWU6ICdvbmUnLCB2YWxpZGF0aW9uczogJ090aGVyQ2hlY2tWYWxpZCcsIHZhbHVlOiAnZm9vJ31dIH0pO1xuICAgICAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnaW5wdXQnKTtcbiAgICAgICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dC5nZXRET01Ob2RlKCksIHt0YXJnZXQ6IHt2YWx1ZTogJ2Jhcid9fSk7XG4gICAgICAgIGV4cGVjdChPdGhlckNoZWNrVmFsaWQpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCdiYXInKTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgnc2hvdWxkIGludmFsaWRhdGUgYSBmb3JtIGlmIGR5bmFtaWNhbGx5IGluc2VydGVkIGlucHV0IGlzIGludmFsaWQnLCBmdW5jdGlvbihkb25lKSB7XG4gICAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCB7aW5wdXRzOiAgW3tuYW1lOiAnb25lJywgdmFsaWRhdGlvbnM6ICdpc0VtYWlsJywgdmFsdWU6ICdmb29AYmFyLmNvbSd9XSB9KSk7XG4gICAgICAgIGV4cGVjdChpc1ZhbGlkKS50b0VxdWFsKHRydWUpO1xuICAgICAgICBmb3JtLnNldFByb3BzKHtpbnB1dHM6IFtcbiAgICAgICAgICB7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCcsIHZhbHVlOiAnZm9vQGJhci5jb20nfSxcbiAgICAgICAgICB7bmFtZTogJ3R3bycsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCcsIHZhbHVlOiAnZm9vQGJhcid9LFxuICAgICAgICBdfSwgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGV4cGVjdChpc1ZhbGlkKS50b0VxdWFsKGZhbHNlKTtcbiAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICB9LCAwKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ3Nob3VsZCB2YWxpZGF0ZSBhIGZvcm0gd2hlbiByZW1vdmluZyBhbiBpbnZhbGlkIGlucHV0JywgZnVuY3Rpb24oZG9uZSkge1xuICAgICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge2lucHV0czogIFtcbiAgICAgICAgICB7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCcsIHZhbHVlOiAnZm9vQGJhci5jb20nfSxcbiAgICAgICAgICB7bmFtZTogJ3R3bycsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCcsIHZhbHVlOiAnZm9vQGJhcid9LFxuICAgICAgICBdIH0pKTtcbiAgICAgICAgZXhwZWN0KGlzVmFsaWQpLnRvRXF1YWwoZmFsc2UpO1xuICAgICAgICBmb3JtLnNldFByb3BzKHtpbnB1dHM6IFt7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCcsIHZhbHVlOiAnZm9vQGJhci5jb20nfV19LCBmdW5jdGlvbigpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge1xuICAgICAgICAgICAgZXhwZWN0KGlzVmFsaWQpLnRvRXF1YWwodHJ1ZSk7XG4gICAgICAgICAgICBkb25lKCk7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdydW5zIG11bHRpcGxlIHZhbGlkYXRpb25zJywgZnVuY3Rpb24oKSB7XG4gICAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCB7aW5wdXRzOiAgW3tuYW1lOiAnb25lJywgdmFsaWRhdGlvbnM6ICdDaGVja1ZhbGlkLE90aGVyQ2hlY2tWYWxpZCcsIHZhbHVlOiAnZm9vJ31dIH0pKTtcbiAgICAgICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ2lucHV0Jyk7XG4gICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQuZ2V0RE9NTm9kZSgpLCB7dGFyZ2V0OiB7dmFsdWU6ICdiYXInfX0pO1xuICAgICAgICBleHBlY3QoQ2hlY2tWYWxpZCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ2JhcicpO1xuICAgICAgICBleHBlY3QoT3RoZXJDaGVja1ZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnYmFyJyk7XG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgbm90IHRyaWdnZXIgb25DaGFuZ2Ugd2hlbiBmb3JtIGlzIG1vdW50ZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgaGFzQ2hhbmdlZCA9IGphc21pbmUuY3JlYXRlU3B5KCdvbkNoYW5nZScpO1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaGFzQ2hhbmdlZCgpO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uQ2hhbmdlOiB0aGlzLm9uQ2hhbmdlfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpKTtcbiAgICAgIGV4cGVjdChoYXNDaGFuZ2VkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCB0cmlnZ2VyIG9uQ2hhbmdlIHdoZW4gZm9ybSBlbGVtZW50IGlzIGNoYW5nZWQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgaGFzQ2hhbmdlZCA9IGphc21pbmUuY3JlYXRlU3B5KCdvbkNoYW5nZScpO1xuICAgICAgdmFyIE15SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiTXlJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy5vbkNoYW5nZX0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgaGFzQ2hhbmdlZCgpO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uQ2hhbmdlOiB0aGlzLm9uQ2hhbmdlfSwgXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoTXlJbnB1dCwge25hbWU6IFwiZm9vXCJ9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpKTtcbiAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyksIHt0YXJnZXQ6IHt2YWx1ZTogJ2Jhcid9fSk7XG4gICAgICBleHBlY3QoaGFzQ2hhbmdlZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCB0cmlnZ2VyIG9uQ2hhbmdlIHdoZW4gbmV3IGlucHV0IGlzIGFkZGVkIHRvIGZvcm0nLCBmdW5jdGlvbiAoZG9uZSkge1xuICAgICAgdmFyIGhhc0NoYW5nZWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgnb25DaGFuZ2UnKTtcbiAgICAgIHZhciBpbnB1dHMgPSBbXTtcbiAgICAgIHZhciBmb3JjZVVwZGF0ZSA9IG51bGw7XG4gICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICBjaGFuZ2VWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy5jaGFuZ2VWYWx1ZX0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIGNvbXBvbmVudFdpbGxNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGZvcmNlVXBkYXRlID0gdGhpcy5mb3JjZVVwZGF0ZS5iaW5kKHRoaXMpO1xuICAgICAgICB9LFxuICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGhhc0NoYW5nZWQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuICggXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25DaGFuZ2U6IHRoaXMub25DaGFuZ2V9LCBcbiAgICAgICAgICAgICAgaW5wdXRzXG4gICAgICAgICAgICApKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSBcbiAgICAgICk7XG5cbiAgICAgIC8vIFdhaXQgYmVmb3JlIGFkZGluZyB0aGUgaW5wdXRcbiAgICAgIGlucHV0cy5wdXNoKFRlc3RJbnB1dCh7XG4gICAgICAgIG5hbWU6ICd0ZXN0J1xuICAgICAgfSkpO1xuXG4gICAgICBmb3JjZVVwZGF0ZShmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgLy8gV2FpdCBmb3IgbmV4dCBldmVudCBsb29wLCBhcyB0aGF0IGRvZXMgdGhlIGZvcm1cbiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgZXhwZWN0KGhhc0NoYW5nZWQpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgICAgICBkb25lKCk7XG4gICAgICAgIH0sIDApO1xuXG4gICAgICB9KTtcblxuICAgIH0pO1xuXG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdVcGRhdGUgYSBmb3JtJywgZnVuY3Rpb24gKCkge1xuXG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBlbGVtZW50cyB0byBjaGVjayBpZiB0aGUgZm9ybSBpcyBkaXNhYmxlZCcsIGZ1bmN0aW9uIChkb25lKSB7XG5cbiAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCl9KVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBnZXRJbml0aWFsU3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4ge2Rpc2FibGVkOiB0cnVlfTtcbiAgICAgICAgfSxcbiAgICAgICAgZW5hYmxlRm9ybTogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGZhbHNlXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiAoIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uQ2hhbmdlOiB0aGlzLm9uQ2hhbmdlLCBkaXNhYmxlZDogdGhpcy5zdGF0ZS5kaXNhYmxlZH0sIFxuICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCJ9KVxuICAgICAgICAgICAgKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwgbnVsbCkgXG4gICAgICApO1xuXG4gICAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkQ29tcG9uZW50V2l0aFR5cGUoZm9ybSwgVGVzdElucHV0KTtcbiAgICAgIGV4cGVjdChpbnB1dC5pc0Zvcm1EaXNhYmxlZCgpKS50b0JlKHRydWUpO1xuICAgICAgZm9ybS5lbmFibGVGb3JtKCk7XG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZXhwZWN0KGlucHV0LmlzRm9ybURpc2FibGVkKCkpLnRvQmUoZmFsc2UpO1xuICAgICAgICBkb25lKCk7XG4gICAgICB9LCAwKTtcblxuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBiZSBwb3NzaWJsZSB0byBwYXNzIGVycm9yIHN0YXRlIG9mIGVsZW1lbnRzIGJ5IGNoYW5naW5nIGFuIGVycm9ycyBhdHRyaWJ1dGUnLCBmdW5jdGlvbiAoZG9uZSkge1xuXG4gICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIGdldEluaXRpYWxTdGF0ZTogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YWxpZGF0aW9uRXJyb3JzOiB7XG4gICAgICAgICAgICAgIGZvbzogJ2JhcidcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9O1xuICAgICAgICB9LFxuICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKHZhbHVlcykge1xuICAgICAgICAgIGlmICh2YWx1ZXMuZm9vKSB7XG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgICAgdmFsaWRhdGlvbkVycm9yczoge31cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgICAgdmFsaWRhdGlvbkVycm9yczoge2ZvbzogJ2Jhcid9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiAoIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uQ2hhbmdlOiB0aGlzLm9uQ2hhbmdlLCB2YWxpZGF0aW9uRXJyb3JzOiB0aGlzLnN0YXRlLnZhbGlkYXRpb25FcnJvcnN9LCBcbiAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wifSlcbiAgICAgICAgICAgICkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudCggXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpIFxuICAgICAgKTtcblxuICAgICAgLy8gV2FpdCBmb3IgdXBkYXRlXG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZENvbXBvbmVudFdpdGhUeXBlKGZvcm0sIFRlc3RJbnB1dCk7XG4gICAgICAgIGV4cGVjdChpbnB1dC5nZXRFcnJvck1lc3NhZ2UoKSkudG9CZSgnYmFyJyk7XG4gICAgICAgIGlucHV0LnNldFZhbHVlKCdnb3RWYWx1ZScpO1xuXG4gICAgICAgIC8vIFdhaXQgZm9yIHVwZGF0ZVxuICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBleHBlY3QoaW5wdXQuZ2V0RXJyb3JNZXNzYWdlKCkpLnRvQmUobnVsbCk7XG4gICAgICAgICAgZG9uZSgpO1xuICAgICAgICB9LCAwKTtcbiAgICAgIH0sIDApO1xuXG4gICAgfSk7XG5cblxuICAgIGl0KCdzaG91bGQgdHJpZ2dlciBhbiBvblZhbGlkU3VibWl0IHdoZW4gc3VibWl0dGluZyBhIHZhbGlkIGZvcm0nLCBmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgdmFyIGlzQ2FsbGVkID0gZmFsc2U7XG4gICAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCl9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgICBvblZhbGlkU3VibWl0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBpc0NhbGxlZCA9IHRydWU7XG4gICAgICAgICAgfSxcbiAgICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiAoIFxuICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25WYWxpZFN1Ym1pdDogdGhpcy5vblZhbGlkU3VibWl0fSwgXG4gICAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWxpZGF0aW9uczogXCJpc0VtYWlsXCIsIHZhbHVlOiBcImZvb0BiYXIuY29tXCJ9KVxuICAgICAgICAgICAgICApKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFxuICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpIFxuICAgICAgICApO1xuXG4gICAgICAgIHZhciBUZXN0Rm9ybSA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRDb21wb25lbnRXaXRoVHlwZShmb3JtLCBUZXN0Rm9ybSk7XG4gICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoVGVzdEZvcm0uZ2V0RE9NTm9kZSgpKTsgIFxuICAgICAgICBleHBlY3QoaXNDYWxsZWQpLnRvQmUodHJ1ZSk7XG5cbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgdHJpZ2dlciBhbiBvbkludmFsaWRTdWJtaXQgd2hlbiBzdWJtaXR0aW5nIGFuIGludmFsaWQgZm9ybScsIGZ1bmN0aW9uICgpIHtcblxuICAgICAgICB2YXIgaXNDYWxsZWQgPSBmYWxzZTtcbiAgICAgICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKX0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICAgIG9uSW52YWxpZFN1Ym1pdDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgaXNDYWxsZWQgPSB0cnVlO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gKCBcbiAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uSW52YWxpZFN1Ym1pdDogdGhpcy5vbkludmFsaWRTdWJtaXR9LCBcbiAgICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIiwgdmFsdWU6IFwiZm9vQGJhclwifSlcbiAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KCBcbiAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSBcbiAgICAgICAgKTtcblxuICAgICAgICB2YXIgVGVzdEZvcm0gPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkQ29tcG9uZW50V2l0aFR5cGUoZm9ybSwgVGVzdEZvcm0pO1xuICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KFRlc3RGb3JtLmdldERPTU5vZGUoKSk7ICBcbiAgICAgICAgZXhwZWN0KGlzQ2FsbGVkKS50b0JlKHRydWUpO1xuXG4gICAgfSk7XG5cbiAgfSk7XG5cbiAgZGVzY3JpYmUoXCJ2YWx1ZSA9PT0gZmFsc2VcIiwgZnVuY3Rpb24oKSB7XG4gICAgdmFyIG9uU3VibWl0O1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgZ2V0RGVmYXVsdFByb3BzOiBmdW5jdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0eXBlOiBcInRleHRcIixcbiAgICAgICAgfTtcbiAgICAgIH0sXG4gICAgICBjaGFuZ2VWYWx1ZTogZnVuY3Rpb24oKSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZS50YXJnZXRbdGhpcy5wcm9wcy50eXBlID09PSBcImNoZWNrYm94XCIgPyBcImNoZWNrZWRcIiA6IFwidmFsdWVcIl0pO1xuICAgICAgfSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt0eXBlOiAgdGhpcy5wcm9wcy50eXBlLCB2YWx1ZTogIHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6ICB0aGlzLmNoYW5nZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uU3VibWl0OiAgZnVuY3Rpb24oYXJnMSkgeyBvblN1Ym1pdChhcmcxKTsgfX0sIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogIHRoaXMucHJvcHMudmFsdWUsIHR5cGU6IFwiY2hlY2tib3hcIn0pLCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJidXR0b25cIiwge3R5cGU6IFwic3VibWl0XCJ9LCBcIlNhdmVcIilcbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBiZWZvcmVFYWNoKGZ1bmN0aW9uKCkge1xuICAgICAgb25TdWJtaXQgPSBqYXNtaW5lLmNyZWF0ZVNweShcIm9uU3VibWl0XCIpO1xuICAgIH0pO1xuXG4gICAgaXQoXCJzaG91bGQgY2FsbCBvblN1Ym1pdCBjb3JyZWN0bHlcIiwgZnVuY3Rpb24oKSB7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge3ZhbHVlOiAgZmFsc2UgfSkpO1xuICAgICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG4gICAgICBleHBlY3Qob25TdWJtaXQpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHtmb286IGZhbHNlfSk7XG4gICAgfSk7XG5cbiAgICBpdChcInNob3VsZCBhbGxvdyBkeW5hbWljIGNoYW5nZXMgdG8gZmFsc2VcIiwgZnVuY3Rpb24oKSB7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge3ZhbHVlOiAgdHJ1ZSB9KSk7XG4gICAgICBmb3JtLnNldFByb3BzKHt2YWx1ZTogZmFsc2V9KTtcbiAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuICAgICAgZXhwZWN0KG9uU3VibWl0KS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7Zm9vOiBmYWxzZX0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNHVmpjeTlHYjNKdGMza3RjM0JsWXk1cWN5SXNJbk52ZFhKalpYTWlPbHNpTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjR1ZqY3k5R2IzSnRjM2t0YzNCbFl5NXFjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4SlFVRkpMRTFCUVUwc1IwRkJSeXhQUVVGUExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1EwRkJRenM3UVVGRmVrTXNVVUZCVVN4RFFVRkRMRkZCUVZFc1JVRkJSU3haUVVGWk96dEJRVVV2UWl4RlFVRkZMRkZCUVZFc1EwRkJReXh0UWtGQmJVSXNSVUZCUlN4WlFVRlpPenRKUVVWNFF5eEZRVUZGTEVOQlFVTXNkME5CUVhkRExFVkJRVVVzV1VGQldUdE5RVU4yUkN4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENMRVZCUVVVc2IwSkJRVU1zVjBGQlZ5eEZRVUZCTEVsQlFXVXNRMEZCUVN4RFFVRkRMRU5CUVVNN1RVRkRkRVVzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1FVRkRlRVFzUzBGQlN5eERRVUZETEVOQlFVTTdPMGxCUlVnc1JVRkJSU3hEUVVGRExHMURRVUZ0UXl4RlFVRkZMRmxCUVZrN1RVRkRiRVFzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFpeEZRVUZGTEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zVTBGQlFTeEZRVUZUTEVOQlFVTXNTMEZCVFN4RFFVRmpMRU5CUVVFc1EwRkJReXhEUVVGRE8wMUJRM1JHTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRM3BFTEV0QlFVc3NRMEZCUXl4RFFVRkRPenRKUVVWSUxFVkJRVVVzUTBGQlF5d3dRMEZCTUVNc1JVRkJSU3hWUVVGVkxFbEJRVWtzUlVGQlJUdE5RVU0zUkN4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0UlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMUZCUTNSQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0VlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VTBGRGJrTTdVVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRWUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8xTkJRM0JGTzBGQlExUXNUMEZCVHl4RFFVRkRMRU5CUVVNN08wMUJSVWdzU1VGQlNTeExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRPMDFCUTJwQ0xFbEJRVWtzT0VKQlFUaENMSGRDUVVGQk8xRkJRMmhETEZGQlFWRXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSVHRWUVVNM1FpeExRVUZMTEVkQlFVY3NVMEZCVXl4RFFVRkRPMU5CUTI1Q08xRkJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdWVUZEYkVJN1dVRkRSU3h2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUnl4RFFVRkJMRVZCUVVFN1kwRkRkRU1zYjBKQlFVRXNTVUZCUnl4RlFVRkJMRWxCUVVNc1JVRkJRU3hOUVVGVExFTkJRVUVzUlVGQlFUdGpRVU5hTEVOQlFVTXNTVUZCU1N4RlFVRkJMRU5CUVVVN1kwRkRVQ3hEUVVGRExGTkJRVk1zUlVGQlFTeERRVUZGTzJOQlEySXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TlFVRkJMRVZCUVUwc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeERRVUZETEUxQlFVOHNRMEZCUVN4RFFVRkhMRU5CUVVFN1dVRkROMElzUTBGQlFUdFpRVU5rTzFOQlEwZzdRVUZEVkN4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFbEJRVVVzUTBGQlFTeERRVUZETEVOQlFVTTdUVUZEY2tRc1ZVRkJWU3hEUVVGRExGbEJRVms3VVVGRGNrSXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEZWQlFWVXNSVUZCUlN4RFFVRkRMRU5CUVVNN1VVRkROME1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNKRExFbEJRVWtzUlVGQlJTeERRVUZETzA5QlExSXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJRenRCUVVOaUxFdEJRVXNzUTBGQlF5eERRVUZET3p0QlFVVlFMRWxCUVVrc1JVRkJSU3hEUVVGRExHbEVRVUZwUkN4RlFVRkZMRlZCUVZVc1NVRkJTU3hGUVVGRk96dE5RVVZ3UlN4SlFVRkpMRTFCUVUwc1IwRkJSeXhGUVVGRkxFTkJRVU03VFVGRGFFSXNTVUZCU1N4WFFVRlhMRWRCUVVjc1NVRkJTU3hEUVVGRE8wMUJRM1pDTEVsQlFVa3NTMEZCU3l4SFFVRkhMRWxCUVVrc1EwRkJRenROUVVOcVFpeEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdFJRVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzFGQlEzUkNMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTEU5QlFVOHNiMEpCUVVFc1MwRkJTU3hGUVVGQkxFbEJRVVVzUTBGQlFUdFRRVU5rTzA5QlEwWXNRMEZCUXl4RFFVRkRPMDFCUTBnc1NVRkJTU3c0UWtGQk9FSXNkMEpCUVVFN1VVRkRhRU1zYTBKQlFXdENMRVZCUVVVc1dVRkJXVHRWUVVNNVFpeFhRVUZYTEVkQlFVY3NTVUZCU1N4RFFVRkRMRmRCUVZjc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdVMEZETTBNN1VVRkRSQ3hSUVVGUkxFVkJRVVVzVlVGQlZTeFRRVUZUTEVWQlFVVTdWVUZETjBJc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF6dFRRVU51UWp0UlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTzFsQlEwVXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJWU3hEUVVGQkxFVkJRVUU3WTBGRGJrTXNUVUZCVHp0WlFVTkpMRU5CUVVFc1JVRkJSVHRUUVVOdVFqdFBRVU5HTEVOQlFVTXNRMEZCUXp0TlFVTklMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1VVRkRja01zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRWxCUVVVc1EwRkJRVHRCUVVOdVFpeFBRVUZQTEVOQlFVTTdRVUZEVWpzN1FVRkZRU3hOUVVGTkxGVkJRVlVzUTBGQlF5eFpRVUZaT3p0UlFVVnlRaXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXp0VlFVTndRaXhKUVVGSkxFVkJRVVVzVFVGQlRUdEJRVU4wUWl4VFFVRlRMRU5CUVVNc1EwRkJReXhEUVVGRE96dEJRVVZhTEZGQlFWRXNWMEZCVnl4RFFVRkRMRmxCUVZrN1FVRkRhRU03TzFWQlJWVXNWVUZCVlN4RFFVRkRMRmxCUVZrN1dVRkRja0lzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTTdXVUZETjBNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4WFFVRlhMRVZCUVVVc1EwRkJRenRaUVVOcVF5eEpRVUZKTEVWQlFVVXNRMEZCUXp0QlFVTnVRaXhYUVVGWExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUldoQ0xGTkJRVk1zUTBGQlF5eERRVUZET3p0QlFVVllMRTlCUVU4c1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF6czdRVUZGWWl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRlVDeEpRVUZKTEVWQlFVVXNRMEZCUXl4blJVRkJaMFVzUlVGQlJTeFZRVUZWTEVsQlFVa3NSVUZCUlRzN1RVRkZia1lzU1VGQlNTeE5RVUZOTEVkQlFVY3NSVUZCUlN4RFFVRkRPMDFCUTJoQ0xFbEJRVWtzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXp0TlFVTjJRaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTTdUVUZEYWtJc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1VVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1ZVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFOQlEyNURPMUZCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VlVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUlVGQlF5eERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRWxCUVVrc1EwRkJReXhYUVVGWkxFTkJRVVVzUTBGQlFUdFRRVU53UlR0UFFVTkdMRU5CUVVNc1EwRkJRenROUVVOSUxFbEJRVWtzT0VKQlFUaENMSGRDUVVGQk8xRkJRMmhETEd0Q1FVRnJRaXhGUVVGRkxGbEJRVms3VlVGRE9VSXNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMU5CUXpORE8xRkJRMFFzVVVGQlVTeEZRVUZGTEZWQlFWVXNVMEZCVXl4RlFVRkZPMVZCUXpkQ0xFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTTdVMEZEYmtJN1VVRkRSQ3hOUVVGTkxFVkJRVVVzV1VGQldUdFZRVU5zUWp0WlFVTkZMRzlDUVVGRExGZEJRVmNzUlVGQlFTeERRVUZCTEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVVc1NVRkJTU3hEUVVGRExGRkJRVlVzUTBGQlFTeEZRVUZCTzJOQlEyNURMRTFCUVU4N1dVRkRTU3hEUVVGQkxFVkJRVVU3VTBGRGJrSTdUMEZEUml4RFFVRkRMRU5CUVVNN1RVRkRTQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08xRkJRM0pETEc5Q1FVRkRMRkZCUVZFc1JVRkJRU3hKUVVGRkxFTkJRVUU3UVVGRGJrSXNUMEZCVHl4RFFVRkRPMEZCUTFJN08wRkJSVUVzVFVGQlRTeFZRVUZWTEVOQlFVTXNXVUZCV1RzN1VVRkZja0lzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNN1ZVRkRjRUlzU1VGQlNTeEZRVUZGTEUxQlFVMDdRVUZEZEVJc1UwRkJVeXhEUVVGRExFTkJRVU1zUTBGQlF6czdRVUZGV2l4UlFVRlJMRmRCUVZjc1EwRkJReXhaUVVGWk8wRkJRMmhET3p0VlFVVlZMRlZCUVZVc1EwRkJReXhaUVVGWk8xbEJRM0pDTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExGTkJRVk1zUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhMUVVGTExFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUXpsSExGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETzFsQlF6ZERMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8xbEJReTlDTEVsQlFVa3NSVUZCUlN4RFFVRkRPMEZCUTI1Q0xGZEJRVmNzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXpzN1FVRkZhRUlzVTBGQlV5eERRVUZETEVOQlFVTTdPMEZCUlZnc1QwRkJUeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZET3p0QlFVVmFMRXRCUVVzc1EwRkJReXhEUVVGRE96dEJRVVZRTEVsQlFVa3NSVUZCUlN4RFFVRkRMRzFGUVVGdFJTeEZRVUZGTEZWQlFWVXNTVUZCU1N4RlFVRkZPenROUVVWMFJpeEpRVUZKTEZkQlFWY3NSMEZCUnl4SlFVRkpMRU5CUVVNN1RVRkRka0lzU1VGQlNTeExRVUZMTEVkQlFVY3NTVUZCU1N4RFFVRkRPMDFCUTJwQ0xFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8xRkJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VVVGRGRFSXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8xVkJRelZDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0VFFVTnVRenRSUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFWQlEyeENMRTlCUVU4c2IwSkJRVUVzVDBGQlRTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hKUVVGSkxFTkJRVU1zVVVGQlVTeEZRVUZGTEVWQlFVTXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hKUVVGSkxFTkJRVU1zVjBGQldTeERRVUZGTEVOQlFVRTdVMEZEY0VVN1FVRkRWQ3hQUVVGUExFTkJRVU1zUTBGQlF6czdUVUZGU0N4SlFVRkpMRXRCUVVzc1EwRkJRenROUVVOV0xFbEJRVWtzT0VKQlFUaENMSGRDUVVGQk8xRkJRMmhETEd0Q1FVRnJRaXhGUVVGRkxGbEJRVms3VlVGRE9VSXNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMU5CUXpORE8xRkJRMFFzVVVGQlVTeEZRVUZGTEZWQlFWVXNVMEZCVXl4RlFVRkZPMVZCUXpkQ0xFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTTdVMEZEYmtJN1VVRkRSQ3hOUVVGTkxFVkJRVVVzV1VGQldUdEJRVU0xUWl4VlFVRlZMRXRCUVVzc1IwRkJSeXh2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFMUJRVUVzUlVGQlRTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVVXNRMEZCUVN4RFFVRkhMRU5CUVVFc1EwRkJRenM3VlVGRk4wUTdXVUZEUlN4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGVkxFTkJRVUVzUlVGQlFUdGpRVU51UXl4TFFVRk5PMWxCUTBzc1EwRkJRU3hGUVVGRk8xTkJRMjVDTzA5QlEwWXNRMEZCUXl4RFFVRkRPMEZCUTFRc1RVRkJUU3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZMTEVOQlFVVXNRMEZCUVN4RFFVRkRMRU5CUVVNN1FVRkRka1U3TzAxQlJVMHNWVUZCVlN4RFFVRkRMRmxCUVZrN1FVRkROMElzVVVGQlVTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUlhSRExGRkJRVkVzVjBGQlZ5eERRVUZETEZsQlFWazdPMVZCUlhSQ0xGVkJRVlVzUTBGQlF5eFpRVUZaTzFsQlEzSkNMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhEUVVGRE8xbEJRemRETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMWxCUXk5Q0xFbEJRVWtzUlVGQlJTeERRVUZETzBGQlEyNUNMRmRCUVZjc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6czdRVUZGYUVJc1UwRkJVeXhEUVVGRExFTkJRVU03TzBGQlJWZ3NUMEZCVHl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRE96dEJRVVZpTEV0QlFVc3NRMEZCUXl4RFFVRkRPenRKUVVWSUxGRkJRVkVzUTBGQlF5eGhRVUZoTEVWQlFVVXNWMEZCVnp0TlFVTnFReXhKUVVGSkxGVkJRVlVzUlVGQlJTeFJRVUZSTEVWQlFVVXNaVUZCWlN4RFFVRkRPMEZCUTJoRUxFMUJRVTBzU1VGQlNTeFBRVUZQTEVOQlFVTTdPMDFCUlZvc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1VVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenRSUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1ZVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFOQlEyNURPMUZCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VlVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZCTEVOQlFVVXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hEUVVGRExFbEJRVWtzUTBGQlF5eFhRVUZYTEVOQlFVVXNRMEZCUVN4RFFVRkhMRU5CUVVFN1UwRkRla1U3UVVGRFZDeFBRVUZQTEVOQlFVTXNRMEZCUXpzN1RVRkZTQ3hKUVVGSkxEaENRVUU0UWl4M1FrRkJRVHRSUVVOb1F5eGxRVUZsTEVWQlFVVXNWMEZCVnp0VlFVTXhRaXhQUVVGUE8xbEJRMHdzVFVGQlRTeEZRVUZGTEVWQlFVVTdWMEZEV0N4RFFVRkRPMU5CUTBnN1VVRkRSQ3hOUVVGTkxFVkJRVVVzV1VGQldUdFZRVU5zUWl4SlFVRkpMRmRCUVZjc1IwRkJSeXhGUVVGRkxFTkJRVU03VlVGRGNrSXNTVUZCU1N4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTTdWVUZETDBJc1MwRkJTeXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRTFCUVUwc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eEZRVUZGTEVWQlFVVTdXVUZEY0VNc1NVRkJTU3hMUVVGTExFZEJRVWNzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUTNSQ0xGZEJRVmNzUTBGQlF5eEpRVUZKTEVOQlFVTXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxHZENRVUZCTEVkQlFVRXNRMEZCUlN4SlFVRkpMRXRCUVVzc1EwRkJReXhGUVVGRExFTkJRVU1zUTBGQlFTeEhRVUZCTEVWQlFVY3NRMEZCUlN4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVVVzUTBGQlFTeERRVUZCTEVOQlFVY3NRMEZCUVN4RFFVRkRMRU5CUVVNN1YwRkRha1U3VlVGRFJDeEpRVUZKTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNN1ZVRkRha0lzVDBGQlR5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRVHRaUVVOcVFpeFJRVUZCTEVWQlFWRXNTVUZCU3l4RFFVRkRMRk5CUVZNc1NVRkJTU3hGUVVGRkxFVkJRVVVzVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJRU3hEUVVGRk8xbEJRMnhFTEU5QlFVRXNSVUZCVHl4TFFVRk5MRU5CUVVNc1YwRkJWeXhGUVVGRkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RlFVRkJMRU5CUVVVN1dVRkRPVU1zVTBGQlFTeEZRVUZUTEVkQlFVa3NRMEZCUXl4WFFVRlhMRVZCUVVVc1QwRkJUeXhIUVVGSExFdEJRVXNzUTBGQlF5eEZRVUZGTEVOQlFVVXNRMEZCUlN4RFFVRkJMRVZCUVVFN1dVRkRhRVFzUTBGQlF5eFpRVUZoTzFWQlEwZ3NRMEZCUVN4RFFVRkRPMU5CUTJoQ08wRkJRMVFzVDBGQlR5eERRVUZETEVOQlFVTTdPMDFCUlVnc1ZVRkJWU3hEUVVGRExGZEJRVmM3VVVGRGNFSXNUMEZCVHl4SFFVRkhMRWxCUVVrc1EwRkJRenRSUVVObUxGVkJRVlVzUjBGQlJ5eFBRVUZQTEVOQlFVTXNVMEZCVXl4RFFVRkRMRmxCUVZrc1EwRkJReXhEUVVGRE8xRkJRemRETEUxQlFVMHNRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eFpRVUZaTEVWQlFVVXNWVUZCVlN4RFFVRkRMRU5CUVVNN1VVRkRia1FzWlVGQlpTeEhRVUZITEU5QlFVOHNRMEZCUXl4VFFVRlRMRU5CUVVNc1dVRkJXU3hEUVVGRExFTkJRVU03VVVGRGJFUXNUVUZCVFN4RFFVRkRMR2xDUVVGcFFpeERRVUZETEdsQ1FVRnBRaXhGUVVGRkxHVkJRV1VzUTBGQlF5eERRVUZETzFGQlF6ZEVMRkZCUVZFc1IwRkJSeXhQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRPMEZCUTJwRUxFOUJRVThzUTBGQlF5eERRVUZET3p0TlFVVklMRVZCUVVVc1EwRkJReXh0UTBGQmJVTXNSVUZCUlN4WFFVRlhPMUZCUTJwRUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMElzUTBGQlF5eHZRa0ZCUXl4UlFVRlJMRVZCUVVFc1EwRkJRU3hEUVVGRExFMUJRVUVzUlVGQlRTeERRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hMUVVGTExFVkJRVVVzVjBGQlZ5eEZRVUZGTEZsQlFWa3NSVUZCUlN4TFFVRkxMRVZCUVVVc1MwRkJTeXhEUVVGRExFVkJRVWNzUTBGQlJTeERRVUZCTEVOQlFVTXNRMEZCUXp0UlFVTjZTQ3hKUVVGSkxFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNLMEpCUVN0Q0xFTkJRVU1zU1VGQlNTeEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVRkRPMUZCUTNKRkxGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhWUVVGVkxFVkJRVVVzUlVGQlJTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdVVUZEZUVVc1RVRkJUU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETEc5Q1FVRnZRaXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFGQlF5OURMRTFCUVUwc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6dEJRVU4yUkN4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEZRVUZGTEVOQlFVTXNNa05CUVRKRExFVkJRVVVzVjBGQlZ6dFJRVU42UkN4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc2IwSkJRVU1zVVVGQlVTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TlFVRkJMRVZCUVUwc1EwRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVWQlFVVXNTMEZCU3l4RlFVRkZMRmRCUVZjc1JVRkJSU3haUVVGWkxFVkJRVVVzUzBGQlN5eEZRVUZGTEV0QlFVc3NRMEZCUXl4RlFVRkhMRU5CUVVVc1EwRkJRU3hEUVVGRExFTkJRVU03VVVGRGVrZ3NTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSU3hYUVVGWExFVkJRVVVzYVVKQlFXbENMRVZCUVVVc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRPMUZCUTNoR0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1VVRkRja1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExGVkJRVlVzUlVGQlJTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTjRSU3hOUVVGTkxFTkJRVU1zWlVGQlpTeERRVUZETEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdRVUZETlVRc1QwRkJUeXhEUVVGRExFTkJRVU03TzAxQlJVZ3NSVUZCUlN4RFFVRkRMRzFGUVVGdFJTeEZRVUZGTEZOQlFWTXNTVUZCU1N4RlFVRkZPMUZCUTNKR0xFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMElzUTBGQlF5eHZRa0ZCUXl4UlFVRlJMRVZCUVVFc1EwRkJRU3hEUVVGRExFMUJRVUVzUlVGQlRTeERRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hMUVVGTExFVkJRVVVzVjBGQlZ5eEZRVUZGTEZOQlFWTXNSVUZCUlN4TFFVRkxMRVZCUVVVc1lVRkJZU3hEUVVGRExFVkJRVWNzUTBGQlJTeERRVUZCTEVOQlFVTXNRMEZCUXp0UlFVTTVTQ3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8xRkJRemxDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJReXhOUVVGTkxFVkJRVVU3VlVGRGNrSXNRMEZCUXl4SlFVRkpMRVZCUVVVc1MwRkJTeXhGUVVGRkxGZEJRVmNzUlVGQlJTeFRRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZMR0ZCUVdFc1EwRkJRenRWUVVNelJDeERRVUZETEVsQlFVa3NSVUZCUlN4TFFVRkxMRVZCUVVVc1YwRkJWeXhGUVVGRkxGTkJRVk1zUlVGQlJTeExRVUZMTEVWQlFVVXNVMEZCVXl4RFFVRkRPMU5CUTNoRUxFTkJRVU1zUlVGQlJTeFhRVUZYTzFWQlEySXNWVUZCVlN4RFFVRkRMRmRCUVZjN1dVRkRjRUlzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFpRVU12UWl4SlFVRkpMRVZCUVVVc1EwRkJRenRYUVVOU0xFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdVMEZEVUN4RFFVRkRMRU5CUVVNN1FVRkRXQ3hQUVVGUExFTkJRVU1zUTBGQlF6czdUVUZGU0N4RlFVRkZMRU5CUVVNc2RVUkJRWFZFTEVWQlFVVXNVMEZCVXl4SlFVRkpMRVZCUVVVN1VVRkRla1VzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFpeERRVUZETEc5Q1FVRkRMRkZCUVZFc1JVRkJRU3hEUVVGQkxFTkJRVU1zVFVGQlFTeEZRVUZOTEVOQlFVVXNRMEZCUXp0VlFVTjZSQ3hEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVWQlFVVXNWMEZCVnl4RlFVRkZMRk5CUVZNc1JVRkJSU3hMUVVGTExFVkJRVVVzWVVGQllTeERRVUZETzFWQlF6TkVMRU5CUVVNc1NVRkJTU3hGUVVGRkxFdEJRVXNzUlVGQlJTeFhRVUZYTEVWQlFVVXNVMEZCVXl4RlFVRkZMRXRCUVVzc1JVRkJSU3hUUVVGVExFTkJRVU03VlVGRGRFUXNRMEZCUVN4RFFVRkhMRU5CUVVFc1EwRkJReXhEUVVGRE8xRkJRMUlzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFJRVU12UWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRVZCUVVVc1MwRkJTeXhGUVVGRkxGZEJRVmNzUlVGQlJTeFRRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZMR0ZCUVdFc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeFhRVUZYTzFWQlEyaEhMRlZCUVZVc1EwRkJReXhYUVVGWE8xbEJRM0JDTEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdXVUZET1VJc1NVRkJTU3hGUVVGRkxFTkJRVU03VjBGRFVpeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMU5CUTFBc1EwRkJReXhEUVVGRE8wRkJRMWdzVDBGQlR5eERRVUZETEVOQlFVTTdPMDFCUlVnc1JVRkJSU3hEUVVGRExESkNRVUV5UWl4RlFVRkZMRmRCUVZjN1VVRkRla01zU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFpeERRVUZETEc5Q1FVRkRMRkZCUVZFc1JVRkJRU3hEUVVGQkxFTkJRVU1zVFVGQlFTeEZRVUZOTEVOQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1NVRkJTU3hGUVVGRkxFdEJRVXNzUlVGQlJTeFhRVUZYTEVWQlFVVXNORUpCUVRSQ0xFVkJRVVVzUzBGQlN5eEZRVUZGTEV0QlFVc3NRMEZCUXl4RlFVRkhMRU5CUVVVc1EwRkJRU3hEUVVGRExFTkJRVU03VVVGRGVra3NTVUZCU1N4TFFVRkxMRWRCUVVjc1UwRkJVeXhEUVVGRExDdENRVUVyUWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dFJRVU55UlN4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNWVUZCVlN4RlFVRkZMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRM2hGTEUxQlFVMHNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRSUVVNdlF5eE5RVUZOTEVOQlFVTXNaVUZCWlN4RFFVRkRMRU5CUVVNc2IwSkJRVzlDTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1QwRkRja1FzUTBGQlF5eERRVUZETzBGQlExUXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wbEJSVWdzUlVGQlJTeERRVUZETEd0RVFVRnJSQ3hGUVVGRkxGbEJRVms3VFVGRGFrVXNTVUZCU1N4VlFVRlZMRWRCUVVjc1QwRkJUeXhEUVVGRExGTkJRVk1zUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0TlFVTXZReXhKUVVGSkxEaENRVUU0UWl4M1FrRkJRVHRSUVVOb1F5eFJRVUZSTEVWQlFVVXNXVUZCV1R0VlFVTndRaXhWUVVGVkxFVkJRVVVzUTBGQlF6dFRRVU5rTzFGQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1ZVRkRiRUlzVDBGQlR5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlZMRU5CUVdNc1EwRkJRU3hEUVVGRE8xTkJRemRFTzA5QlEwWXNRMEZCUXl4RFFVRkRPMDFCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRaXhEUVVGRExHOUNRVUZETEZGQlFWRXNSVUZCUVN4SlFVRkZMRU5CUVVFc1EwRkJReXhEUVVGRE8wMUJRM0pFTEUxQlFVMHNRMEZCUXl4VlFVRlZMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zWjBKQlFXZENMRVZCUVVVc1EwRkJRenRCUVVOb1JDeExRVUZMTEVOQlFVTXNRMEZCUXpzN1NVRkZTQ3hGUVVGRkxFTkJRVU1zYzBSQlFYTkVMRVZCUVVVc1dVRkJXVHROUVVOeVJTeEpRVUZKTEZWQlFWVXNSMEZCUnl4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETzAxQlF5OURMRWxCUVVrc05rSkJRVFpDTEhWQ1FVRkJPMUZCUXk5Q0xFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1VVRkRkRUlzVVVGQlVTeEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMVZCUTNwQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFRRVU51UXp0UlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGRkxFVkJRVU1zUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVeXhEUVVGRkxFTkJRVUU3VTBGRGFrVTdUMEZEUml4RFFVRkRMRU5CUVVNN1RVRkRTQ3hKUVVGSkxEaENRVUU0UWl4M1FrRkJRVHRSUVVOb1F5eFJRVUZSTEVWQlFVVXNXVUZCV1R0VlFVTndRaXhWUVVGVkxFVkJRVVVzUTBGQlF6dFRRVU5rTzFGQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1ZVRkRiRUk3V1VGRFJTeHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlZMRU5CUVVFc1JVRkJRVHRqUVVOd1F5eHZRa0ZCUXl4UFFVRlBMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEV0QlFVc3NRMEZCUlN4RFFVRkJPMWxCUTFRc1EwRkJRVHRaUVVOa08xTkJRMGc3VDBGRFJpeERRVUZETEVOQlFVTTdUVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc2IwSkJRVU1zVVVGQlVTeEZRVUZCTEVsQlFVVXNRMEZCUVN4RFFVRkRMRU5CUVVNN1RVRkRja1FzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1UwRkJVeXhEUVVGRExDdENRVUVyUWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hQUVVGUExFTkJRVU1zUlVGQlJTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdUVUZET1Vjc1RVRkJUU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFTkJRVU03UVVGRE5VTXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wbEJSVWdzUlVGQlJTeERRVUZETEhsRVFVRjVSQ3hGUVVGRkxGVkJRVlVzU1VGQlNTeEZRVUZGTzAxQlF6VkZMRWxCUVVrc1ZVRkJWU3hIUVVGSExFOUJRVThzUTBGQlF5eFRRVUZUTEVOQlFVTXNWVUZCVlN4RFFVRkRMRU5CUVVNN1RVRkRMME1zU1VGQlNTeE5RVUZOTEVkQlFVY3NSVUZCUlN4RFFVRkRPMDFCUTJoQ0xFbEJRVWtzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXp0TlFVTjJRaXhKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHRSUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8xRkJRM1JDTEZkQlFWY3NSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRWUVVNMVFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdVMEZEYmtNN1VVRkRSQ3hOUVVGTkxFVkJRVVVzV1VGQldUdFZRVU5zUWl4UFFVRlBMRzlDUVVGQkxFOUJRVTBzUlVGQlFTeERRVUZCTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZETEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVVc1NVRkJTU3hEUVVGRExGZEJRVmtzUTBGQlJTeERRVUZCTzFOQlEzQkZPMDlCUTBZc1EwRkJReXhEUVVGRE8wMUJRMGdzU1VGQlNTdzRRa0ZCT0VJc2QwSkJRVUU3VVVGRGFFTXNhMEpCUVd0Q0xFVkJRVVVzV1VGQldUdFZRVU01UWl4WFFVRlhMRWRCUVVjc1NVRkJTU3hEUVVGRExGZEJRVmNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN1UwRkRNME03VVVGRFJDeFJRVUZSTEVWQlFVVXNXVUZCV1R0VlFVTndRaXhWUVVGVkxFVkJRVVVzUTBGQlF6dFRRVU5rTzFGQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1ZVRkRiRUk3V1VGRFJTeHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlZMRU5CUVVFc1JVRkJRVHRqUVVOdVF5eE5RVUZQTzFsQlEwa3NRMEZCUVN4RlFVRkZPMU5CUTI1Q08wOUJRMFlzUTBGQlF5eERRVUZETzAxQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0UlFVTnlReXh2UWtGQlF5eFJRVUZSTEVWQlFVRXNTVUZCUlN4RFFVRkJPMEZCUTI1Q0xFOUJRVThzUTBGQlF6dEJRVU5TT3p0TlFVVk5MRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETzFGQlEzQkNMRWxCUVVrc1JVRkJSU3hOUVVGTk8wRkJRM0JDTEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNN08wRkJSVllzVFVGQlRTeFhRVUZYTEVOQlFVTXNXVUZCV1R0QlFVTTVRanM3VVVGRlVTeFZRVUZWTEVOQlFVTXNXVUZCV1R0VlFVTnlRaXhOUVVGTkxFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6dFZRVU4wUXl4SlFVRkpMRVZCUVVVc1EwRkJRenRCUVVOcVFpeFRRVUZUTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN08wRkJSV1FzVDBGQlR5eERRVUZETEVOQlFVTTdPMEZCUlZRc1MwRkJTeXhEUVVGRExFTkJRVU03TzBGQlJWQXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeFJRVUZSTEVOQlFVTXNaVUZCWlN4RlFVRkZMRmxCUVZrN08wRkJSWGhETEVsQlFVa3NSVUZCUlN4RFFVRkRMSGRFUVVGM1JDeEZRVUZGTEZWQlFWVXNTVUZCU1N4RlFVRkZPenROUVVVelJTeEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdFJRVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzFGQlEzUkNMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGSExFTkJRVVVzUTBGQlFUdFRRVU40UXp0UFFVTkdMRU5CUVVNc1EwRkJRenROUVVOSUxFbEJRVWtzT0VKQlFUaENMSGRDUVVGQk8xRkJRMmhETEdWQlFXVXNSVUZCUlN4WlFVRlpPMVZCUXpOQ0xFOUJRVThzUTBGQlF5eFJRVUZSTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNN1UwRkRla0k3VVVGRFJDeFZRVUZWTEVWQlFVVXNXVUZCV1R0VlFVTjBRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETzFsQlExb3NVVUZCVVN4RlFVRkZMRXRCUVVzN1YwRkRhRUlzUTBGQlF5eERRVUZETzFOQlEwbzdVVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRWUVVOc1FqdFpRVU5GTEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJReXhEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJWU3hEUVVGQkxFVkJRVUU3WTBGRGJrVXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVVc1EwRkJRVHRaUVVOWUxFTkJRVUVzUlVGQlJUdFRRVU51UWp0UFFVTkdMRU5CUVVNc1EwRkJRenROUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VVVGRGNrTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFbEJRVVVzUTBGQlFUdEJRVU51UWl4UFFVRlBMRU5CUVVNN08wMUJSVVlzU1VGQlNTeExRVUZMTEVkQlFVY3NVMEZCVXl4RFFVRkRMRFpDUVVFMlFpeERRVUZETEVsQlFVa3NSVUZCUlN4VFFVRlRMRU5CUVVNc1EwRkJRenROUVVOeVJTeE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMR05CUVdNc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUXpGRExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXp0TlFVTnNRaXhWUVVGVkxFTkJRVU1zV1VGQldUdFJRVU55UWl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExHTkJRV01zUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8xRkJRek5ETEVsQlFVa3NSVUZCUlN4RFFVRkRPMEZCUTJZc1QwRkJUeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZET3p0QlFVVmFMRXRCUVVzc1EwRkJReXhEUVVGRE96dEJRVVZRTEVsQlFVa3NSVUZCUlN4RFFVRkRMRzlHUVVGdlJpeEZRVUZGTEZWQlFWVXNTVUZCU1N4RlFVRkZPenROUVVWMlJ5eEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdFJRVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzFGQlEzUkNMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGSExFTkJRVVVzUTBGQlFTeERRVUZETzFOQlEzcERPMDlCUTBZc1EwRkJReXhEUVVGRE8wMUJRMGdzU1VGQlNTdzRRa0ZCT0VJc2QwSkJRVUU3VVVGRGFFTXNaVUZCWlN4RlFVRkZMRmxCUVZrN1ZVRkRNMElzVDBGQlR6dFpRVU5NTEdkQ1FVRm5RaXhGUVVGRk8yTkJRMmhDTEVkQlFVY3NSVUZCUlN4TFFVRkxPMkZCUTFnN1YwRkRSaXhEUVVGRE8xTkJRMGc3VVVGRFJDeFJRVUZSTEVWQlFVVXNWVUZCVlN4TlFVRk5MRVZCUVVVN1ZVRkRNVUlzU1VGQlNTeE5RVUZOTEVOQlFVTXNSMEZCUnl4RlFVRkZPMWxCUTJRc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF6dGpRVU5hTEdkQ1FVRm5RaXhGUVVGRkxFVkJRVVU3WVVGRGNrSXNRMEZCUXl4RFFVRkRPMWRCUTBvc1RVRkJUVHRaUVVOTUxFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTTdZMEZEV2l4blFrRkJaMElzUlVGQlJTeERRVUZETEVkQlFVY3NSVUZCUlN4TFFVRkxMRU5CUVVNN1lVRkRMMElzUTBGQlF5eERRVUZETzFkQlEwbzdVMEZEUmp0UlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTzFsQlEwVXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGRExFTkJRVU1zWjBKQlFVRXNSVUZCWjBJc1EwRkJSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEdkQ1FVRnJRaXhEUVVGQkxFVkJRVUU3WTBGRGJrWXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVVc1EwRkJRVHRaUVVOWUxFTkJRVUVzUlVGQlJUdFRRVU51UWp0UFFVTkdMRU5CUVVNc1EwRkJRenROUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VVVGRGNrTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFbEJRVVVzUTBGQlFUdEJRVU51UWl4UFFVRlBMRU5CUVVNN1FVRkRVanM3VFVGRlRTeFZRVUZWTEVOQlFVTXNXVUZCV1R0UlFVTnlRaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNOa0pCUVRaQ0xFTkJRVU1zU1VGQlNTeEZRVUZGTEZOQlFWTXNRMEZCUXl4RFFVRkRPMUZCUTNKRkxFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNaVUZCWlN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdRVUZEY0VRc1VVRkJVU3hMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRPMEZCUTI1RE96dFJRVVZSTEZWQlFWVXNRMEZCUXl4WlFVRlpPMVZCUTNKQ0xFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNaVUZCWlN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdWVUZETTBNc1NVRkJTU3hGUVVGRkxFTkJRVU03VTBGRFVpeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTJRc1QwRkJUeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZET3p0QlFVVmFMRXRCUVVzc1EwRkJReXhEUVVGRE8wRkJRMUE3TzBGQlJVRXNTVUZCU1N4RlFVRkZMRU5CUVVNc09FUkJRVGhFTEVWQlFVVXNXVUZCV1RzN1VVRkZNMFVzU1VGQlNTeFJRVUZSTEVkQlFVY3NTMEZCU3l4RFFVRkRPMUZCUTNKQ0xFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8xVkJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VlVGRGRFSXNUVUZCVFN4RlFVRkZMRmxCUVZrN1dVRkRiRUlzVDBGQlR5eHZRa0ZCUVN4UFFVRk5MRVZCUVVFc1EwRkJRU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlJMRVZCUVVjc1EwRkJSU3hEUVVGQkxFTkJRVU03VjBGRGVrTTdVMEZEUml4RFFVRkRMRU5CUVVNN1VVRkRTQ3hKUVVGSkxEaENRVUU0UWl4M1FrRkJRVHRWUVVOb1F5eGhRVUZoTEVWQlFVVXNXVUZCV1R0WlFVTjZRaXhSUVVGUkxFZEJRVWNzU1VGQlNTeERRVUZETzFkQlEycENPMVZCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3V1VGRGJFSTdZMEZEUlN4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEdGQlFVRXNSVUZCWVN4RFFVRkZMRWxCUVVrc1EwRkJReXhoUVVGbExFTkJRVUVzUlVGQlFUdG5Ra0ZET1VNc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eFhRVUZCTEVWQlFWY3NRMEZCUXl4VFFVRkJMRVZCUVZNc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eGhRVUZoTEVOQlFVVXNRMEZCUVR0alFVTnlSQ3hEUVVGQkxFVkJRVVU3VjBGRGJrSTdVMEZEUml4RFFVRkRMRU5CUVVNN1VVRkRTQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08xVkJRM0pETEc5Q1FVRkRMRkZCUVZFc1JVRkJRU3hKUVVGRkxFTkJRVUU3UVVGRGNrSXNVMEZCVXl4RFFVRkRPenRSUVVWR0xFbEJRVWtzVVVGQlVTeEhRVUZITEZOQlFWTXNRMEZCUXl3MlFrRkJOa0lzUTBGQlF5eEpRVUZKTEVWQlFVVXNVVUZCVVN4RFFVRkRMRU5CUVVNN1VVRkRka1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1VVRkJVU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTTdRVUZEZWtRc1VVRkJVU3hOUVVGTkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE96dEJRVVZ3UXl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRlVDeEpRVUZKTEVWQlFVVXNRMEZCUXl4dFJVRkJiVVVzUlVGQlJTeFpRVUZaT3p0UlFVVm9SaXhKUVVGSkxGRkJRVkVzUjBGQlJ5eExRVUZMTEVOQlFVTTdVVUZEY2tJc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1ZVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenRWUVVOMFFpeE5RVUZOTEVWQlFVVXNXVUZCV1R0WlFVTnNRaXhQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUnl4RFFVRkZMRU5CUVVFc1EwRkJRenRYUVVONlF6dFRRVU5HTEVOQlFVTXNRMEZCUXp0UlFVTklMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMVZCUTJoRExHVkJRV1VzUlVGQlJTeFpRVUZaTzFsQlF6TkNMRkZCUVZFc1IwRkJSeXhKUVVGSkxFTkJRVU03VjBGRGFrSTdWVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRaUVVOc1FqdGpRVU5GTEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zWlVGQlFTeEZRVUZsTEVOQlFVVXNTVUZCU1N4RFFVRkRMR1ZCUVdsQ0xFTkJRVUVzUlVGQlFUdG5Ra0ZEYkVRc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eFhRVUZCTEVWQlFWY3NRMEZCUXl4VFFVRkJMRVZCUVZNc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eFRRVUZUTEVOQlFVVXNRMEZCUVR0alFVTnFSQ3hEUVVGQkxFVkJRVVU3VjBGRGJrSTdVMEZEUml4RFFVRkRMRU5CUVVNN1VVRkRTQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08xVkJRM0pETEc5Q1FVRkRMRkZCUVZFc1JVRkJRU3hKUVVGRkxFTkJRVUU3UVVGRGNrSXNVMEZCVXl4RFFVRkRPenRSUVVWR0xFbEJRVWtzVVVGQlVTeEhRVUZITEZOQlFWTXNRMEZCUXl3MlFrRkJOa0lzUTBGQlF5eEpRVUZKTEVWQlFVVXNVVUZCVVN4RFFVRkRMRU5CUVVNN1VVRkRka1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1VVRkJVU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTTdRVUZEZWtRc1VVRkJVU3hOUVVGTkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE96dEJRVVZ3UXl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRlVDeEhRVUZITEVOQlFVTXNRMEZCUXpzN1JVRkZTQ3hSUVVGUkxFTkJRVU1zYVVKQlFXbENMRVZCUVVVc1YwRkJWenRKUVVOeVF5eEpRVUZKTEZGQlFWRXNRMEZCUXp0SlFVTmlMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzWlVGQlpTeEZRVUZGTEZkQlFWYzdVVUZETVVJc1QwRkJUenRWUVVOTUxFbEJRVWtzUlVGQlJTeE5RVUZOTzFOQlEySXNRMEZCUXp0UFFVTklPMDFCUTBRc1YwRkJWeXhGUVVGRkxGZEJRVmM3VVVGRGRFSXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hMUVVGTExGVkJRVlVzUjBGQlJ5eFRRVUZUTEVkQlFVY3NUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJRenRQUVVNdlJUdE5RVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMUZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhKUVVGQkxFVkJRVWtzUTBGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hGUVVGQkxFTkJRVVVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUlVGQlFTeERRVUZGTEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVVc1EwRkJReXhKUVVGSkxFTkJRVU1zVjBGQlZ5eERRVUZGTEVOQlFVVXNRMEZCUVR0UFFVTnFSenRCUVVOUUxFdEJRVXNzUTBGQlF5eERRVUZET3p0SlFVVklMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMDFCUTJoRExFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENPMVZCUTBVc2IwSkJRVU1zVjBGQlZ5eEZRVUZCTEVOQlFVRXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hEUVVGRExGTkJRVk1zU1VGQlNTeEZRVUZGTEVWQlFVVXNVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlJ5eERRVUZCTEVWQlFVRTdXVUZETTBRc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUzBGQlN5eEZRVUZCTEVOQlFVVXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhWUVVGVkxFTkJRVUVzUTBGQlJ5eERRVUZCTEVWQlFVRTdXVUZEYmtVc2IwSkJRVUVzVVVGQlR5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhSUVVGVExFTkJRVUVzUlVGQlFTeE5RVUZoTEVOQlFVRTdWVUZEZGtJc1EwRkJRVHRWUVVOa08wOUJRMGc3UVVGRFVDeExRVUZMTEVOQlFVTXNRMEZCUXpzN1NVRkZTQ3hWUVVGVkxFTkJRVU1zVjBGQlZ6dE5RVU53UWl4UlFVRlJMRWRCUVVjc1QwRkJUeXhEUVVGRExGTkJRVk1zUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXp0QlFVTXZReXhMUVVGTExFTkJRVU1zUTBGQlF6czdTVUZGU0N4RlFVRkZMRU5CUVVNc1owTkJRV2RETEVWQlFVVXNWMEZCVnp0TlFVTTVReXhKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeERRVUZETEUxQlFVOHNRMEZCUlN4RFFVRkJMRU5CUVVNc1EwRkJRenROUVVOeVJTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNRMEZCUXp0TlFVTTNReXhOUVVGTkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zUTBGQlF5eEhRVUZITEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVNeFJDeExRVUZMTEVOQlFVTXNRMEZCUXpzN1NVRkZTQ3hGUVVGRkxFTkJRVU1zZFVOQlFYVkRMRVZCUVVVc1YwRkJWenROUVVOeVJDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4RFFVRkRMRXRCUVUwc1EwRkJSU3hEUVVGQkxFTkJRVU1zUTBGQlF6dE5RVU53UlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zUzBGQlN5eEZRVUZGTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNN1RVRkRPVUlzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTTdUVUZETjBNc1RVRkJUU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETEc5Q1FVRnZRaXhEUVVGRExFTkJRVU1zUjBGQlJ5eEZRVUZGTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNN1MwRkRja1FzUTBGQlF5eERRVUZETzBkQlEwb3NRMEZCUXl4RFFVRkRPME5CUTBvc1EwRkJReXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lkbUZ5SUVadmNtMXplU0E5SUhKbGNYVnBjbVVvSnk0dkxpNHZjM0pqTDIxaGFXNHVhbk1uS1R0Y2JseHVaR1Z6WTNKcFltVW9KMFp2Y20xemVTY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0JrWlhOamNtbGlaU2duVTJWMGRHbHVaeUIxY0NCaElHWnZjbTBuTENCbWRXNWpkR2x2YmlBb0tTQjdYRzVjYmlBZ0lDQnBkQ2duYzJodmRXeGtJSEpsYm1SbGNpQmhJR1p2Y20wZ2FXNTBieUIwYUdVZ1pHOWpkVzFsYm5RbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb0lEeEdiM0p0YzNrdVJtOXliVDQ4TDBadmNtMXplUzVHYjNKdFBpazdYRzRnSUNBZ0lDQmxlSEJsWTNRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrdWRHRm5UbUZ0WlNrdWRHOUZjWFZoYkNnblJrOVNUU2NwTzF4dUlDQWdJSDBwTzF4dVhHNGdJQ0FnYVhRb0ozTm9iM1ZzWkNCelpYUWdZU0JqYkdGemN5QnVZVzFsSUdsbUlIQmhjM05sWkNjc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENnZ1BFWnZjbTF6ZVM1R2IzSnRJR05zWVhOelRtRnRaVDFjSW1admIxd2lQand2Um05eWJYTjVMa1p2Y20wK0tUdGNiaUFnSUNBZ0lHVjRjR1ZqZENobWIzSnRMbWRsZEVSUFRVNXZaR1VvS1M1amJHRnpjMDVoYldVcExuUnZSWEYxWVd3b0oyWnZieWNwTzF4dUlDQWdJSDBwTzF4dVhHNGdJQ0FnYVhRb0ozTm9iM1ZzWkNCaGJHeHZkeUJtYjNJZ2JuVnNiQzkxYm1SbFptbHVaV1FnWTJocGJHUnlaVzRuTENCbWRXNWpkR2x2YmlBb1pHOXVaU2tnZTF4dUlDQWdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lDQWdZMmhoYm1kbFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNobGRtVnVkQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvWlhabGJuUXVkR0Z5WjJWMExuWmhiSFZsS1R0Y2JpQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTQnZia05vWVc1blpUMTdkR2hwY3k1amFHRnVaMlZXWVd4MVpYMHZQbHh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5S1R0Y2JseHVJQ0FnSUNBZ2RtRnlJRzF2WkdWc0lEMGdiblZzYkR0Y2JpQWdJQ0FnSUhaaGNpQlVaWE4wUm05eWJTQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnYjI1VGRXSnRhWFE2SUdaMWJtTjBhVzl1SUNobWIzSnRUVzlrWld3cElIdGNiaUFnSUNBZ0lDQWdJQ0J0YjJSbGJDQTlJR1p2Y20xTmIyUmxiRHRjYmlBZ0lDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJQ2hjYmlBZ0lDQWdJQ0FnSUNBZ0lEeEdiM0p0YzNrdVJtOXliU0J2YmxOMVltMXBkRDE3SUhSb2FYTXViMjVUZFdKdGFYUWdmVDVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdQR2d4UGxSbGMzUThMMmd4UGx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0I3SUc1MWJHd2dmVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQjdJSFZ1WkdWbWFXNWxaQ0I5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMG5ibUZ0WlNjZ2RtRnNkV1U5ZXlBblptOXZKeUI5SUM4K1hHNGdJQ0FnSUNBZ0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvUEZSbGMzUkdiM0p0THo0cE8xeHVJQ0FnSUNBZ2MyVjBWR2x0Wlc5MWRDaG1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvWm05eWJTNW5aWFJFVDAxT2IyUmxLQ2twTzF4dUlDQWdJQ0FnSUNCbGVIQmxZM1FvYlc5a1pXd3BMblJ2UlhGMVlXd29lMjVoYldVNklDZG1iMjhuZlNrN1hHNGdJQ0FnSUNBZ0lHUnZibVVvS1R0Y2JpQWdJQ0FnSUgwc0lERXdLVHRjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJR2wwS0NkemFHOTFiR1FnWVd4c2IzY2dabTl5SUdsdWNIVjBjeUJpWldsdVp5QmhaR1JsWkNCa2VXNWhiV2xqWVd4c2VTY3NJR1oxYm1OMGFXOXVJQ2hrYjI1bEtTQjdYRzVjYmlBZ0lDQWdJSFpoY2lCcGJuQjFkSE1nUFNCYlhUdGNiaUFnSUNBZ0lIWmhjaUJtYjNKalpWVndaR0YwWlNBOUlHNTFiR3c3WEc0Z0lDQWdJQ0IyWVhJZ2JXOWtaV3dnUFNCdWRXeHNPMXh1SUNBZ0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lDQWdiV2w0YVc1ek9pQmJSbTl5YlhONUxrMXBlR2x1WFN4Y2JpQWdJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJRHhrYVhZdlBseHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJSFpoY2lCVVpYTjBSbTl5YlNBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lDQWdZMjl0Y0c5dVpXNTBWMmxzYkUxdmRXNTBPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lDQWdabTl5WTJWVmNHUmhkR1VnUFNCMGFHbHpMbVp2Y21ObFZYQmtZWFJsTG1KcGJtUW9kR2hwY3lrN1hHNGdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQWdJRzl1VTNWaWJXbDBPaUJtZFc1amRHbHZiaUFvWm05eWJVMXZaR1ZzS1NCN1hHNGdJQ0FnSUNBZ0lDQWdiVzlrWld3Z1BTQm1iM0p0VFc5a1pXdzdYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQW9JRnh1SUNBZ0lDQWdJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1VTNWaWJXbDBQWHQwYUdsekxtOXVVM1ZpYldsMGZUNGdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lIdHBibkIxZEhOOVhHNGdJQ0FnSUNBZ0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBpazdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtDQmNiaUFnSUNBZ0lDQWdQRlJsYzNSR2IzSnRMejRnWEc0Z0lDQWdJQ0FwTzF4dVhHNGdJQ0FnSUNBdkx5QlhZV2wwSUdKbFptOXlaU0JoWkdScGJtY2dkR2hsSUdsdWNIVjBYRzRnSUNBZ0lDQnpaWFJVYVcxbGIzVjBLR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0FnSUNBZ0lDQnBibkIxZEhNdWNIVnphQ2hVWlhOMFNXNXdkWFFvZTF4dUlDQWdJQ0FnSUNBZ0lHNWhiV1U2SUNkMFpYTjBKMXh1SUNBZ0lDQWdJQ0I5S1NrN1hHNWNiaUFnSUNBZ0lDQWdabTl5WTJWVmNHUmhkR1VvWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ0lDQWdJQ0FnTHk4Z1YyRnBkQ0JtYjNJZ2JtVjRkQ0JsZG1WdWRDQnNiMjl3TENCaGN5QjBhR0YwSUdSdlpYTWdkR2hsSUdadmNtMWNiaUFnSUNBZ0lDQWdJQ0J6WlhSVWFXMWxiM1YwS0daMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvWm05eWJTNW5aWFJFVDAxT2IyUmxLQ2twTzF4dUlDQWdJQ0FnSUNBZ0lDQWdaWGh3WldOMEtHMXZaR1ZzTG5SbGMzUXBMblJ2UW1WRVpXWnBibVZrS0NrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JrYjI1bEtDazdYRzRnSUNBZ0lDQWdJQ0FnZlN3Z01DazdYRzVjYmlBZ0lDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lIMHNJREV3S1R0Y2JseHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2FYUW9KM05vYjNWc1pDQmhiR3h2ZHlCa2VXNWhiV2xqWVd4c2VTQmhaR1JsWkNCcGJuQjFkSE1nZEc4Z2RYQmtZWFJsSUhSb1pTQm1iM0p0TFcxdlpHVnNKeXdnWm5WdVkzUnBiMjRnS0dSdmJtVXBJSHRjYmx4dUlDQWdJQ0FnZG1GeUlHbHVjSFYwY3lBOUlGdGRPMXh1SUNBZ0lDQWdkbUZ5SUdadmNtTmxWWEJrWVhSbElEMGdiblZzYkR0Y2JpQWdJQ0FnSUhaaGNpQnRiMlJsYkNBOUlHNTFiR3c3WEc0Z0lDQWdJQ0IyWVhJZ1ZHVnpkRWx1Y0hWMElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ0lDQmphR0Z1WjJWV1lXeDFaVG9nWm5WdVkzUnBiMjRnS0dWMlpXNTBLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSV1lXeDFaU2hsZG1WdWRDNTBZWEpuWlhRdWRtRnNkV1VwTzF4dUlDQWdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG1Ob1lXNW5aVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZG1GeUlGUmxjM1JHYjNKdElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdJQ0JqYjIxd2IyNWxiblJYYVd4c1RXOTFiblE2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0JtYjNKalpWVndaR0YwWlNBOUlIUm9hWE11Wm05eVkyVlZjR1JoZEdVdVltbHVaQ2gwYUdsektUdGNiaUFnSUNBZ0lDQWdmU3hjYmlBZ0lDQWdJQ0FnYjI1VGRXSnRhWFE2SUdaMWJtTjBhVzl1SUNobWIzSnRUVzlrWld3cElIdGNiaUFnSUNBZ0lDQWdJQ0J0YjJSbGJDQTlJR1p2Y20xTmIyUmxiRHRjYmlBZ0lDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJQ2dnWEc0Z0lDQWdJQ0FnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTBnYjI1VGRXSnRhWFE5ZTNSb2FYTXViMjVUZFdKdGFYUjlQaUJjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdlMmx1Y0hWMGMzMWNiaUFnSUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtLVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9JRnh1SUNBZ0lDQWdJQ0E4VkdWemRFWnZjbTB2UGlCY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNBZ0lDOHZJRmRoYVhRZ1ltVm1iM0psSUdGa1pHbHVaeUIwYUdVZ2FXNXdkWFJjYmlBZ0lDQWdJSE5sZEZScGJXVnZkWFFvWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ0lDQWdJR2x1Y0hWMGN5NXdkWE5vS0ZSbGMzUkpibkIxZENoN1hHNGdJQ0FnSUNBZ0lDQWdibUZ0WlRvZ0ozUmxjM1FuWEc0Z0lDQWdJQ0FnSUgwcEtUdGNibHh1SUNBZ0lDQWdJQ0JtYjNKalpWVndaR0YwWlNobWRXNWpkR2x2YmlBb0tTQjdYRzVjYmlBZ0lDQWdJQ0FnSUNBdkx5QlhZV2wwSUdadmNpQnVaWGgwSUdWMlpXNTBJR3h2YjNBc0lHRnpJSFJvWVhRZ1pHOWxjeUIwYUdVZ1ptOXliVnh1SUNBZ0lDQWdJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExtTm9ZVzVuWlNoVVpYTjBWWFJwYkhNdVptbHVaRkpsYm1SbGNtVmtSRTlOUTI5dGNHOXVaVzUwVjJsMGFGUmhaeWhtYjNKdExDQW5TVTVRVlZRbktTd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5abTl2SjMxOUtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvWm05eWJTNW5aWFJFVDAxT2IyUmxLQ2twTzF4dUlDQWdJQ0FnSUNBZ0lDQWdaWGh3WldOMEtHMXZaR1ZzTG5SbGMzUXBMblJ2UW1Vb0oyWnZieWNwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdaRzl1WlNncE8xeHVJQ0FnSUNBZ0lDQWdJSDBzSURBcE8xeHVYRzRnSUNBZ0lDQWdJSDBwTzF4dVhHNGdJQ0FnSUNCOUxDQXdLVHRjYmx4dUlDQWdJSDBwTzF4dVhHNGdJQ0FnYVhRb0ozTm9iM1ZzWkNCaGJHeHZkeUJoSUdSNWJtRnRhV05oYkd4NUlIVndaR0YwWldRZ2FXNXdkWFFnZEc4Z2RYQmtZWFJsSUhSb1pTQm1iM0p0TFcxdlpHVnNKeXdnWm5WdVkzUnBiMjRnS0dSdmJtVXBJSHRjYmx4dUlDQWdJQ0FnZG1GeUlHWnZjbU5sVlhCa1lYUmxJRDBnYm5Wc2JEdGNiaUFnSUNBZ0lIWmhjaUJ0YjJSbGJDQTlJRzUxYkd3N1hHNGdJQ0FnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdJQ0JqYUdGdVoyVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxtTm9ZVzVuWlZaaGJIVmxmUzgrWEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ0lDQjJZWElnYVc1d2RYUTdYRzRnSUNBZ0lDQjJZWElnVkdWemRFWnZjbTBnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNBZ0lHTnZiWEJ2Ym1WdWRGZHBiR3hOYjNWdWREb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lHWnZjbU5sVlhCa1lYUmxJRDBnZEdocGN5NW1iM0pqWlZWd1pHRjBaUzVpYVc1a0tIUm9hWE1wTzF4dUlDQWdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ0lDQnZibE4xWW0xcGREb2dablZ1WTNScGIyNGdLR1p2Y20xTmIyUmxiQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lHMXZaR1ZzSUQwZ1ptOXliVTF2WkdWc08xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnBibkIxZENBOUlEeFVaWE4wU1c1d2RYUWdibUZ0WlQwbmRHVnpkQ2NnZG1Gc2RXVTlleUIwYUdsekxuQnliM0J6TG5aaGJIVmxJSDBnTHo0N1hHNWNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdLRnh1SUNBZ0lDQWdJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1VTNWaWJXbDBQWHQwYUdsekxtOXVVM1ZpYldsMGZUNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2UybHVjSFYwZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdQQzlHYjNKdGMza3VSbTl5YlQ0cE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENnOFZHVnpkRVp2Y20wZ2RtRnNkV1U5SjJadmJ5Y3ZQaWs3WEc1Y2JpQWdJQ0FnSUM4dklGZGhhWFFnWW1WbWIzSmxJR05vWVc1bmFXNW5JSFJvWlNCcGJuQjFkRnh1SUNBZ0lDQWdjMlYwVkdsdFpXOTFkQ2htZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHWnZjbTB1YzJWMFVISnZjSE1vZTNaaGJIVmxPaUFuWW1GeUozMHBPMXh1WEc0Z0lDQWdJQ0FnSUdadmNtTmxWWEJrWVhSbEtHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNBdkx5QlhZV2wwSUdadmNpQnVaWGgwSUdWMlpXNTBJR3h2YjNBc0lHRnpJSFJvWVhRZ1pHOWxjeUIwYUdVZ1ptOXliVnh1SUNBZ0lDQWdJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExuTjFZbTFwZENobWIzSnRMbWRsZEVSUFRVNXZaR1VvS1NrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JsZUhCbFkzUW9iVzlrWld3dWRHVnpkQ2t1ZEc5Q1pTZ25ZbUZ5SnlrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JrYjI1bEtDazdYRzRnSUNBZ0lDQWdJQ0FnZlN3Z01DazdYRzVjYmlBZ0lDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lIMHNJREV3S1R0Y2JseHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ1pHVnpZM0pwWW1Vb0ozWmhiR2xrWVhScGIyNXpKeXdnWm5WdVkzUnBiMjRvS1NCN1hHNGdJQ0FnSUNCMllYSWdRMmhsWTJ0V1lXeHBaQ3dnYjI1VGRXSnRhWFFzSUU5MGFHVnlRMmhsWTJ0V1lXeHBaRHRjYmlBZ0lDQWdJSFpoY2lCcGMxWmhiR2xrTzF4dVhHNGdJQ0FnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdJQ0JqYUdGdVoyVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHNnZEdocGN5NW5aWFJXWVd4MVpTZ3BJSDBnYjI1RGFHRnVaMlU5ZXlCMGFHbHpMbU5vWVc1blpWWmhiSFZsSUgwZ0x6NWNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUhaaGNpQlVaWE4wUm05eWJTQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnWjJWMFJHVm1ZWFZzZEZCeWIzQnpPaUJtZFc1amRHbHZiaWdwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnYVc1d2RYUnpPaUJiWFN4Y2JpQWdJQ0FnSUNBZ0lDQjlPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0IyWVhJZ1luVnBiSFJKYm5CMWRITWdQU0JiWFR0Y2JpQWdJQ0FnSUNBZ0lDQjJZWElnYVc1d2RYUnpJRDBnZEdocGN5NXdjbTl3Y3k1cGJuQjFkSE03WEc0Z0lDQWdJQ0FnSUNBZ1ptOXlJQ2gyWVhJZ2FUMHdPeUJwSUR3Z2FXNXdkWFJ6TG14bGJtZDBhRHNnYVNzcktTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCMllYSWdhVzV3ZFhRZ1BTQnBibkIxZEhOYmFWMDdYRzRnSUNBZ0lDQWdJQ0FnSUNCaWRXbHNkRWx1Y0hWMGN5NXdkWE5vS0R4VVpYTjBTVzV3ZFhRZ2V5QXVMaTVwYm5CMWRDQjlJR3RsZVQxN0lHbHVjSFYwTG01aGJXVWdmU0F2UGlrN1hHNGdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0FnSUhaaGNpQmZkR2hwY3lBOUlIUm9hWE03WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4R2IzSnRjM2t1Um05eWJWeHVJQ0FnSUNBZ0lDQWdJQ0FnYjI1VGRXSnRhWFFnSUQwZ2V5Qm1kVzVqZEdsdmJpaGhjbWN4S1NCN0lHOXVVM1ZpYldsMEtHRnlaekVwT3lCOUlIMWNiaUFnSUNBZ0lDQWdJQ0FnSUc5dVZtRnNhV1FnSUNBOUlIc2dablZ1WTNScGIyNG9LU0I3SUdselZtRnNhV1FnUFNCMGNuVmxPeUI5SUgxY2JpQWdJQ0FnSUNBZ0lDQWdJRzl1U1c1MllXeHBaQ0E5SUhzZ1puVnVZM1JwYjI0b0tTQjdJR2x6Vm1Gc2FXUWdQU0JtWVd4elpUc2dmU0I5SUQ1Y2JpQWdJQ0FnSUNBZ0lDQWdJSHNnWW5WcGJIUkpibkIxZEhNZ2ZWeHVJQ0FnSUNBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK08xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlLVHRjYmx4dUlDQWdJQ0FnWW1WbWIzSmxSV0ZqYUNobWRXNWpkR2x2YmlncElIdGNiaUFnSUNBZ0lDQWdhWE5XWVd4cFpDQTlJSFJ5ZFdVN1hHNGdJQ0FnSUNBZ0lFTm9aV05yVm1Gc2FXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duUTJobFkydFdZV3hwWkNjcE8xeHVJQ0FnSUNBZ0lDQkdiM0p0YzNrdVlXUmtWbUZzYVdSaGRHbHZibEoxYkdVb0owTm9aV05yVm1Gc2FXUW5MQ0JEYUdWamExWmhiR2xrS1R0Y2JpQWdJQ0FnSUNBZ1QzUm9aWEpEYUdWamExWmhiR2xrSUQwZ2FtRnpiV2x1WlM1amNtVmhkR1ZUY0hrb0owTm9aV05yVm1Gc2FXUW5LVHRjYmlBZ0lDQWdJQ0FnUm05eWJYTjVMbUZrWkZaaGJHbGtZWFJwYjI1U2RXeGxLQ2RQZEdobGNrTm9aV05yVm1Gc2FXUW5MQ0JQZEdobGNrTm9aV05yVm1Gc2FXUXBPMXh1SUNBZ0lDQWdJQ0J2YmxOMVltMXBkQ0E5SUdwaGMyMXBibVV1WTNKbFlYUmxVM0I1S0NkdmJsTjFZbTFwZENjcE8xeHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJR2wwS0NkemFHOTFiR1FnY25WdUlIZG9aVzRnZEdobElHbHVjSFYwSUdOb1lXNW5aWE1uTENCbWRXNWpkR2x2YmlncElIdGNiaUFnSUNBZ0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0R4VVpYTjBSbTl5YlNCcGJuQjFkSE05ZXlCYmUyNWhiV1U2SUNkdmJtVW5MQ0IyWVd4cFpHRjBhVzl1Y3pvZ0owTm9aV05yVm1Gc2FXUW5MQ0IyWVd4MVpUb2dKMlp2YnlkOVhTQjlMejRwTzF4dUlDQWdJQ0FnSUNCMllYSWdhVzV3ZFhRZ1BTQlVaWE4wVlhScGJITXVabWx1WkZKbGJtUmxjbVZrUkU5TlEyOXRjRzl1Wlc1MFYybDBhRlJoWnlobWIzSnRMQ0FuYVc1d2RYUW5LVHRjYmlBZ0lDQWdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDNW5aWFJFVDAxT2IyUmxLQ2tzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSjJKaGNpZDlmU2s3WEc0Z0lDQWdJQ0FnSUdWNGNHVmpkQ2hEYUdWamExWmhiR2xrS1M1MGIwaGhkbVZDWldWdVEyRnNiR1ZrVjJsMGFDZ25ZbUZ5SnlrN1hHNGdJQ0FnSUNBZ0lHVjRjR1ZqZENoUGRHaGxja05vWldOclZtRnNhV1FwTG01dmRDNTBiMGhoZG1WQ1pXVnVRMkZzYkdWa0tDazdYRzRnSUNBZ0lDQjlLVHRjYmx4dUlDQWdJQ0FnYVhRb0ozTm9iM1ZzWkNCaGJHeHZkeUIwYUdVZ2RtRnNhV1JoZEdsdmJpQjBieUJpWlNCamFHRnVaMlZrSnl3Z1puVnVZM1JwYjI0b0tTQjdYRzRnSUNBZ0lDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENnOFZHVnpkRVp2Y20wZ2FXNXdkWFJ6UFhzZ1czdHVZVzFsT2lBbmIyNWxKeXdnZG1Gc2FXUmhkR2x2Ym5NNklDZERhR1ZqYTFaaGJHbGtKeXdnZG1Gc2RXVTZJQ2RtYjI4bmZWMGdmUzgrS1R0Y2JpQWdJQ0FnSUNBZ1ptOXliUzV6WlhSUWNtOXdjeWg3YVc1d2RYUnpPaUJiZTI1aGJXVTZJQ2R2Ym1VbkxDQjJZV3hwWkdGMGFXOXVjem9nSjA5MGFHVnlRMmhsWTJ0V1lXeHBaQ2NzSUhaaGJIVmxPaUFuWm05dkozMWRJSDBwTzF4dUlDQWdJQ0FnSUNCMllYSWdhVzV3ZFhRZ1BTQlVaWE4wVlhScGJITXVabWx1WkZKbGJtUmxjbVZrUkU5TlEyOXRjRzl1Wlc1MFYybDBhRlJoWnlobWIzSnRMQ0FuYVc1d2RYUW5LVHRjYmlBZ0lDQWdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDNW5aWFJFVDAxT2IyUmxLQ2tzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSjJKaGNpZDlmU2s3WEc0Z0lDQWdJQ0FnSUdWNGNHVmpkQ2hQZEdobGNrTm9aV05yVm1Gc2FXUXBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUlhhWFJvS0NkaVlYSW5LVHRjYmlBZ0lDQWdJSDBwTzF4dVhHNGdJQ0FnSUNCcGRDZ25jMmh2ZFd4a0lHbHVkbUZzYVdSaGRHVWdZU0JtYjNKdElHbG1JR1I1Ym1GdGFXTmhiR3g1SUdsdWMyVnlkR1ZrSUdsdWNIVjBJR2x6SUdsdWRtRnNhV1FuTENCbWRXNWpkR2x2Ymloa2IyNWxLU0I3WEc0Z0lDQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZzhWR1Z6ZEVadmNtMGdhVzV3ZFhSelBYc2dXM3R1WVcxbE9pQW5iMjVsSnl3Z2RtRnNhV1JoZEdsdmJuTTZJQ2RwYzBWdFlXbHNKeXdnZG1Gc2RXVTZJQ2RtYjI5QVltRnlMbU52YlNkOVhTQjlMejRwTzF4dUlDQWdJQ0FnSUNCbGVIQmxZM1FvYVhOV1lXeHBaQ2t1ZEc5RmNYVmhiQ2gwY25WbEtUdGNiaUFnSUNBZ0lDQWdabTl5YlM1elpYUlFjbTl3Y3loN2FXNXdkWFJ6T2lCYlhHNGdJQ0FnSUNBZ0lDQWdlMjVoYldVNklDZHZibVVuTENCMllXeHBaR0YwYVc5dWN6b2dKMmx6UlcxaGFXd25MQ0IyWVd4MVpUb2dKMlp2YjBCaVlYSXVZMjl0SjMwc1hHNGdJQ0FnSUNBZ0lDQWdlMjVoYldVNklDZDBkMjhuTENCMllXeHBaR0YwYVc5dWN6b2dKMmx6UlcxaGFXd25MQ0IyWVd4MVpUb2dKMlp2YjBCaVlYSW5mU3hjYmlBZ0lDQWdJQ0FnWFgwc0lHWjFibU4wYVc5dUtDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0b0tTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCbGVIQmxZM1FvYVhOV1lXeHBaQ2t1ZEc5RmNYVmhiQ2htWVd4elpTazdYRzRnSUNBZ0lDQWdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ2ZTd2dNQ2s3WEc0Z0lDQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJR2wwS0NkemFHOTFiR1FnZG1Gc2FXUmhkR1VnWVNCbWIzSnRJSGRvWlc0Z2NtVnRiM1pwYm1jZ1lXNGdhVzUyWVd4cFpDQnBibkIxZENjc0lHWjFibU4wYVc5dUtHUnZibVVwSUh0Y2JpQWdJQ0FnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRHhVWlhOMFJtOXliU0JwYm5CMWRITTlleUJiWEc0Z0lDQWdJQ0FnSUNBZ2UyNWhiV1U2SUNkdmJtVW5MQ0IyWVd4cFpHRjBhVzl1Y3pvZ0oybHpSVzFoYVd3bkxDQjJZV3gxWlRvZ0oyWnZiMEJpWVhJdVkyOXRKMzBzWEc0Z0lDQWdJQ0FnSUNBZ2UyNWhiV1U2SUNkMGQyOG5MQ0IyWVd4cFpHRjBhVzl1Y3pvZ0oybHpSVzFoYVd3bkxDQjJZV3gxWlRvZ0oyWnZiMEJpWVhJbmZTeGNiaUFnSUNBZ0lDQWdYU0I5SUM4K0tUdGNiaUFnSUNBZ0lDQWdaWGh3WldOMEtHbHpWbUZzYVdRcExuUnZSWEYxWVd3b1ptRnNjMlVwTzF4dUlDQWdJQ0FnSUNCbWIzSnRMbk5sZEZCeWIzQnpLSHRwYm5CMWRITTZJRnQ3Ym1GdFpUb2dKMjl1WlNjc0lIWmhiR2xrWVhScGIyNXpPaUFuYVhORmJXRnBiQ2NzSUhaaGJIVmxPaUFuWm05dlFHSmhjaTVqYjIwbmZWMTlMQ0JtZFc1amRHbHZiaWdwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnpaWFJVYVcxbGIzVjBLR1oxYm1OMGFXOXVLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdaWGh3WldOMEtHbHpWbUZzYVdRcExuUnZSWEYxWVd3b2RISjFaU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmtiMjVsS0NrN1hHNGdJQ0FnSUNBZ0lDQWdmU3dnTUNrN1hHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUdsMEtDZHlkVzV6SUcxMWJIUnBjR3hsSUhaaGJHbGtZWFJwYjI1ekp5d2dablZ1WTNScGIyNG9LU0I3WEc0Z0lDQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZzhWR1Z6ZEVadmNtMGdhVzV3ZFhSelBYc2dXM3R1WVcxbE9pQW5iMjVsSnl3Z2RtRnNhV1JoZEdsdmJuTTZJQ2REYUdWamExWmhiR2xrTEU5MGFHVnlRMmhsWTJ0V1lXeHBaQ2NzSUhaaGJIVmxPaUFuWm05dkozMWRJSDB2UGlrN1hHNGdJQ0FnSUNBZ0lIWmhjaUJwYm5CMWRDQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRVQwMURiMjF3YjI1bGJuUlhhWFJvVkdGbktHWnZjbTBzSUNkcGJuQjFkQ2NwTzF4dUlDQWdJQ0FnSUNCVVpYTjBWWFJwYkhNdVUybHRkV3hoZEdVdVkyaGhibWRsS0dsdWNIVjBMbWRsZEVSUFRVNXZaR1VvS1N3Z2UzUmhjbWRsZERvZ2UzWmhiSFZsT2lBblltRnlKMzE5S1R0Y2JpQWdJQ0FnSUNBZ1pYaHdaV04wS0VOb1pXTnJWbUZzYVdRcExuUnZTR0YyWlVKbFpXNURZV3hzWldSWGFYUm9LQ2RpWVhJbktUdGNiaUFnSUNBZ0lDQWdaWGh3WldOMEtFOTBhR1Z5UTJobFkydFdZV3hwWkNrdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkZkcGRHZ29KMkpoY2ljcE8xeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQnBkQ2duYzJodmRXeGtJRzV2ZENCMGNtbG5aMlZ5SUc5dVEyaGhibWRsSUhkb1pXNGdabTl5YlNCcGN5QnRiM1Z1ZEdWa0p5d2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnZG1GeUlHaGhjME5vWVc1blpXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duYjI1RGFHRnVaMlVuS1R0Y2JpQWdJQ0FnSUhaaGNpQlVaWE4wUm05eWJTQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnYjI1RGFHRnVaMlU2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0JvWVhORGFHRnVaMlZrS0NrN1hHNGdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlBOFJtOXliWE41TGtadmNtMGdiMjVEYUdGdVoyVTllM1JvYVhNdWIyNURhR0Z1WjJWOVBqd3ZSbTl5YlhONUxrWnZjbTArTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2c4VkdWemRFWnZjbTB2UGlrN1hHNGdJQ0FnSUNCbGVIQmxZM1FvYUdGelEyaGhibWRsWkNrdWJtOTBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUW9LVHRjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJR2wwS0NkemFHOTFiR1FnZEhKcFoyZGxjaUJ2YmtOb1lXNW5aU0IzYUdWdUlHWnZjbTBnWld4bGJXVnVkQ0JwY3lCamFHRnVaMlZrSnl3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdkbUZ5SUdoaGMwTm9ZVzVuWldRZ1BTQnFZWE50YVc1bExtTnlaV0YwWlZOd2VTZ25iMjVEYUdGdVoyVW5LVHRjYmlBZ0lDQWdJSFpoY2lCTmVVbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnSUNCdmJrTm9ZVzVuWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxtOXVRMmhoYm1kbGZTOCtYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZG1GeUlGUmxjM1JHYjNKdElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdJQ0J2YmtOb1lXNW5aVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2hoYzBOb1lXNW5aV1FvS1R0Y2JpQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUNoY2JpQWdJQ0FnSUNBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCdmJrTm9ZVzVuWlQxN2RHaHBjeTV2YmtOb1lXNW5aWDArWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJRHhOZVVsdWNIVjBJRzVoYldVOVhDSm1iMjljSWk4K1hHNGdJQ0FnSUNBZ0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRHhVWlhOMFJtOXliUzgrS1R0Y2JpQWdJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1amFHRnVaMlVvVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFUlBUVU52YlhCdmJtVnVkRmRwZEdoVVlXY29abTl5YlN3Z0owbE9VRlZVSnlrc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oySmhjaWQ5ZlNrN1hHNGdJQ0FnSUNCbGVIQmxZM1FvYUdGelEyaGhibWRsWkNrdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkNncE8xeHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2FYUW9KM05vYjNWc1pDQjBjbWxuWjJWeUlHOXVRMmhoYm1kbElIZG9aVzRnYm1WM0lHbHVjSFYwSUdseklHRmtaR1ZrSUhSdklHWnZjbTBuTENCbWRXNWpkR2x2YmlBb1pHOXVaU2tnZTF4dUlDQWdJQ0FnZG1GeUlHaGhjME5vWVc1blpXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duYjI1RGFHRnVaMlVuS1R0Y2JpQWdJQ0FnSUhaaGNpQnBibkIxZEhNZ1BTQmJYVHRjYmlBZ0lDQWdJSFpoY2lCbWIzSmpaVlZ3WkdGMFpTQTlJRzUxYkd3N1hHNGdJQ0FnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdJQ0JqYUdGdVoyVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxtTm9ZVzVuWlZaaGJIVmxmUzgrWEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2RtRnlJRlJsYzNSR2IzSnRJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCamIyMXdiMjVsYm5SWGFXeHNUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCbWIzSmpaVlZ3WkdGMFpTQTlJSFJvYVhNdVptOXlZMlZWY0dSaGRHVXVZbWx1WkNoMGFHbHpLVHRjYmlBZ0lDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUNBZ2IyNURhR0Z1WjJVNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCb1lYTkRhR0Z1WjJWa0tDazdYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQW9JRnh1SUNBZ0lDQWdJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1UTJoaGJtZGxQWHQwYUdsekxtOXVRMmhoYm1kbGZUNGdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lIdHBibkIxZEhOOVhHNGdJQ0FnSUNBZ0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBpazdYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtDQmNiaUFnSUNBZ0lDQWdQRlJsYzNSR2IzSnRMejRnWEc0Z0lDQWdJQ0FwTzF4dVhHNGdJQ0FnSUNBdkx5QlhZV2wwSUdKbFptOXlaU0JoWkdScGJtY2dkR2hsSUdsdWNIVjBYRzRnSUNBZ0lDQnBibkIxZEhNdWNIVnphQ2hVWlhOMFNXNXdkWFFvZTF4dUlDQWdJQ0FnSUNCdVlXMWxPaUFuZEdWemRDZGNiaUFnSUNBZ0lIMHBLVHRjYmx4dUlDQWdJQ0FnWm05eVkyVlZjR1JoZEdVb1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdJQ0FnSUM4dklGZGhhWFFnWm05eUlHNWxlSFFnWlhabGJuUWdiRzl2Y0N3Z1lYTWdkR2hoZENCa2IyVnpJSFJvWlNCbWIzSnRYRzRnSUNBZ0lDQWdJSE5sZEZScGJXVnZkWFFvWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR1Y0Y0dWamRDaG9ZWE5EYUdGdVoyVmtLUzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ1pHOXVaU2dwTzF4dUlDQWdJQ0FnSUNCOUxDQXdLVHRjYmx4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNCOUtUdGNibHh1SUNCOUtUdGNibHh1SUNCa1pYTmpjbWxpWlNnblZYQmtZWFJsSUdFZ1ptOXliU2NzSUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lHbDBLQ2R6YUc5MWJHUWdZV3hzYjNjZ1pXeGxiV1Z1ZEhNZ2RHOGdZMmhsWTJzZ2FXWWdkR2hsSUdadmNtMGdhWE1nWkdsellXSnNaV1FuTENCbWRXNWpkR2x2YmlBb1pHOXVaU2tnZTF4dVhHNGdJQ0FnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlMejVjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNCMllYSWdWR1Z6ZEVadmNtMGdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0FnSUdkbGRFbHVhWFJwWVd4VGRHRjBaVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQjdaR2x6WVdKc1pXUTZJSFJ5ZFdWOU8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0JsYm1GaWJHVkdiM0p0T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXpaWFJUZEdGMFpTaDdYRzRnSUNBZ0lDQWdJQ0FnSUNCa2FYTmhZbXhsWkRvZ1ptRnNjMlZjYmlBZ0lDQWdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lDQWdmU3hjYmlBZ0lDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlDZ2dYRzRnSUNBZ0lDQWdJQ0FnSUNBOFJtOXliWE41TGtadmNtMGdiMjVEYUdGdVoyVTllM1JvYVhNdWIyNURhR0Z1WjJWOUlHUnBjMkZpYkdWa1BYdDBhR2x6TG5OMFlYUmxMbVJwYzJGaWJHVmtmVDRnWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMWNJbVp2YjF3aUx6NWNiaUFnSUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtLVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9JRnh1SUNBZ0lDQWdJQ0E4VkdWemRFWnZjbTB2UGlCY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNBZ0lIWmhjaUJwYm5CMWRDQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRGIyMXdiMjVsYm5SWGFYUm9WSGx3WlNobWIzSnRMQ0JVWlhOMFNXNXdkWFFwTzF4dUlDQWdJQ0FnWlhod1pXTjBLR2x1Y0hWMExtbHpSbTl5YlVScGMyRmliR1ZrS0NrcExuUnZRbVVvZEhKMVpTazdYRzRnSUNBZ0lDQm1iM0p0TG1WdVlXSnNaVVp2Y20wb0tUdGNiaUFnSUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCbGVIQmxZM1FvYVc1d2RYUXVhWE5HYjNKdFJHbHpZV0pzWldRb0tTa3VkRzlDWlNobVlXeHpaU2s3WEc0Z0lDQWdJQ0FnSUdSdmJtVW9LVHRjYmlBZ0lDQWdJSDBzSURBcE8xeHVYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQnBkQ2duYzJodmRXeGtJR0psSUhCdmMzTnBZbXhsSUhSdklIQmhjM01nWlhKeWIzSWdjM1JoZEdVZ2IyWWdaV3hsYldWdWRITWdZbmtnWTJoaGJtZHBibWNnWVc0Z1pYSnliM0p6SUdGMGRISnBZblYwWlNjc0lHWjFibU4wYVc5dUlDaGtiMjVsS1NCN1hHNWNiaUFnSUNBZ0lIWmhjaUJVWlhOMFNXNXdkWFFnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQThhVzV3ZFhRZ2RtRnNkV1U5ZTNSb2FYTXVaMlYwVm1Gc2RXVW9LWDB2UGp0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQjJZWElnVkdWemRFWnZjbTBnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNBZ0lHZGxkRWx1YVhScFlXeFRkR0YwWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUI3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjJZV3hwWkdGMGFXOXVSWEp5YjNKek9pQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHWnZiem9nSjJKaGNpZGNiaUFnSUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ0lDQjlPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCdmJrTm9ZVzVuWlRvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsY3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2xtSUNoMllXeDFaWE11Wm05dktTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCMGFHbHpMbk5sZEZOMFlYUmxLSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdkbUZzYVdSaGRHbHZia1Z5Y205eWN6b2dlMzFjYmlBZ0lDQWdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnZG1Gc2FXUmhkR2x2YmtWeWNtOXljem9nZTJadmJ6b2dKMkpoY2lkOVhHNGdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQW9JRnh1SUNBZ0lDQWdJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1UTJoaGJtZGxQWHQwYUdsekxtOXVRMmhoYm1kbGZTQjJZV3hwWkdGMGFXOXVSWEp5YjNKelBYdDBhR2x6TG5OMFlYUmxMblpoYkdsa1lYUnBiMjVGY25KdmNuTjlQaUJjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdQRlJsYzNSSmJuQjFkQ0J1WVcxbFBWd2labTl2WENJdlBseHVJQ0FnSUNBZ0lDQWdJQ0FnUEM5R2IzSnRjM2t1Um05eWJUNHBPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZ2dYRzRnSUNBZ0lDQWdJRHhVWlhOMFJtOXliUzgrSUZ4dUlDQWdJQ0FnS1R0Y2JseHVJQ0FnSUNBZ0x5OGdWMkZwZENCbWIzSWdkWEJrWVhSbFhHNGdJQ0FnSUNCelpYUlVhVzFsYjNWMEtHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnZG1GeUlHbHVjSFYwSUQwZ1ZHVnpkRlYwYVd4ekxtWnBibVJTWlc1a1pYSmxaRU52YlhCdmJtVnVkRmRwZEdoVWVYQmxLR1p2Y20wc0lGUmxjM1JKYm5CMWRDazdYRzRnSUNBZ0lDQWdJR1Y0Y0dWamRDaHBibkIxZEM1blpYUkZjbkp2Y2sxbGMzTmhaMlVvS1NrdWRHOUNaU2duWW1GeUp5azdYRzRnSUNBZ0lDQWdJR2x1Y0hWMExuTmxkRlpoYkhWbEtDZG5iM1JXWVd4MVpTY3BPMXh1WEc0Z0lDQWdJQ0FnSUM4dklGZGhhWFFnWm05eUlIVndaR0YwWlZ4dUlDQWdJQ0FnSUNCelpYUlVhVzFsYjNWMEtHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCbGVIQmxZM1FvYVc1d2RYUXVaMlYwUlhKeWIzSk5aWE56WVdkbEtDa3BMblJ2UW1Vb2JuVnNiQ2s3WEc0Z0lDQWdJQ0FnSUNBZ1pHOXVaU2dwTzF4dUlDQWdJQ0FnSUNCOUxDQXdLVHRjYmlBZ0lDQWdJSDBzSURBcE8xeHVYRzRnSUNBZ2ZTazdYRzVjYmx4dUlDQWdJR2wwS0NkemFHOTFiR1FnZEhKcFoyZGxjaUJoYmlCdmJsWmhiR2xrVTNWaWJXbDBJSGRvWlc0Z2MzVmliV2wwZEdsdVp5QmhJSFpoYkdsa0lHWnZjbTBuTENCbWRXNWpkR2x2YmlBb0tTQjdYRzVjYmlBZ0lDQWdJQ0FnZG1GeUlHbHpRMkZzYkdWa0lEMGdabUZzYzJVN1hHNGdJQ0FnSUNBZ0lIWmhjaUJVWlhOMFNXNXdkWFFnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNBZ0lDQWdiV2w0YVc1ek9pQmJSbTl5YlhONUxrMXBlR2x1WFN4Y2JpQWdJQ0FnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlBOGFXNXdkWFFnZG1Gc2RXVTllM1JvYVhNdVoyVjBWbUZzZFdVb0tYMHZQanRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdJQ0IyWVhJZ1ZHVnpkRVp2Y20wZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQWdJQ0FnYjI1V1lXeHBaRk4xWW0xcGREb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdhWE5EWVd4c1pXUWdQU0IwY25WbE8xeHVJQ0FnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnS0NCY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnUEVadmNtMXplUzVHYjNKdElHOXVWbUZzYVdSVGRXSnRhWFE5ZTNSb2FYTXViMjVXWVd4cFpGTjFZbTFwZEgwK0lGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJHbGtZWFJwYjI1elBWd2lhWE5GYldGcGJGd2lJSFpoYkhWbFBWd2labTl2UUdKaGNpNWpiMjFjSWk4K1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb0lGeHVJQ0FnSUNBZ0lDQWdJRHhVWlhOMFJtOXliUzgrSUZ4dUlDQWdJQ0FnSUNBcE8xeHVYRzRnSUNBZ0lDQWdJSFpoY2lCVVpYTjBSbTl5YlNBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JEYjIxd2IyNWxiblJYYVhSb1ZIbHdaU2htYjNKdExDQlVaWE4wUm05eWJTazdYRzRnSUNBZ0lDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzV6ZFdKdGFYUW9WR1Z6ZEVadmNtMHVaMlYwUkU5TlRtOWtaU2dwS1RzZ0lGeHVJQ0FnSUNBZ0lDQmxlSEJsWTNRb2FYTkRZV3hzWldRcExuUnZRbVVvZEhKMVpTazdYRzVjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJR2wwS0NkemFHOTFiR1FnZEhKcFoyZGxjaUJoYmlCdmJrbHVkbUZzYVdSVGRXSnRhWFFnZDJobGJpQnpkV0p0YVhSMGFXNW5JR0Z1SUdsdWRtRnNhV1FnWm05eWJTY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0FnSUNBZ0lDQjJZWElnYVhORFlXeHNaV1FnUFNCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJRHhwYm5CMWRDQjJZV3gxWlQxN2RHaHBjeTVuWlhSV1lXeDFaU2dwZlM4K08xeHVJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNBZ0lIWmhjaUJVWlhOMFJtOXliU0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUNBZ0lDQnZia2x1ZG1Gc2FXUlRkV0p0YVhRNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHbHpRMkZzYkdWa0lEMGdkSEoxWlR0Y2JpQWdJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJQ2dnWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCdmJrbHVkbUZzYVdSVGRXSnRhWFE5ZTNSb2FYTXViMjVKYm5aaGJHbGtVM1ZpYldsMGZUNGdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQRlJsYzNSSmJuQjFkQ0J1WVcxbFBWd2labTl2WENJZ2RtRnNhV1JoZEdsdmJuTTlYQ0pwYzBWdFlXbHNYQ0lnZG1Gc2RXVTlYQ0ptYjI5QVltRnlYQ0l2UGx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBpazdYRzRnSUNBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0NCY2JpQWdJQ0FnSUNBZ0lDQThWR1Z6ZEVadmNtMHZQaUJjYmlBZ0lDQWdJQ0FnS1R0Y2JseHVJQ0FnSUNBZ0lDQjJZWElnVkdWemRFWnZjbTBnUFNCVVpYTjBWWFJwYkhNdVptbHVaRkpsYm1SbGNtVmtRMjl0Y0c5dVpXNTBWMmwwYUZSNWNHVW9abTl5YlN3Z1ZHVnpkRVp2Y20wcE8xeHVJQ0FnSUNBZ0lDQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVjM1ZpYldsMEtGUmxjM1JHYjNKdExtZGxkRVJQVFU1dlpHVW9LU2s3SUNCY2JpQWdJQ0FnSUNBZ1pYaHdaV04wS0dselEyRnNiR1ZrS1M1MGIwSmxLSFJ5ZFdVcE8xeHVYRzRnSUNBZ2ZTazdYRzVjYmlBZ2ZTazdYRzVjYmlBZ1pHVnpZM0pwWW1Vb1hDSjJZV3gxWlNBOVBUMGdabUZzYzJWY0lpd2dablZ1WTNScGIyNG9LU0I3WEc0Z0lDQWdkbUZ5SUc5dVUzVmliV2wwTzF4dUlDQWdJSFpoY2lCVVpYTjBTVzV3ZFhRZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnWjJWMFJHVm1ZWFZzZEZCeWIzQnpPaUJtZFc1amRHbHZiaWdwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUh0Y2JpQWdJQ0FnSUNBZ0lDQjBlWEJsT2lCY0luUmxlSFJjSWl4Y2JpQWdJQ0FnSUNBZ2ZUdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQmphR0Z1WjJWV1lXeDFaVG9nWm5WdVkzUnBiMjRvS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvWlM1MFlYSm5aWFJiZEdocGN5NXdjbTl3Y3k1MGVYQmxJRDA5UFNCY0ltTm9aV05yWW05NFhDSWdQeUJjSW1Ob1pXTnJaV1JjSWlBNklGd2lkbUZzZFdWY0lsMHBPMXh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFI1Y0dVOWV5QjBhR2x6TG5CeWIzQnpMblI1Y0dVZ2ZTQjJZV3gxWlQxN0lIUm9hWE11WjJWMFZtRnNkV1VvS1NCOUlHOXVRMmhoYm1kbFBYc2dkR2hwY3k1amFHRnVaMlZXWVd4MVpTQjlMejVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJSFpoY2lCVVpYTjBSbTl5YlNBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdLRnh1SUNBZ0lDQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQnZibE4xWW0xcGREMTdJR1oxYm1OMGFXOXVLR0Z5WnpFcElIc2diMjVUZFdKdGFYUW9ZWEpuTVNrN0lIMGdmVDVjYmlBZ0lDQWdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJIVmxQWHNnZEdocGN5NXdjbTl3Y3k1MllXeDFaU0I5SUhSNWNHVTlYQ0pqYUdWamEySnZlRndpSUM4K1hHNGdJQ0FnSUNBZ0lDQWdJQ0E4WW5WMGRHOXVJSFI1Y0dVOVhDSnpkV0p0YVhSY0lqNVRZWFpsUEM5aWRYUjBiMjQrWEc0Z0lDQWdJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQWdJQ0FnS1R0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5S1R0Y2JseHVJQ0FnSUdKbFptOXlaVVZoWTJnb1puVnVZM1JwYjI0b0tTQjdYRzRnSUNBZ0lDQnZibE4xWW0xcGRDQTlJR3BoYzIxcGJtVXVZM0psWVhSbFUzQjVLRndpYjI1VGRXSnRhWFJjSWlrN1hHNGdJQ0FnZlNrN1hHNWNiaUFnSUNCcGRDaGNJbk5vYjNWc1pDQmpZV3hzSUc5dVUzVmliV2wwSUdOdmNuSmxZM1JzZVZ3aUxDQm1kVzVqZEdsdmJpZ3BJSHRjYmlBZ0lDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENnOFZHVnpkRVp2Y20wZ2RtRnNkV1U5ZXlCbVlXeHpaU0I5THo0cE8xeHVJQ0FnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExuTjFZbTFwZENobWIzSnRMbWRsZEVSUFRVNXZaR1VvS1NrN1hHNGdJQ0FnSUNCbGVIQmxZM1FvYjI1VGRXSnRhWFFwTG5SdlNHRjJaVUpsWlc1RFlXeHNaV1JYYVhSb0tIdG1iMjg2SUdaaGJITmxmU2s3WEc0Z0lDQWdmU2s3WEc1Y2JpQWdJQ0JwZENoY0luTm9iM1ZzWkNCaGJHeHZkeUJrZVc1aGJXbGpJR05vWVc1blpYTWdkRzhnWm1Gc2MyVmNJaXdnWm5WdVkzUnBiMjRvS1NCN1hHNGdJQ0FnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9QRlJsYzNSR2IzSnRJSFpoYkhWbFBYc2dkSEoxWlNCOUx6NHBPMXh1SUNBZ0lDQWdabTl5YlM1elpYUlFjbTl3Y3loN2RtRnNkV1U2SUdaaGJITmxmU2s3WEc0Z0lDQWdJQ0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1YzNWaWJXbDBLR1p2Y20wdVoyVjBSRTlOVG05a1pTZ3BLVHRjYmlBZ0lDQWdJR1Y0Y0dWamRDaHZibE4xWW0xcGRDa3VkRzlJWVhabFFtVmxia05oYkd4bFpGZHBkR2dvZTJadmJ6b2dabUZzYzJWOUtUdGNiaUFnSUNCOUtUdGNiaUFnZlNrN1hHNTlLVHRjYmlKZGZRPT0iLCJ2YXIgRm9ybXN5ID0gcmVxdWlyZSgnLi8uLi9zcmMvbWFpbi5qcycpO1xuXG5kZXNjcmliZSgnQWpheCcsIGZ1bmN0aW9uKCkge1xuXG4gIGJlZm9yZUVhY2goZnVuY3Rpb24gKCkge1xuICAgIGphc21pbmUuQWpheC5pbnN0YWxsKCk7XG4gIH0pO1xuXG4gIGFmdGVyRWFjaChmdW5jdGlvbiAoKSB7XG4gICAgamFzbWluZS5BamF4LnVuaW5zdGFsbCgpO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHBvc3QgdG8gYSBnaXZlbiB1cmwgaWYgcGFzc2VkJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIn1cbiAgICAgIClcbiAgICApO1xuICAgIFxuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuICAgIGV4cGVjdChqYXNtaW5lLkFqYXgucmVxdWVzdHMubW9zdFJlY2VudCgpLnVybCkudG9CZSgnL3VzZXJzJyk7XG4gICAgZXhwZWN0KGphc21pbmUuQWpheC5yZXF1ZXN0cy5tb3N0UmVjZW50KCkubWV0aG9kKS50b0JlKCdQT1NUJyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBwdXQgdG8gYSBnaXZlbiB1cmwgaWYgcGFzc2VkIGEgbWV0aG9kIGF0dHJpYnV0ZScsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCIsIG1ldGhvZDogXCJQVVRcIn1cbiAgICAgIClcbiAgICApO1xuICAgIFxuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuICAgIGV4cGVjdChqYXNtaW5lLkFqYXgucmVxdWVzdHMubW9zdFJlY2VudCgpLnVybCkudG9CZSgnL3VzZXJzJyk7XG4gICAgZXhwZWN0KGphc21pbmUuQWpheC5yZXF1ZXN0cy5tb3N0UmVjZW50KCkubWV0aG9kKS50b0JlKCdQVVQnKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHBhc3MgeC13d3ctZm9ybS11cmxlbmNvZGVkIGFzIGNvbnRlbnRUeXBlIHdoZW4gdXJsZW5jb2RlZCBpcyBzZXQgYXMgY29udGVudFR5cGUnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wiLCBjb250ZW50VHlwZTogXCJ1cmxlbmNvZGVkXCJ9XG4gICAgICApXG4gICAgKTtcbiAgICBcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICBleHBlY3QoamFzbWluZS5BamF4LnJlcXVlc3RzLm1vc3RSZWNlbnQoKS5jb250ZW50VHlwZSgpKS50b0JlKCdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHJ1biBhbiBvblN1Y2Nlc3MgaGFuZGxlciwgaWYgcGFzc2VkIGFuZCBhamF4IGlzIHN1Y2Nlc3NmdWxsLiBGaXJzdCBhcmd1bWVudCBpcyBkYXRhIGZyb20gc2VydmVyJywgZnVuY3Rpb24gKGRvbmUpIHtcbiBcbiAgICB2YXIgb25TdWNjZXNzID0gamFzbWluZS5jcmVhdGVTcHkoXCJzdWNjZXNzXCIpO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCIsIG9uU3VjY2Vzczogb25TdWNjZXNzfVxuICAgICAgKVxuICAgICk7XG4gICAgXG4gICAgamFzbWluZS5BamF4LnN0dWJSZXF1ZXN0KCcvdXNlcnMnKS5hbmRSZXR1cm4oe1xuICAgICAgc3RhdHVzOiAyMDAsXG4gICAgICBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgcmVzcG9uc2VUZXh0OiAne30nXG4gICAgfSk7XG5cbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcblxuICAgIC8vIFNpbmNlIGFqYXggaXMgcmV0dXJuZWQgYXMgYSBwcm9taXNlIChhc3luYyksIG1vdmUgYXNzZXJ0aW9uXG4gICAgLy8gdG8gZW5kIG9mIGV2ZW50IGxvb3BcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGV4cGVjdChvblN1Y2Nlc3MpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHt9KTtcbiAgICAgIGRvbmUoKTtcbiAgICB9LCAwKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIG5vdCBkbyBhamF4IHJlcXVlc3QgaWYgb25TdWJtaXQgaGFuZGxlciBpcyBwYXNzZWQsIGJ1dCBwYXNzIHRoZSBtb2RlbCBhcyBmaXJzdCBhcmd1bWVudCB0byBvblN1Ym1pdCBoYW5kbGVyJywgZnVuY3Rpb24gKCkge1xuICAgIFxuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCl9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblN1Ym1pdDogb25TdWJtaXR9LCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJiYXJcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuXG4gICAgZXhwZWN0KGphc21pbmUuQWpheC5yZXF1ZXN0cy5jb3VudCgpKS50b0JlKDApO1xuXG4gICAgZnVuY3Rpb24gb25TdWJtaXQgKGRhdGEpIHtcbiAgICAgIGV4cGVjdChkYXRhKS50b0VxdWFsKHtcbiAgICAgICAgZm9vOiAnYmFyJ1xuICAgICAgfSk7XG4gICAgfVxuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdHJpZ2dlciBhbiBvblN1Ym1pdHRlZCBoYW5kbGVyLCBpZiBwYXNzZWQgYW5kIHRoZSBzdWJtaXQgaGFzIHJlc3BvbmRlZCB3aXRoIFNVQ0NFU1MnLCBmdW5jdGlvbiAoZG9uZSkge1xuICAgIFxuICAgIHZhciBvblN1Ym1pdHRlZCA9IGphc21pbmUuY3JlYXRlU3B5KFwic3VibWl0dGVkXCIpO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCIsIG9uU3VibWl0dGVkOiBvblN1Ym1pdHRlZH1cbiAgICAgIClcbiAgICApO1xuICAgIFxuICAgIGphc21pbmUuQWpheC5zdHViUmVxdWVzdCgnL3VzZXJzJykuYW5kUmV0dXJuKHtcbiAgICAgIHN0YXR1czogMjAwLFxuICAgICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIHJlc3BvbnNlVGV4dDogJ3t9J1xuICAgIH0pO1xuXG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG5cbiAgICAvLyBTaW5jZSBhamF4IGlzIHJldHVybmVkIGFzIGEgcHJvbWlzZSAoYXN5bmMpLCBtb3ZlIGFzc2VydGlvblxuICAgIC8vIHRvIGVuZCBvZiBldmVudCBsb29wXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBleHBlY3Qob25TdWJtaXR0ZWQpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9LCAwKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHRyaWdnZXIgYW4gb25TdWJtaXR0ZWQgaGFuZGxlciwgaWYgcGFzc2VkIGFuZCB0aGUgc3VibWl0IGhhcyByZXNwb25kZWQgd2l0aCBFUlJPUicsIGZ1bmN0aW9uIChkb25lKSB7XG4gICAgXG4gICAgdmFyIG9uU3VibWl0dGVkID0gamFzbWluZS5jcmVhdGVTcHkoXCJzdWJtaXR0ZWRcIik7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIiwgb25TdWJtaXR0ZWQ6IG9uU3VibWl0dGVkfVxuICAgICAgKVxuICAgICk7XG4gICAgXG4gICAgamFzbWluZS5BamF4LnN0dWJSZXF1ZXN0KCcvdXNlcnMnKS5hbmRSZXR1cm4oe1xuICAgICAgc3RhdHVzOiA1MDAsXG4gICAgICBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgcmVzcG9uc2VUZXh0OiAne30nXG4gICAgfSk7XG5cbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcblxuICAgIC8vIFNpbmNlIGFqYXggaXMgcmV0dXJuZWQgYXMgYSBwcm9taXNlIChhc3luYyksIG1vdmUgYXNzZXJ0aW9uXG4gICAgLy8gdG8gZW5kIG9mIGV2ZW50IGxvb3BcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGV4cGVjdChvblN1Ym1pdHRlZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgICAgZG9uZSgpO1xuICAgIH0sIDApO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdHJpZ2dlciBhbiBvbkVycm9yIGhhbmRsZXIsIGlmIHBhc3NlZCBhbmQgdGhlIHN1Ym1pdCBoYXMgcmVzcG9uZGVkIHdpdGggRVJST1InLCBmdW5jdGlvbiAoZG9uZSkge1xuICAgIFxuICAgIHZhciBvbkVycm9yID0gamFzbWluZS5jcmVhdGVTcHkoXCJlcnJvclwiKTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wiLCBvbkVycm9yOiBvbkVycm9yfVxuICAgICAgKVxuICAgICk7XG4gICAgXG4gICAgLy8gRG8gbm90IHJldHVybiBhbnkgZXJyb3IgYmVjYXVzZSB0aGVyZSBhcmUgbm8gaW5wdXRzXG4gICAgamFzbWluZS5BamF4LnN0dWJSZXF1ZXN0KCcvdXNlcnMnKS5hbmRSZXR1cm4oe1xuICAgICAgc3RhdHVzOiA1MDAsXG4gICAgICBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgcmVzcG9uc2VUZXh0OiAne30nXG4gICAgfSk7XG5cbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcblxuICAgIC8vIFNpbmNlIGFqYXggaXMgcmV0dXJuZWQgYXMgYSBwcm9taXNlIChhc3luYyksIG1vdmUgYXNzZXJ0aW9uXG4gICAgLy8gdG8gZW5kIG9mIGV2ZW50IGxvb3BcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGV4cGVjdChvbkVycm9yKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7fSk7XG4gICAgICBkb25lKCk7XG4gICAgfSwgMCk7XG5cbiAgfSk7XG5cbn0pO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNHVmpjeTlUZFdKdGFYUXRjM0JsWXk1cWN5SXNJbk52ZFhKalpYTWlPbHNpTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjR1ZqY3k5VGRXSnRhWFF0YzNCbFl5NXFjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4SlFVRkpMRTFCUVUwc1IwRkJSeXhQUVVGUExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1EwRkJRenM3UVVGRmVrTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1JVRkJSU3hYUVVGWE96dEZRVVV4UWl4VlFVRlZMRU5CUVVNc1dVRkJXVHRKUVVOeVFpeFBRVUZQTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTlCUVU4c1JVRkJSU3hEUVVGRE8wRkJRek5DTEVkQlFVY3NRMEZCUXl4RFFVRkRPenRGUVVWSUxGTkJRVk1zUTBGQlF5eFpRVUZaTzBsQlEzQkNMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTTdRVUZETjBJc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2MwTkJRWE5ETEVWQlFVVXNXVUZCV1RzN1NVRkZja1FzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdE5RVU55UXl4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEVkQlFVRXNSVUZCUnl4RFFVRkRMRkZCUVZNc1EwRkJRVHROUVVOYUxFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETzBsQlF6ZERMRTFCUVUwc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNN1FVRkRiRVVzU1VGQlNTeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eERRVUZET3p0QlFVVnVSU3hIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXgzUkVGQmQwUXNSVUZCUlN4WlFVRlpPenRKUVVWMlJTeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTzAxQlEzSkRMRzlDUVVGRExGZEJRVmNzUlVGQlFTeERRVUZCTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVU1zVFVGQlFTeEZRVUZOTEVOQlFVTXNTMEZCVFN4RFFVRkJPMDFCUTNwQ0xFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETzBsQlF6ZERMRTFCUVUwc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNN1FVRkRiRVVzU1VGQlNTeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZET3p0QlFVVnNSU3hIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXgzUmtGQmQwWXNSVUZCUlN4WlFVRlpPenRKUVVWMlJ5eEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTzAxQlEzSkRMRzlDUVVGRExGZEJRVmNzUlVGQlFTeERRVUZCTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVU1zVjBGQlFTeEZRVUZYTEVOQlFVTXNXVUZCWVN4RFFVRkJPMDFCUTNKRExFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETzBGQlEycEVMRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRzFEUVVGdFF5eERRVUZETEVOQlFVTTdPMEZCUlhaSExFZEJRVWNzUTBGQlF5eERRVUZET3p0QlFVVk1MRVZCUVVVc1JVRkJSU3hEUVVGRExIZEhRVUYzUnl4RlFVRkZMRlZCUVZVc1NVRkJTU3hGUVVGRk96dEpRVVV6U0N4SlFVRkpMRk5CUVZNc1IwRkJSeXhQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRPMGxCUXpkRExFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEhRVUZCTEVWQlFVY3NRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJReXhUUVVGQkxFVkJRVk1zUTBGQlJTeFRRVUZYTEVOQlFVRTdUVUZEYkVNc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eFhRVUZYTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1UwRkJVeXhEUVVGRE8wMUJRek5ETEUxQlFVMHNSVUZCUlN4SFFVRkhPMDFCUTFnc1YwRkJWeXhGUVVGRkxHdENRVUZyUWp0TlFVTXZRaXhaUVVGWkxFVkJRVVVzU1VGQlNUdEJRVU40UWl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRlVDeEpRVUZKTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4RFFVRkRPMEZCUTJwRU8wRkJRMEU3TzBsQlJVa3NWVUZCVlN4RFFVRkRMRmxCUVZrN1RVRkRja0lzVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRzlDUVVGdlFpeERRVUZETEVWQlFVVXNRMEZCUXl4RFFVRkRPMDFCUXpORExFbEJRVWtzUlVGQlJTeERRVUZETzBGQlEySXNTMEZCU3l4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE96dEJRVVZXTEVkQlFVY3NRMEZCUXl4RFFVRkRPenRCUVVWTUxFVkJRVVVzUlVGQlJTeERRVUZETEc5SVFVRnZTQ3hGUVVGRkxGbEJRVms3TzBsQlJXNUpMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzVFVGQlRTeEZRVUZGTEZsQlFWazdVVUZEYkVJc1QwRkJUeXh2UWtGQlFTeFBRVUZOTEVWQlFVRXNRMEZCUVN4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVY3NRMEZCUlN4RFFVRkJPMDlCUTNoRE8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0TlFVTnlReXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxGRkJRVlVzUTBGQlFTeEZRVUZCTzFGQlF5OUNMRzlDUVVGRExGTkJRVk1zUlVGQlFTeERRVUZCTEVOQlFVTXNTVUZCUVN4RlFVRkpMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkZMRU5CUVVFN1RVRkRka0lzUTBGQlFUdEJRVU53UWl4TFFVRkxMRU5CUVVNN08wRkJSVTRzU1VGQlNTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNRMEZCUXpzN1FVRkZha1FzU1VGQlNTeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03TzBsQlJUbERMRk5CUVZNc1VVRkJVU3hGUVVGRkxFbEJRVWtzUlVGQlJUdE5RVU4yUWl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETzFGQlEyNUNMRWRCUVVjc1JVRkJSU3hMUVVGTE8wOUJRMWdzUTBGQlF5eERRVUZETzBGQlExUXNTMEZCU3pzN1FVRkZUQ3hIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXcwUmtGQk5FWXNSVUZCUlN4VlFVRlZMRWxCUVVrc1JVRkJSVHM3U1VGRkwwY3NTVUZCU1N4WFFVRlhMRWRCUVVjc1QwRkJUeXhEUVVGRExGTkJRVk1zUTBGQlF5eFhRVUZYTEVOQlFVTXNRMEZCUXp0SlFVTnFSQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08wMUJRM0pETEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVNc1YwRkJRU3hGUVVGWExFTkJRVVVzVjBGQllTeERRVUZCTzAxQlEzUkRMRU5CUVVFN1FVRkRjRUlzUzBGQlN5eERRVUZET3p0SlFVVkdMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zVjBGQlZ5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRk5CUVZNc1EwRkJRenROUVVNelF5eE5RVUZOTEVWQlFVVXNSMEZCUnp0TlFVTllMRmRCUVZjc1JVRkJSU3hyUWtGQmEwSTdUVUZETDBJc1dVRkJXU3hGUVVGRkxFbEJRVWs3UVVGRGVFSXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wRkJSVkFzU1VGQlNTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTnFSRHRCUVVOQk96dEpRVVZKTEZWQlFWVXNRMEZCUXl4WlFVRlpPMDFCUTNKQ0xFMUJRVTBzUTBGQlF5eFhRVUZYTEVOQlFVTXNRMEZCUXl4blFrRkJaMElzUlVGQlJTeERRVUZETzAxQlEzWkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8wRkJRMklzUzBGQlN5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPenRCUVVWV0xFZEJRVWNzUTBGQlF5eERRVUZET3p0QlFVVk1MRVZCUVVVc1JVRkJSU3hEUVVGRExEQkdRVUV3Uml4RlFVRkZMRlZCUVZVc1NVRkJTU3hGUVVGRk96dEpRVVUzUnl4SlFVRkpMRmRCUVZjc1IwRkJSeXhQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRPMGxCUTJwRUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEhRVUZCTEVWQlFVY3NRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJReXhYUVVGQkxFVkJRVmNzUTBGQlJTeFhRVUZoTEVOQlFVRTdUVUZEZEVNc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eFhRVUZYTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1UwRkJVeXhEUVVGRE8wMUJRek5ETEUxQlFVMHNSVUZCUlN4SFFVRkhPMDFCUTFnc1YwRkJWeXhGUVVGRkxHdENRVUZyUWp0TlFVTXZRaXhaUVVGWkxFVkJRVVVzU1VGQlNUdEJRVU40UWl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRlVDeEpRVUZKTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4RFFVRkRPMEZCUTJwRU8wRkJRMEU3TzBsQlJVa3NWVUZCVlN4RFFVRkRMRmxCUVZrN1RVRkRja0lzVFVGQlRTeERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRMR2RDUVVGblFpeEZRVUZGTEVOQlFVTTdUVUZEZGtNc1NVRkJTU3hGUVVGRkxFTkJRVU03UVVGRFlpeExRVUZMTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN08wRkJSVllzUjBGQlJ5eERRVUZETEVOQlFVTTdPMEZCUlV3c1JVRkJSU3hGUVVGRkxFTkJRVU1zYzBaQlFYTkdMRVZCUVVVc1ZVRkJWU3hKUVVGSkxFVkJRVVU3TzBsQlJYcEhMRWxCUVVrc1QwRkJUeXhIUVVGSExFOUJRVThzUTBGQlF5eFRRVUZUTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRla01zU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdE5RVU55UXl4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEVkQlFVRXNSVUZCUnl4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRExFOUJRVUVzUlVGQlR5eERRVUZGTEU5QlFWTXNRMEZCUVR0TlFVTTVRaXhEUVVGQk8wRkJRM0JDTEV0QlFVc3NRMEZCUXp0QlFVTk9PenRKUVVWSkxFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNWMEZCVnl4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRExGTkJRVk1zUTBGQlF6dE5RVU16UXl4TlFVRk5MRVZCUVVVc1IwRkJSenROUVVOWUxGZEJRVmNzUlVGQlJTeHJRa0ZCYTBJN1RVRkRMMElzV1VGQldTeEZRVUZGTEVsQlFVazdRVUZEZUVJc1MwRkJTeXhEUVVGRExFTkJRVU03TzBGQlJWQXNTVUZCU1N4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRU5CUVVNc1EwRkJRenRCUVVOcVJEdEJRVU5CT3p0SlFVVkpMRlZCUVZVc1EwRkJReXhaUVVGWk8wMUJRM0pDTEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXh2UWtGQmIwSXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenROUVVONlF5eEpRVUZKTEVWQlFVVXNRMEZCUXp0QlFVTmlMRXRCUVVzc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6czdRVUZGVml4SFFVRkhMRU5CUVVNc1EwRkJRenM3UTBGRlNpeERRVUZETEVOQlFVTWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUoyWVhJZ1JtOXliWE41SUQwZ2NtVnhkV2x5WlNnbkxpOHVMaTl6Y21NdmJXRnBiaTVxY3ljcE8xeHVYRzVrWlhOamNtbGlaU2duUVdwaGVDY3NJR1oxYm1OMGFXOXVLQ2tnZTF4dVhHNGdJR0psWm05eVpVVmhZMmdvWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUdwaGMyMXBibVV1UVdwaGVDNXBibk4wWVd4c0tDazdYRzRnSUgwcE8xeHVYRzRnSUdGbWRHVnlSV0ZqYUNobWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2FtRnpiV2x1WlM1QmFtRjRMblZ1YVc1emRHRnNiQ2dwTzF4dUlDQjlLVHRjYmx4dUlDQnBkQ2duYzJodmRXeGtJSEJ2YzNRZ2RHOGdZU0JuYVhabGJpQjFjbXdnYVdZZ2NHRnpjMlZrSnl3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEVadmNtMXplUzVHYjNKdElIVnliRDFjSWk5MWMyVnljMXdpUGx4dUlDQWdJQ0FnUEM5R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBcE8xeHVJQ0FnSUZ4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzV6ZFdKdGFYUW9abTl5YlM1blpYUkVUMDFPYjJSbEtDa3BPMXh1SUNBZ0lHVjRjR1ZqZENocVlYTnRhVzVsTGtGcVlYZ3VjbVZ4ZFdWemRITXViVzl6ZEZKbFkyVnVkQ2dwTG5WeWJDa3VkRzlDWlNnbkwzVnpaWEp6SnlrN1hHNGdJQ0FnWlhod1pXTjBLR3BoYzIxcGJtVXVRV3BoZUM1eVpYRjFaWE4wY3k1dGIzTjBVbVZqWlc1MEtDa3ViV1YwYUc5a0tTNTBiMEpsS0NkUVQxTlVKeWs3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0J3ZFhRZ2RHOGdZU0JuYVhabGJpQjFjbXdnYVdZZ2NHRnpjMlZrSUdFZ2JXVjBhRzlrSUdGMGRISnBZblYwWlNjc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQjFjbXc5WENJdmRYTmxjbk5jSWlCdFpYUm9iMlE5WENKUVZWUmNJajVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JpQWdJQ0JjYmlBZ0lDQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVjM1ZpYldsMEtHWnZjbTB1WjJWMFJFOU5UbTlrWlNncEtUdGNiaUFnSUNCbGVIQmxZM1FvYW1GemJXbHVaUzVCYW1GNExuSmxjWFZsYzNSekxtMXZjM1JTWldObGJuUW9LUzUxY213cExuUnZRbVVvSnk5MWMyVnljeWNwTzF4dUlDQWdJR1Y0Y0dWamRDaHFZWE50YVc1bExrRnFZWGd1Y21WeGRXVnpkSE11Ylc5emRGSmxZMlZ1ZENncExtMWxkR2h2WkNrdWRHOUNaU2duVUZWVUp5azdYRzVjYmlBZ2ZTazdYRzVjYmlBZ2FYUW9KM05vYjNWc1pDQndZWE56SUhndGQzZDNMV1p2Y20wdGRYSnNaVzVqYjJSbFpDQmhjeUJqYjI1MFpXNTBWSGx3WlNCM2FHVnVJSFZ5YkdWdVkyOWtaV1FnYVhNZ2MyVjBJR0Z6SUdOdmJuUmxiblJVZVhCbEp5d2dablZ1WTNScGIyNGdLQ2tnZTF4dVhHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJSFZ5YkQxY0lpOTFjMlZ5YzF3aUlHTnZiblJsYm5SVWVYQmxQVndpZFhKc1pXNWpiMlJsWkZ3aVBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1SUNBZ0lGeHVJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvWm05eWJTNW5aWFJFVDAxT2IyUmxLQ2twTzF4dUlDQWdJR1Y0Y0dWamRDaHFZWE50YVc1bExrRnFZWGd1Y21WeGRXVnpkSE11Ylc5emRGSmxZMlZ1ZENncExtTnZiblJsYm5SVWVYQmxLQ2twTG5SdlFtVW9KMkZ3Y0d4cFkyRjBhVzl1TDNndGQzZDNMV1p2Y20wdGRYSnNaVzVqYjJSbFpDY3BPMXh1WEc0Z0lIMHBPMXh1WEc0Z0lHbDBLQ2R6YUc5MWJHUWdjblZ1SUdGdUlHOXVVM1ZqWTJWemN5Qm9ZVzVrYkdWeUxDQnBaaUJ3WVhOelpXUWdZVzVrSUdGcVlYZ2dhWE1nYzNWalkyVnpjMloxYkd3dUlFWnBjbk4wSUdGeVozVnRaVzUwSUdseklHUmhkR0VnWm5KdmJTQnpaWEoyWlhJbkxDQm1kVzVqZEdsdmJpQW9aRzl1WlNrZ2UxeHVJRnh1SUNBZ0lIWmhjaUJ2YmxOMVkyTmxjM01nUFNCcVlYTnRhVzVsTG1OeVpXRjBaVk53ZVNoY0luTjFZMk5sYzNOY0lpazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUhWeWJEMWNJaTkxYzJWeWMxd2lJRzl1VTNWalkyVnpjejE3YjI1VGRXTmpaWE56ZlQ1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNiaUFnSUNCY2JpQWdJQ0JxWVhOdGFXNWxMa0ZxWVhndWMzUjFZbEpsY1hWbGMzUW9KeTkxYzJWeWN5Y3BMbUZ1WkZKbGRIVnliaWg3WEc0Z0lDQWdJQ0J6ZEdGMGRYTTZJREl3TUN4Y2JpQWdJQ0FnSUdOdmJuUmxiblJVZVhCbE9pQW5ZWEJ3YkdsallYUnBiMjR2YW5OdmJpY3NYRzRnSUNBZ0lDQnlaWE53YjI1elpWUmxlSFE2SUNkN2ZTZGNiaUFnSUNCOUtUdGNibHh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNXpkV0p0YVhRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrcE8xeHVYRzRnSUNBZ0x5OGdVMmx1WTJVZ1lXcGhlQ0JwY3lCeVpYUjFjbTVsWkNCaGN5QmhJSEJ5YjIxcGMyVWdLR0Z6ZVc1aktTd2diVzkyWlNCaGMzTmxjblJwYjI1Y2JpQWdJQ0F2THlCMGJ5QmxibVFnYjJZZ1pYWmxiblFnYkc5dmNGeHVJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdaWGh3WldOMEtHOXVVM1ZqWTJWemN5a3VkRzlJWVhabFFtVmxia05oYkd4bFpGZHBkR2dvZTMwcE8xeHVJQ0FnSUNBZ1pHOXVaU2dwTzF4dUlDQWdJSDBzSURBcE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2JtOTBJR1J2SUdGcVlYZ2djbVZ4ZFdWemRDQnBaaUJ2YmxOMVltMXBkQ0JvWVc1a2JHVnlJR2x6SUhCaGMzTmxaQ3dnWW5WMElIQmhjM01nZEdobElHMXZaR1ZzSUdGeklHWnBjbk4wSUdGeVozVnRaVzUwSUhSdklHOXVVM1ZpYldsMElHaGhibVJzWlhJbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdYRzRnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUcxcGVHbHVjem9nVzBadmNtMXplUzVOYVhocGJsMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRHhwYm5CMWRDQjJZV3gxWlQxN2RHaHBjeTVuWlhSV1lXeDFaU2dwZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1VTNWaWJXbDBQWHR2YmxOMVltMXBkSDArWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSW1admIxd2lJSFpoYkhWbFBWd2lZbUZ5WENJdlBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdWR1Z6ZEZWMGFXeHpMbE5wYlhWc1lYUmxMbk4xWW0xcGRDaG1iM0p0TG1kbGRFUlBUVTV2WkdVb0tTazdYRzVjYmlBZ0lDQmxlSEJsWTNRb2FtRnpiV2x1WlM1QmFtRjRMbkpsY1hWbGMzUnpMbU52ZFc1MEtDa3BMblJ2UW1Vb01DazdYRzVjYmlBZ0lDQm1kVzVqZEdsdmJpQnZibE4xWW0xcGRDQW9aR0YwWVNrZ2UxeHVJQ0FnSUNBZ1pYaHdaV04wS0dSaGRHRXBMblJ2UlhGMVlXd29lMXh1SUNBZ0lDQWdJQ0JtYjI4NklDZGlZWEluWEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0I5WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0IwY21sbloyVnlJR0Z1SUc5dVUzVmliV2wwZEdWa0lHaGhibVJzWlhJc0lHbG1JSEJoYzNObFpDQmhibVFnZEdobElITjFZbTFwZENCb1lYTWdjbVZ6Y0c5dVpHVmtJSGRwZEdnZ1UxVkRRMFZUVXljc0lHWjFibU4wYVc5dUlDaGtiMjVsS1NCN1hHNGdJQ0FnWEc0Z0lDQWdkbUZ5SUc5dVUzVmliV2wwZEdWa0lEMGdhbUZ6YldsdVpTNWpjbVZoZEdWVGNIa29YQ0p6ZFdKdGFYUjBaV1JjSWlrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJSFZ5YkQxY0lpOTFjMlZ5YzF3aUlHOXVVM1ZpYldsMGRHVmtQWHR2YmxOMVltMXBkSFJsWkgwK1hHNGdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDazdYRzRnSUNBZ1hHNGdJQ0FnYW1GemJXbHVaUzVCYW1GNExuTjBkV0pTWlhGMVpYTjBLQ2N2ZFhObGNuTW5LUzVoYm1SU1pYUjFjbTRvZTF4dUlDQWdJQ0FnYzNSaGRIVnpPaUF5TURBc1hHNGdJQ0FnSUNCamIyNTBaVzUwVkhsd1pUb2dKMkZ3Y0d4cFkyRjBhVzl1TDJwemIyNG5MRnh1SUNBZ0lDQWdjbVZ6Y0c5dWMyVlVaWGgwT2lBbmUzMG5YRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVjM1ZpYldsMEtHWnZjbTB1WjJWMFJFOU5UbTlrWlNncEtUdGNibHh1SUNBZ0lDOHZJRk5wYm1ObElHRnFZWGdnYVhNZ2NtVjBkWEp1WldRZ1lYTWdZU0J3Y205dGFYTmxJQ2hoYzNsdVl5a3NJRzF2ZG1VZ1lYTnpaWEowYVc5dVhHNGdJQ0FnTHk4Z2RHOGdaVzVrSUc5bUlHVjJaVzUwSUd4dmIzQmNiaUFnSUNCelpYUlVhVzFsYjNWMEtHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJR1Y0Y0dWamRDaHZibE4xWW0xcGRIUmxaQ2t1ZEc5SVlYWmxRbVZsYmtOaGJHeGxaQ2dwTzF4dUlDQWdJQ0FnWkc5dVpTZ3BPMXh1SUNBZ0lIMHNJREFwTzF4dVhHNGdJSDBwTzF4dVhHNGdJR2wwS0NkemFHOTFiR1FnZEhKcFoyZGxjaUJoYmlCdmJsTjFZbTFwZEhSbFpDQm9ZVzVrYkdWeUxDQnBaaUJ3WVhOelpXUWdZVzVrSUhSb1pTQnpkV0p0YVhRZ2FHRnpJSEpsYzNCdmJtUmxaQ0IzYVhSb0lFVlNVazlTSnl3Z1puVnVZM1JwYjI0Z0tHUnZibVVwSUh0Y2JpQWdJQ0JjYmlBZ0lDQjJZWElnYjI1VGRXSnRhWFIwWldRZ1BTQnFZWE50YVc1bExtTnlaV0YwWlZOd2VTaGNJbk4xWW0xcGRIUmxaRndpS1R0Y2JpQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb1hHNGdJQ0FnSUNBOFJtOXliWE41TGtadmNtMGdkWEpzUFZ3aUwzVnpaWEp6WENJZ2IyNVRkV0p0YVhSMFpXUTllMjl1VTNWaWJXbDBkR1ZrZlQ1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNiaUFnSUNCY2JpQWdJQ0JxWVhOdGFXNWxMa0ZxWVhndWMzUjFZbEpsY1hWbGMzUW9KeTkxYzJWeWN5Y3BMbUZ1WkZKbGRIVnliaWg3WEc0Z0lDQWdJQ0J6ZEdGMGRYTTZJRFV3TUN4Y2JpQWdJQ0FnSUdOdmJuUmxiblJVZVhCbE9pQW5ZWEJ3YkdsallYUnBiMjR2YW5OdmJpY3NYRzRnSUNBZ0lDQnlaWE53YjI1elpWUmxlSFE2SUNkN2ZTZGNiaUFnSUNCOUtUdGNibHh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNXpkV0p0YVhRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrcE8xeHVYRzRnSUNBZ0x5OGdVMmx1WTJVZ1lXcGhlQ0JwY3lCeVpYUjFjbTVsWkNCaGN5QmhJSEJ5YjIxcGMyVWdLR0Z6ZVc1aktTd2diVzkyWlNCaGMzTmxjblJwYjI1Y2JpQWdJQ0F2THlCMGJ5QmxibVFnYjJZZ1pYWmxiblFnYkc5dmNGeHVJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdaWGh3WldOMEtHOXVVM1ZpYldsMGRHVmtLUzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc0Z0lDQWdJQ0JrYjI1bEtDazdYRzRnSUNBZ2ZTd2dNQ2s3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0IwY21sbloyVnlJR0Z1SUc5dVJYSnliM0lnYUdGdVpHeGxjaXdnYVdZZ2NHRnpjMlZrSUdGdVpDQjBhR1VnYzNWaWJXbDBJR2hoY3lCeVpYTndiMjVrWldRZ2QybDBhQ0JGVWxKUFVpY3NJR1oxYm1OMGFXOXVJQ2hrYjI1bEtTQjdYRzRnSUNBZ1hHNGdJQ0FnZG1GeUlHOXVSWEp5YjNJZ1BTQnFZWE50YVc1bExtTnlaV0YwWlZOd2VTaGNJbVZ5Y205eVhDSXBPMXh1SUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2hjYmlBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCMWNtdzlYQ0l2ZFhObGNuTmNJaUJ2YmtWeWNtOXlQWHR2YmtWeWNtOXlmVDVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JpQWdJQ0JjYmlBZ0lDQXZMeUJFYnlCdWIzUWdjbVYwZFhKdUlHRnVlU0JsY25KdmNpQmlaV05oZFhObElIUm9aWEpsSUdGeVpTQnVieUJwYm5CMWRITmNiaUFnSUNCcVlYTnRhVzVsTGtGcVlYZ3VjM1IxWWxKbGNYVmxjM1FvSnk5MWMyVnljeWNwTG1GdVpGSmxkSFZ5YmloN1hHNGdJQ0FnSUNCemRHRjBkWE02SURVd01DeGNiaUFnSUNBZ0lHTnZiblJsYm5SVWVYQmxPaUFuWVhCd2JHbGpZWFJwYjI0dmFuTnZiaWNzWEc0Z0lDQWdJQ0J5WlhOd2IyNXpaVlJsZUhRNklDZDdmU2RjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzV6ZFdKdGFYUW9abTl5YlM1blpYUkVUMDFPYjJSbEtDa3BPMXh1WEc0Z0lDQWdMeThnVTJsdVkyVWdZV3BoZUNCcGN5QnlaWFIxY201bFpDQmhjeUJoSUhCeWIyMXBjMlVnS0dGemVXNWpLU3dnYlc5MlpTQmhjM05sY25ScGIyNWNiaUFnSUNBdkx5QjBieUJsYm1RZ2IyWWdaWFpsYm5RZ2JHOXZjRnh1SUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnWlhod1pXTjBLRzl1UlhKeWIzSXBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUlhhWFJvS0h0OUtUdGNiaUFnSUNBZ0lHUnZibVVvS1R0Y2JpQWdJQ0I5TENBd0tUdGNibHh1SUNCOUtUdGNibHh1ZlNrN1hHNGlYWDA9IiwidmFyIEZvcm1zeSA9IHJlcXVpcmUoJy4vLi4vc3JjL21haW4uanMnKTtcblxuZGVzY3JpYmUoJ1ZhbGlkYXRpb24nLCBmdW5jdGlvbigpIHtcblxuICBpdCgnc2hvdWxkIHRyaWdnZXIgYW4gb25WYWxpZCBoYW5kbGVyLCBpZiBwYXNzZWQsIHdoZW4gZm9ybSBpcyB2YWxpZCcsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBvblZhbGlkID0gamFzbWluZS5jcmVhdGVTcHkoJ3ZhbGlkJyk7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblZhbGlkOiBvblZhbGlkfSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgcmVxdWlyZWQ6IHRydWV9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICdmb28nfX0pO1xuICAgIGV4cGVjdChvblZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCB0cmlnZ2VyIGFuIG9uSW52YWxpZCBoYW5kbGVyLCBpZiBwYXNzZWQsIHdoZW4gZm9ybSBpcyBpbnZhbGlkJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIG9uSW52YWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCdpbnZhbGlkJyk7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblZhbGlkOiBvbkludmFsaWR9LCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJyd9fSk7XG4gICAgZXhwZWN0KG9uSW52YWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdXNlIHByb3ZpZGVkIGNoZWNrVmFsaWRpdHkgZnVuY3Rpb24nLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCd2YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9LFxuICAgICAgY2hlY2tWYWxpZGl0eTogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZSgpID09PSBcImNoZWNrVmFsaWRpdHlcIjtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJjaGVja0ludmFsaWRpdHlcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIGV4cGVjdChpc1ZhbGlkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2NoZWNrVmFsaWRpdHknfX0pO1xuICAgIGV4cGVjdChpc1ZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG5cbiAgfSk7XG5cbiAgaXQoJ1JVTEU6IGlzRW1haWwnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCd2YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIGV4cGVjdChpc1ZhbGlkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvb0Bmb28uY29tJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdSVUxFOiBpc051bWVyaWMnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCd2YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzTnVtZXJpY1wifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgZXhwZWN0KGlzVmFsaWQpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnMTIzJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdSVUxFOiBpc051bWVyaWMgKGFjdHVhbCBudW1iZXIpJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIGlzVmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgndmFsaWQnKTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShOdW1iZXIoZXZlbnQudGFyZ2V0LnZhbHVlKSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzTnVtZXJpY1wifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgZXhwZWN0KGlzVmFsaWQpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnMTIzJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdSVUxFOiBpc051bWVyaWMgKHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhIGZsb2F0KScsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBpc1ZhbGlkID0gamFzbWluZS5jcmVhdGVTcHkoJ3ZhbGlkJyk7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNWYWxpZCgpKSB7XG4gICAgICAgICAgaXNWYWxpZCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIiwgdmFsaWRhdGlvbnM6IFwiaXNOdW1lcmljXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBleHBlY3QoaXNWYWxpZCkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICcxLjUnfX0pO1xuICAgIGV4cGVjdChpc1ZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG5cbiAgfSk7XG5cbiAgaXQoJ1JVTEU6IGlzTnVtZXJpYyBpcyBmYWxzZSAoc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIGludmFsaWQgZmxvYXQpJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIGlzVmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgndmFsaWQnKTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkKCkpIHtcbiAgICAgICAgICBpc1ZhbGlkKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIG51bGwsIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHZhbHVlOiBcImZvb1wiLCB2YWxpZGF0aW9uczogXCJpc051bWVyaWNcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIGV4cGVjdChpc1ZhbGlkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJzEuJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcblxuICB9KTtcblxufSk7XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y0dWamN5OVdZV3hwWkdGMGFXOXVMWE53WldNdWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0JsWTNNdlZtRnNhV1JoZEdsdmJpMXpjR1ZqTG1weklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJMRWxCUVVrc1RVRkJUU3hIUVVGSExFOUJRVThzUTBGQlF5eHJRa0ZCYTBJc1EwRkJReXhEUVVGRE96dEJRVVY2UXl4UlFVRlJMRU5CUVVNc1dVRkJXU3hGUVVGRkxGZEJRVmM3TzBGQlJXeERMRVZCUVVVc1JVRkJSU3hEUVVGRExHdEZRVUZyUlN4RlFVRkZMRmxCUVZrN08wbEJSV3BHTEVsQlFVa3NUMEZCVHl4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEZWtNc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1VVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzA5QlEyNURPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUlVGQlF5eERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRWxCUVVrc1EwRkJReXhYUVVGWkxFTkJRVVVzUTBGQlFUdFBRVU53UlR0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eFBRVUZCTEVWQlFVOHNRMEZCUlN4UFFVRlRMRU5CUVVFc1JVRkJRVHRSUVVNM1FpeHZRa0ZCUXl4VFFVRlRMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRkZCUVVFc1JVRkJRU3hEUVVGRkxFTkJRVUU3VFVGRFdpeERRVUZCTzBGQlEzQkNMRXRCUVVzc1EwRkJRenM3U1VGRlJpeEpRVUZKTEV0QlFVc3NSMEZCUnl4VFFVRlRMRU5CUVVNc0swSkJRU3RDTEVOQlFVTXNTVUZCU1N4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVGRE8wbEJRM0pGTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUlVGQlJTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETDBRc1NVRkJTU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6czdRVUZGZGtNc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2MwVkJRWE5GTEVWQlFVVXNXVUZCV1RzN1NVRkZja1lzU1VGQlNTeFRRVUZUTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dEpRVU0zUXl4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0TlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMDFCUTNSQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0UlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VDBGRGJrTTdUVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRSUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8wOUJRM0JGTzB0QlEwWXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFOUJRVUVzUlVGQlR5eERRVUZGTEZOQlFWY3NRMEZCUVN4RlFVRkJPMUZCUXk5Q0xHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRkxFTkJRVUU3VFVGRGRrSXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNTVUZCU1N4TFFVRkxMRWRCUVVjc1UwRkJVeXhEUVVGRExDdENRVUVyUWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU55UlN4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhMUVVGTExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXpWRUxFbEJRVWtzVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMR2RDUVVGblFpeEZRVUZGTEVOQlFVTTdPMEZCUlhwRExFZEJRVWNzUTBGQlF5eERRVUZET3p0QlFVVk1MRVZCUVVVc1JVRkJSU3hEUVVGRExEUkRRVUUwUXl4RlFVRkZMRmxCUVZrN08wbEJSVE5FTEVsQlFVa3NUMEZCVHl4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEZWtNc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1VVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzA5QlEyNURPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNTVUZCU1N4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVU3VlVGRGJFSXNUMEZCVHl4RlFVRkZMRU5CUVVNN1UwRkRXRHRSUVVORUxFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3VFVGRFJDeGhRVUZoTEVWQlFVVXNXVUZCV1R0UlFVTjZRaXhQUVVGUExFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVVXNTMEZCU3l4bFFVRmxMRU5CUVVNN1QwRkROVU03UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4SlFVRkRMRVZCUVVFN1VVRkRXQ3h2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMR2xDUVVGcFFpeERRVUZGTEVOQlFVRTdUVUZEYmtNc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1NVRkJTU3hMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETEN0Q1FVRXJRaXhEUVVGRExFbEJRVWtzUlVGQlJTeFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVTnlSU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMR2RDUVVGblFpeEZRVUZGTEVOQlFVTTdTVUZEZGtNc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUzBGQlN5eEZRVUZGTEdWQlFXVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVONlJTeEpRVUZKTEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RFFVRkRPenRCUVVWMlF5eEhRVUZITEVOQlFVTXNRMEZCUXpzN1FVRkZUQ3hGUVVGRkxFVkJRVVVzUTBGQlF5eGxRVUZsTEVWQlFVVXNXVUZCV1RzN1NVRkZPVUlzU1VGQlNTeFBRVUZQTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU42UXl4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0TlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMDFCUTNSQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0UlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VDBGRGJrTTdUVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRSUVVOc1FpeEpRVUZKTEVsQlFVa3NRMEZCUXl4UFFVRlBMRVZCUVVVc1JVRkJSVHRWUVVOc1FpeFBRVUZQTEVWQlFVVXNRMEZCUXp0VFFVTllPMUZCUTBRc1QwRkJUeXh2UWtGQlFTeFBRVUZOTEVWQlFVRXNRMEZCUVN4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVVXNSVUZCUXl4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eFhRVUZaTEVOQlFVVXNRMEZCUVR0UFFVTndSVHRMUVVOR0xFTkJRVU1zUTBGQlF6dEpRVU5JTEVsQlFVa3NTVUZCU1N4SFFVRkhMRk5CUVZNc1EwRkJReXhyUWtGQmEwSTdUVUZEY2tNc2IwSkJRVU1zVjBGQlZ5eEZRVUZCTEVsQlFVTXNSVUZCUVR0UlFVTllMRzlDUVVGRExGTkJRVk1zUlVGQlFTeERRVUZCTEVOQlFVTXNTVUZCUVN4RlFVRkpMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1YwRkJRU3hGUVVGWExFTkJRVU1zVTBGQlV5eERRVUZGTEVOQlFVRTdUVUZETjBNc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1NVRkJTU3hMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETEN0Q1FVRXJRaXhEUVVGRExFbEJRVWtzUlVGQlJTeFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVTnlSU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMR2RDUVVGblFpeEZRVUZGTEVOQlFVTTdTVUZEZGtNc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUzBGQlN5eEZRVUZGTEdGQlFXRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOMlJTeEpRVUZKTEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RFFVRkRPenRCUVVWMlF5eEhRVUZITEVOQlFVTXNRMEZCUXpzN1FVRkZUQ3hGUVVGRkxFVkJRVVVzUTBGQlF5eHBRa0ZCYVVJc1JVRkJSU3haUVVGWk96dEpRVVZvUXl4SlFVRkpMRTlCUVU4c1IwRkJSeXhQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRPMGxCUTNwRExFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8wMUJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VFVGRGRFSXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UFFVTnVRenROUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENMRWxCUVVrc1NVRkJTU3hEUVVGRExFOUJRVThzUlVGQlJTeEZRVUZGTzFWQlEyeENMRTlCUVU4c1JVRkJSU3hEUVVGRE8xTkJRMWc3VVVGRFJDeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8wOUJRM0JGTzB0QlEwWXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1NVRkJReXhGUVVGQk8xRkJRMWdzYjBKQlFVTXNVMEZCVXl4RlFVRkJMRU5CUVVFc1EwRkJReXhKUVVGQkxFVkJRVWtzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eFhRVUZCTEVWQlFWY3NRMEZCUXl4WFFVRlhMRU5CUVVVc1EwRkJRVHROUVVNdlF5eERRVUZCTzBGQlEzQkNMRXRCUVVzc1EwRkJRenM3U1VGRlJpeEpRVUZKTEV0QlFVc3NSMEZCUnl4VFFVRlRMRU5CUVVNc0swSkJRU3RDTEVOQlFVTXNTVUZCU1N4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVGRE8wbEJRM0pGTEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zWjBKQlFXZENMRVZCUVVVc1EwRkJRenRKUVVOMlF5eFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFVkJRVVVzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TFFVRkxMRVZCUVVVc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzBGQlF5OUVMRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFTkJRVU03TzBGQlJYWkRMRWRCUVVjc1EwRkJReXhEUVVGRE96dEJRVVZNTEVWQlFVVXNSVUZCUlN4RFFVRkRMR2xEUVVGcFF5eEZRVUZGTEZsQlFWazdPMGxCUldoRUxFbEJRVWtzVDBGQlR5eEhRVUZITEU5QlFVOHNRMEZCUXl4VFFVRlRMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU03U1VGRGVrTXNTVUZCU1N3clFrRkJLMElzZVVKQlFVRTdUVUZEYWtNc1RVRkJUU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXp0TlFVTjBRaXhYUVVGWExFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdVVUZETlVJc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETzA5QlF6TkRPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNTVUZCU1N4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVU3VlVGRGJFSXNUMEZCVHl4RlFVRkZMRU5CUVVNN1UwRkRXRHRSUVVORUxFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4SlFVRkRMRVZCUVVFN1VVRkRXQ3h2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExGZEJRVUVzUlVGQlZ5eERRVUZETEZkQlFWY3NRMEZCUlN4RFFVRkJPMDFCUXk5RExFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RFFVRkRPMGxCUTNaRExGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEV0QlFVc3NSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UVVGREwwUXNTVUZCU1N4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zWjBKQlFXZENMRVZCUVVVc1EwRkJRenM3UVVGRmRrTXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeEZRVUZGTEVOQlFVTXNiMFJCUVc5RUxFVkJRVVVzV1VGQldUczdTVUZGYmtVc1NVRkJTU3hQUVVGUExFZEJRVWNzVDBGQlR5eERRVUZETEZOQlFWTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRKUVVONlF5eEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdE5RVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzAxQlEzUkNMRmRCUVZjc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdFJRVU0xUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1QwRkRia003VFVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0UlFVTnNRaXhKUVVGSkxFbEJRVWtzUTBGQlF5eFBRVUZQTEVWQlFVVXNSVUZCUlR0VlFVTnNRaXhQUVVGUExFVkJRVVVzUTBGQlF6dFRRVU5ZTzFGQlEwUXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUlVGQlF5eERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRWxCUVVrc1EwRkJReXhYUVVGWkxFTkJRVVVzUTBGQlFUdFBRVU53UlR0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFbEJRVU1zUlVGQlFUdFJRVU5ZTEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNWMEZCUVN4RlFVRlhMRU5CUVVNc1YwRkJWeXhEUVVGRkxFTkJRVUU3VFVGREwwTXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNTVUZCU1N4TFFVRkxMRWRCUVVjc1UwRkJVeXhEUVVGRExDdENRVUVyUWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU55UlN4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFTkJRVU03U1VGRGRrTXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVOQlFVTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTXZSQ3hKUVVGSkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4blFrRkJaMElzUlVGQlJTeERRVUZET3p0QlFVVjJReXhIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXh6UlVGQmMwVXNSVUZCUlN4WlFVRlpPenRKUVVWeVJpeEpRVUZKTEU5QlFVOHNSMEZCUnl4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzBsQlEzcERMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzVjBGQlZ5eEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMUZCUXpWQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFBRVU51UXp0TlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xRkJRMnhDTEVsQlFVa3NTVUZCU1N4RFFVRkRMRTlCUVU4c1JVRkJSU3hGUVVGRk8xVkJRMnhDTEU5QlFVOHNSVUZCUlN4RFFVRkRPMU5CUTFnN1VVRkRSQ3hQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkRMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZkQlFWa3NRMEZCUlN4RFFVRkJPMDlCUTNCRk8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0TlFVTnlReXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNTVUZCUXl4RlFVRkJPMUZCUTFnc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhYUVVGQkxFVkJRVmNzUTBGQlF5eFhRVUZYTEVOQlFVVXNRMEZCUVR0TlFVTXZReXhEUVVGQk8wRkJRM0JDTEV0QlFVc3NRMEZCUXpzN1NVRkZSaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNLMEpCUVN0Q0xFTkJRVU1zU1VGQlNTeEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVRkRPMGxCUTNKRkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1owSkJRV2RDTEVWQlFVVXNRMEZCUXp0SlFVTjJReXhUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRemxFTEVsQlFVa3NUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eG5Ra0ZCWjBJc1JVRkJSU3hEUVVGRE96dEJRVVV6UXl4SFFVRkhMRU5CUVVNc1EwRkJRenM3UTBGRlNpeERRVUZETEVOQlFVTWlMQ0p6YjNWeVkyVnpRMjl1ZEdWdWRDSTZXeUoyWVhJZ1JtOXliWE41SUQwZ2NtVnhkV2x5WlNnbkxpOHVMaTl6Y21NdmJXRnBiaTVxY3ljcE8xeHVYRzVrWlhOamNtbGlaU2duVm1Gc2FXUmhkR2x2Ymljc0lHWjFibU4wYVc5dUtDa2dlMXh1WEc0Z0lHbDBLQ2R6YUc5MWJHUWdkSEpwWjJkbGNpQmhiaUJ2YmxaaGJHbGtJR2hoYm1Sc1pYSXNJR2xtSUhCaGMzTmxaQ3dnZDJobGJpQm1iM0p0SUdseklIWmhiR2xrSnl3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdkbUZ5SUc5dVZtRnNhV1FnUFNCcVlYTnRhVzVsTG1OeVpXRjBaVk53ZVNnbmRtRnNhV1FuS1R0Y2JpQWdJQ0IyWVhJZ1ZHVnpkRWx1Y0hWMElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdiV2w0YVc1ek9pQmJSbTl5YlhONUxrMXBlR2x1WFN4Y2JpQWdJQ0FnSUhWd1pHRjBaVlpoYkhWbE9pQm1kVzVqZEdsdmJpQW9aWFpsYm5RcElIdGNiaUFnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMblZ3WkdGMFpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1Vm1Gc2FXUTllMjl1Vm1Gc2FXUjlQbHh1SUNBZ0lDQWdJQ0E4VkdWemRFbHVjSFYwSUc1aGJXVTlYQ0ptYjI5Y0lpQnlaWEYxYVhKbFpDOCtYRzRnSUNBZ0lDQThMMFp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0IyWVhJZ2FXNXdkWFFnUFNCVVpYTjBWWFJwYkhNdVptbHVaRkpsYm1SbGNtVmtSRTlOUTI5dGNHOXVaVzUwVjJsMGFGUmhaeWhtYjNKdExDQW5TVTVRVlZRbktUdGNiaUFnSUNCVVpYTjBWWFJwYkhNdVUybHRkV3hoZEdVdVkyaGhibWRsS0dsdWNIVjBMQ0I3ZEdGeVoyVjBPaUI3ZG1Gc2RXVTZJQ2RtYjI4bmZYMHBPMXh1SUNBZ0lHVjRjR1ZqZENodmJsWmhiR2xrS1M1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNWNiaUFnZlNrN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCMGNtbG5aMlZ5SUdGdUlHOXVTVzUyWVd4cFpDQm9ZVzVrYkdWeUxDQnBaaUJ3WVhOelpXUXNJSGRvWlc0Z1ptOXliU0JwY3lCcGJuWmhiR2xrSnl3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdkbUZ5SUc5dVNXNTJZV3hwWkNBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZHBiblpoYkdsa0p5azdYRzRnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUcxcGVHbHVjem9nVzBadmNtMXplUzVOYVhocGJsMHNYRzRnSUNBZ0lDQjFjR1JoZEdWV1lXeDFaVG9nWm5WdVkzUnBiMjRnS0dWMlpXNTBLU0I3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVjMlYwVm1Gc2RXVW9aWFpsYm5RdWRHRnlaMlYwTG5aaGJIVmxLVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTQnZia05vWVc1blpUMTdkR2hwY3k1MWNHUmhkR1ZXWVd4MVpYMHZQbHh1SUNBZ0lDQWdmVnh1SUNBZ0lIMHBPMXh1SUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2hjYmlBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCdmJsWmhiR2xrUFh0dmJrbHVkbUZzYVdSOVBseHVJQ0FnSUNBZ0lDQThWR1Z6ZEVsdWNIVjBJRzVoYldVOVhDSm1iMjljSWlCMllXeDFaVDFjSW1admIxd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSnlkOWZTazdYRzRnSUNBZ1pYaHdaV04wS0c5dVNXNTJZV3hwWkNrdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkNncE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2RYTmxJSEJ5YjNacFpHVmtJR05vWldOclZtRnNhV1JwZEhrZ1puVnVZM1JwYjI0bkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZDJZV3hwWkNjcE8xeHVJQ0FnSUhaaGNpQlVaWE4wU1c1d2RYUWdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ2RYQmtZWFJsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2hsZG1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuTmxkRlpoYkhWbEtHVjJaVzUwTG5SaGNtZGxkQzUyWVd4MVpTazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaDBhR2x6TG1selZtRnNhV1FvS1NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2x6Vm1Gc2FXUW9LVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG5Wd1pHRjBaVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdZMmhsWTJ0V1lXeHBaR2wwZVRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdkR2hwY3k1blpYUldZV3gxWlNncElEMDlQU0JjSW1Ob1pXTnJWbUZzYVdScGRIbGNJanRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvWEc0Z0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJIVmxQVndpWTJobFkydEpiblpoYkdsa2FYUjVYQ0l2UGx4dUlDQWdJQ0FnUEM5R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBcE8xeHVYRzRnSUNBZ2RtRnlJR2x1Y0hWMElEMGdWR1Z6ZEZWMGFXeHpMbVpwYm1SU1pXNWtaWEpsWkVSUFRVTnZiWEJ2Ym1WdWRGZHBkR2hVWVdjb1ptOXliU3dnSjBsT1VGVlVKeWs3WEc0Z0lDQWdaWGh3WldOMEtHbHpWbUZzYVdRcExtNXZkQzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc0Z0lDQWdWR1Z6ZEZWMGFXeHpMbE5wYlhWc1lYUmxMbU5vWVc1blpTaHBibkIxZEN3Z2UzUmhjbWRsZERvZ2UzWmhiSFZsT2lBblkyaGxZMnRXWVd4cFpHbDBlU2Q5ZlNrN1hHNGdJQ0FnWlhod1pXTjBLR2x6Vm1Gc2FXUXBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUW9LVHRjYmx4dUlDQjlLVHRjYmx4dUlDQnBkQ2duVWxWTVJUb2dhWE5GYldGcGJDY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0FnSUhaaGNpQnBjMVpoYkdsa0lEMGdhbUZ6YldsdVpTNWpjbVZoZEdWVGNIa29KM1poYkdsa0p5azdYRzRnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUcxcGVHbHVjem9nVzBadmNtMXplUzVOYVhocGJsMHNYRzRnSUNBZ0lDQjFjR1JoZEdWV1lXeDFaVG9nWm5WdVkzUnBiMjRnS0dWMlpXNTBLU0I3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVjMlYwVm1Gc2RXVW9aWFpsYm5RdWRHRnlaMlYwTG5aaGJIVmxLVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2FXWWdLSFJvYVhNdWFYTldZV3hwWkNncEtTQjdYRzRnSUNBZ0lDQWdJQ0FnYVhOV1lXeHBaQ2dwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBOGFXNXdkWFFnZG1Gc2RXVTllM1JvYVhNdVoyVjBWbUZzZFdVb0tYMGdiMjVEYUdGdVoyVTllM1JvYVhNdWRYQmtZWFJsVm1Gc2RXVjlMejVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvWEc0Z0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJIVmxQVndpWm05dlhDSWdkbUZzYVdSaGRHbHZibk05WENKcGMwVnRZV2xzWENJdlBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdkbUZ5SUdsdWNIVjBJRDBnVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFUlBUVU52YlhCdmJtVnVkRmRwZEdoVVlXY29abTl5YlN3Z0owbE9VRlZVSnlrN1hHNGdJQ0FnWlhod1pXTjBLR2x6Vm1Gc2FXUXBMbTV2ZEM1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNGdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5abTl2UUdadmJ5NWpiMjBuZlgwcE8xeHVJQ0FnSUdWNGNHVmpkQ2hwYzFaaGJHbGtLUzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjFKVlRFVTZJR2x6VG5WdFpYSnBZeWNzSUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lIWmhjaUJwYzFaaGJHbGtJRDBnYW1GemJXbHVaUzVqY21WaGRHVlRjSGtvSjNaaGJHbGtKeWs3WEc0Z0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0IxY0dSaGRHVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvWlhabGJuUXVkR0Z5WjJWMExuWmhiSFZsS1R0Y2JpQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdhV1lnS0hSb2FYTXVhWE5XWVd4cFpDZ3BLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2FYTldZV3hwWkNncE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQThhVzV3ZFhRZ2RtRnNkV1U5ZTNSb2FYTXVaMlYwVm1Gc2RXVW9LWDBnYjI1RGFHRnVaMlU5ZTNSb2FYTXVkWEJrWVhSbFZtRnNkV1Y5THo1Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5S1R0Y2JpQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb1hHNGdJQ0FnSUNBOFJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMWNJbVp2YjF3aUlIWmhiSFZsUFZ3aVptOXZYQ0lnZG1Gc2FXUmhkR2x2Ym5NOVhDSnBjMDUxYldWeWFXTmNJaTgrWEc0Z0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNrN1hHNWNiaUFnSUNCMllYSWdhVzV3ZFhRZ1BTQlVaWE4wVlhScGJITXVabWx1WkZKbGJtUmxjbVZrUkU5TlEyOXRjRzl1Wlc1MFYybDBhRlJoWnlobWIzSnRMQ0FuU1U1UVZWUW5LVHRjYmlBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNrdWJtOTBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUW9LVHRjYmlBZ0lDQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVZMmhoYm1kbEtHbHVjSFYwTENCN2RHRnlaMlYwT2lCN2RtRnNkV1U2SUNjeE1qTW5mWDBwTzF4dUlDQWdJR1Y0Y0dWamRDaHBjMVpoYkdsa0tTNTBiMGhoZG1WQ1pXVnVRMkZzYkdWa0tDazdYRzVjYmlBZ2ZTazdYRzVjYmlBZ2FYUW9KMUpWVEVVNklHbHpUblZ0WlhKcFl5QW9ZV04wZFdGc0lHNTFiV0psY2lrbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZDJZV3hwWkNjcE8xeHVJQ0FnSUhaaGNpQlVaWE4wU1c1d2RYUWdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ2RYQmtZWFJsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2hsZG1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuTmxkRlpoYkhWbEtFNTFiV0psY2lobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcEtUdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tIUm9hWE11YVhOV1lXeHBaQ2dwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdhWE5XWVd4cFpDZ3BPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUE4YVc1d2RYUWdkbUZzZFdVOWUzUm9hWE11WjJWMFZtRnNkV1VvS1gwZ2IyNURhR0Z1WjJVOWUzUm9hWE11ZFhCa1lYUmxWbUZzZFdWOUx6NWNiaUFnSUNBZ0lIMWNiaUFnSUNCOUtUdGNiaUFnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9YRzRnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSW1admIxd2lJSFpoYkhWbFBWd2labTl2WENJZ2RtRnNhV1JoZEdsdmJuTTlYQ0pwYzA1MWJXVnlhV05jSWk4K1hHNGdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDazdYRzVjYmlBZ0lDQjJZWElnYVc1d2RYUWdQU0JVWlhOMFZYUnBiSE11Wm1sdVpGSmxibVJsY21Wa1JFOU5RMjl0Y0c5dVpXNTBWMmwwYUZSaFp5aG1iM0p0TENBblNVNVFWVlFuS1R0Y2JpQWdJQ0JsZUhCbFkzUW9hWE5XWVd4cFpDa3VibTkwTG5SdlNHRjJaVUpsWlc1RFlXeHNaV1FvS1R0Y2JpQWdJQ0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1WTJoaGJtZGxLR2x1Y0hWMExDQjdkR0Z5WjJWME9pQjdkbUZzZFdVNklDY3hNak1uZlgwcE8xeHVJQ0FnSUdWNGNHVmpkQ2hwYzFaaGJHbGtLUzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjFKVlRFVTZJR2x6VG5WdFpYSnBZeUFvYzNSeWFXNW5JSEpsY0hKbGMyVnVkR0YwYVc5dUlHOW1JR0VnWm14dllYUXBKeXdnWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ2RtRnlJR2x6Vm1Gc2FXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duZG1Gc2FXUW5LVHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJSFZ3WkdGMFpWWmhiSFZsT2lCbWRXNWpkR2x2YmlBb1pYWmxiblFwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSV1lXeDFaU2hsZG1WdWRDNTBZWEpuWlhRdWRtRnNkV1VwTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvZEdocGN5NXBjMVpoYkdsa0tDa3BJSHRjYmlBZ0lDQWdJQ0FnSUNCcGMxWmhiR2xrS0NrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmU0J2YmtOb1lXNW5aVDE3ZEdocGN5NTFjR1JoZEdWV1lXeDFaWDB2UGx4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBwTzF4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBZ0lDQWdQRlJsYzNSSmJuQjFkQ0J1WVcxbFBWd2labTl2WENJZ2RtRnNkV1U5WENKbWIyOWNJaUIyWVd4cFpHRjBhVzl1Y3oxY0ltbHpUblZ0WlhKcFkxd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lHVjRjR1ZqZENocGMxWmhiR2xrS1M1dWIzUXVkRzlJWVhabFFtVmxia05oYkd4bFpDZ3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSnpFdU5TZDlmU2s3WEc0Z0lDQWdaWGh3WldOMEtHbHpWbUZzYVdRcExuUnZTR0YyWlVKbFpXNURZV3hzWldRb0tUdGNibHh1SUNCOUtUdGNibHh1SUNCcGRDZ25VbFZNUlRvZ2FYTk9kVzFsY21saklHbHpJR1poYkhObElDaHpkSEpwYm1jZ2NtVndjbVZ6Wlc1MFlYUnBiMjRnYjJZZ1lXNGdhVzUyWVd4cFpDQm1iRzloZENrbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZDJZV3hwWkNjcE8xeHVJQ0FnSUhaaGNpQlVaWE4wU1c1d2RYUWdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ2RYQmtZWFJsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2hsZG1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuTmxkRlpoYkhWbEtHVjJaVzUwTG5SaGNtZGxkQzUyWVd4MVpTazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaDBhR2x6TG1selZtRnNhV1FvS1NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2x6Vm1Gc2FXUW9LVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG5Wd1pHRjBaVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ0FnSUNBOFZHVnpkRWx1Y0hWMElHNWhiV1U5WENKbWIyOWNJaUIyWVd4MVpUMWNJbVp2YjF3aUlIWmhiR2xrWVhScGIyNXpQVndpYVhOT2RXMWxjbWxqWENJdlBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdkbUZ5SUdsdWNIVjBJRDBnVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFUlBUVU52YlhCdmJtVnVkRmRwZEdoVVlXY29abTl5YlN3Z0owbE9VRlZVSnlrN1hHNGdJQ0FnWlhod1pXTjBLR2x6Vm1Gc2FXUXBMbTV2ZEM1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNGdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5NUzRuZlgwcE8xeHVJQ0FnSUdWNGNHVmpkQ2hwYzFaaGJHbGtLUzV1YjNRdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkNncE8xeHVYRzRnSUgwcE8xeHVYRzU5S1R0Y2JpSmRmUT09IiwibW9kdWxlLmV4cG9ydHMgPSB7XG4gIGdldEluaXRpYWxTdGF0ZTogZnVuY3Rpb24gKCkge1xuICAgIHZhciB2YWx1ZSA9ICd2YWx1ZScgaW4gdGhpcy5wcm9wcyA/IHRoaXMucHJvcHMudmFsdWUgOiAnJztcbiAgICByZXR1cm4ge1xuICAgICAgX3ZhbHVlOiB2YWx1ZSxcbiAgICAgIF9pc1ZhbGlkOiB0cnVlLFxuICAgICAgX2lzUHJpc3RpbmU6IHRydWUsXG4gICAgICBfcHJpc3RpbmVWYWx1ZTogdmFsdWVcbiAgICB9O1xuICB9LFxuICBjb21wb25lbnRXaWxsTW91bnQ6IGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBjb25maWd1cmUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICB0aGlzLnNldFZhbGlkYXRpb25zKHRoaXMucHJvcHMudmFsaWRhdGlvbnMsIHRoaXMucHJvcHMucmVxdWlyZWQpO1xuICAgICAgdGhpcy5wcm9wcy5fYXR0YWNoVG9Gb3JtKHRoaXMpO1xuICAgIH0uYmluZCh0aGlzKTtcblxuICAgIGlmICghdGhpcy5wcm9wcy5uYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Zvcm0gSW5wdXQgcmVxdWlyZXMgYSBuYW1lIHByb3BlcnR5IHdoZW4gdXNlZCcpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5wcm9wcy5fYXR0YWNoVG9Gb3JtKSB7XG4gICAgICByZXR1cm4gc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICghdGhpcy5pc01vdW50ZWQoKSkgcmV0dXJuO1xuICAgICAgICBpZiAoIXRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRm9ybSBNaXhpbiByZXF1aXJlcyBjb21wb25lbnQgdG8gYmUgbmVzdGVkIGluIGEgRm9ybScpO1xuICAgICAgICB9XG4gICAgICAgIGNvbmZpZ3VyZSgpO1xuICAgICAgfS5iaW5kKHRoaXMpLCAwKTtcbiAgICB9XG4gICAgY29uZmlndXJlKCk7XG5cbiAgfSxcblxuICAvLyBXZSBoYXZlIHRvIG1ha2UgdGhlIHZhbGlkYXRlIG1ldGhvZCBpcyBrZXB0IHdoZW4gbmV3IHByb3BzIGFyZSBhZGRlZFxuICBjb21wb25lbnRXaWxsUmVjZWl2ZVByb3BzOiBmdW5jdGlvbiAobmV4dFByb3BzKSB7XG4gICAgbmV4dFByb3BzLl9hdHRhY2hUb0Zvcm0gPSB0aGlzLnByb3BzLl9hdHRhY2hUb0Zvcm07XG4gICAgbmV4dFByb3BzLl9kZXRhY2hGcm9tRm9ybSA9IHRoaXMucHJvcHMuX2RldGFjaEZyb21Gb3JtO1xuICAgIG5leHRQcm9wcy5fdmFsaWRhdGUgPSB0aGlzLnByb3BzLl92YWxpZGF0ZTtcbiAgICB0aGlzLnNldFZhbGlkYXRpb25zKG5leHRQcm9wcy52YWxpZGF0aW9ucywgbmV4dFByb3BzLnJlcXVpcmVkKTtcbiAgfSxcblxuICBjb21wb25lbnREaWRVcGRhdGU6IGZ1bmN0aW9uIChwcmV2UHJvcHMsIHByZXZTdGF0ZSkge1xuXG4gICAgdmFyIGlzVmFsdWVDaGFuZ2VkID0gZnVuY3Rpb24gKCkge1xuICAgICAgXG4gICAgICByZXR1cm4gKFxuICAgICAgICB0aGlzLnByb3BzLnZhbHVlICE9PSBwcmV2UHJvcHMudmFsdWUgJiYgKFxuICAgICAgICAgIHRoaXMuc3RhdGUuX3ZhbHVlID09PSBwcmV2UHJvcHMudmFsdWUgfHxcblxuICAgICAgICAgIC8vIFNpbmNlIHVuZGVmaW5lZCBpcyBjb252ZXJ0ZWQgdG8gZW1wdHkgc3RyaW5nIHdlIGhhdmUgdG9cbiAgICAgICAgICAvLyBjaGVjayB0aGF0IHNwZWNpZmljYWxseVxuICAgICAgICAgICh0aGlzLnN0YXRlLl92YWx1ZSA9PT0gJycgJiYgcHJldlByb3BzLnZhbHVlID09PSB1bmRlZmluZWQpXG4gICAgICAgIClcbiAgICAgICk7XG5cbiAgICB9LmJpbmQodGhpcyk7XG5cblxuICAgIC8vIElmIHZhbGlkYXRpb25zIGhhcyBjaGFuZ2VkIG9yIHNvbWV0aGluZyBvdXRzaWRlIGNoYW5nZXMgXG4gICAgLy8gdGhlIHZhbHVlLCBzZXQgdGhlIHZhbHVlIGFnYWluIHJ1bm5pbmcgYSB2YWxpZGF0aW9uXG5cbiAgICBpZiAocHJldlByb3BzLnZhbGlkYXRpb25zICE9PSB0aGlzLnByb3BzLnZhbGlkYXRpb25zIHx8IGlzVmFsdWVDaGFuZ2VkKCkpIHtcbiAgICAgIHZhciB2YWx1ZSA9ICd2YWx1ZScgaW4gdGhpcy5wcm9wcyA/IHRoaXMucHJvcHMudmFsdWUgOiAnJztcbiAgICAgIHRoaXMuc2V0VmFsdWUodmFsdWUpO1xuICAgIH1cbiAgfSxcblxuICAvLyBEZXRhY2ggaXQgd2hlbiBjb21wb25lbnQgdW5tb3VudHNcbiAgY29tcG9uZW50V2lsbFVubW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnByb3BzLl9kZXRhY2hGcm9tRm9ybSh0aGlzKTtcbiAgfSxcblxuICBzZXRWYWxpZGF0aW9uczogZnVuY3Rpb24gKHZhbGlkYXRpb25zLCByZXF1aXJlZCkge1xuXG4gICAgLy8gQWRkIHZhbGlkYXRpb25zIHRvIHRoZSBzdG9yZSBpdHNlbGYgYXMgdGhlIHByb3BzIG9iamVjdCBjYW4gbm90IGJlIG1vZGlmaWVkXG4gICAgdGhpcy5fdmFsaWRhdGlvbnMgPSB2YWxpZGF0aW9ucyB8fCAnJztcblxuICAgIGlmIChyZXF1aXJlZCkge1xuICAgICAgdGhpcy5fdmFsaWRhdGlvbnMgPSB2YWxpZGF0aW9ucyA/IHZhbGlkYXRpb25zICsgJywnIDogJyc7XG4gICAgICB0aGlzLl92YWxpZGF0aW9ucyArPSAnaXNWYWx1ZSc7XG4gICAgfVxuXG4gIH0sXG5cbiAgLy8gV2UgdmFsaWRhdGUgYWZ0ZXIgdGhlIHZhbHVlIGhhcyBiZWVuIHNldFxuICBzZXRWYWx1ZTogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBfdmFsdWU6IHZhbHVlLFxuICAgICAgX2lzUHJpc3RpbmU6IGZhbHNlXG4gICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5wcm9wcy5fdmFsaWRhdGUodGhpcyk7XG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcbiAgcmVzZXRWYWx1ZTogZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgX3ZhbHVlOiB0aGlzLnN0YXRlLl9wcmlzdGluZVZhbHVlLFxuICAgICAgX2lzUHJpc3RpbmU6IHRydWVcbiAgICB9LCBmdW5jdGlvbiAoKSB7XG4gICAgICB0aGlzLnByb3BzLl92YWxpZGF0ZSh0aGlzKTtcbiAgICB9KTtcbiAgfSxcbiAgZ2V0VmFsdWU6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5fdmFsdWU7XG4gIH0sXG4gIGhhc1ZhbHVlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX3ZhbHVlICE9PSAnJztcbiAgfSxcbiAgZ2V0RXJyb3JNZXNzYWdlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNWYWxpZCgpIHx8IHRoaXMuc2hvd1JlcXVpcmVkKCkgPyBudWxsIDogdGhpcy5zdGF0ZS5fc2VydmVyRXJyb3IgfHwgdGhpcy5wcm9wcy52YWxpZGF0aW9uRXJyb3I7XG4gIH0sXG4gIGlzRm9ybURpc2FibGVkOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuX2lzRm9ybURpc2FibGVkKCk7XG4gIH0sXG4gIGlzVmFsaWQ6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5faXNWYWxpZDtcbiAgfSxcbiAgaXNQcmlzdGluZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLl9pc1ByaXN0aW5lO1xuICB9LFxuICBpc1JlcXVpcmVkOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5wcm9wcy5yZXF1aXJlZDtcbiAgfSxcbiAgc2hvd1JlcXVpcmVkOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNSZXF1aXJlZCgpICYmIHRoaXMuc3RhdGUuX3ZhbHVlID09PSAnJztcbiAgfSxcbiAgc2hvd0Vycm9yOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuICF0aGlzLnNob3dSZXF1aXJlZCgpICYmICF0aGlzLnN0YXRlLl9pc1ZhbGlkO1xuICB9LFxuICBpc1ZhbGlkVmFsdWU6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLl9pc1ZhbGlkVmFsdWUuY2FsbChudWxsLCB0aGlzLCB2YWx1ZSk7XG4gIH1cbn07XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdlRXbDRhVzR1YW5NaUxDSnpiM1Z5WTJWeklqcGJJaTlWYzJWeWN5OWphSEpwYzNScFlXNWhiR1p2Ym1rdlJHOWpkVzFsYm5SekwyUmxkaTltYjNKdGMza3RjbVZoWTNRdmMzSmpMMDFwZUdsdUxtcHpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSkJRVUZCTEUxQlFVMHNRMEZCUXl4UFFVRlBMRWRCUVVjN1JVRkRaaXhsUVVGbExFVkJRVVVzV1VGQldUdEpRVU16UWl4SlFVRkpMRXRCUVVzc1IwRkJSeXhQUVVGUExFbEJRVWtzU1VGQlNTeERRVUZETEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUjBGQlJ5eEZRVUZGTEVOQlFVTTdTVUZETVVRc1QwRkJUenROUVVOTUxFMUJRVTBzUlVGQlJTeExRVUZMTzAxQlEySXNVVUZCVVN4RlFVRkZMRWxCUVVrN1RVRkRaQ3hYUVVGWExFVkJRVVVzU1VGQlNUdE5RVU5xUWl4alFVRmpMRVZCUVVVc1MwRkJTenRMUVVOMFFpeERRVUZETzBkQlEwZzdRVUZEU0N4RlFVRkZMR3RDUVVGclFpeEZRVUZGTEZsQlFWazdPMGxCUlRsQ0xFbEJRVWtzVTBGQlV5eEhRVUZITEZsQlFWazdUVUZETVVJc1NVRkJTU3hEUVVGRExHTkJRV01zUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRmRCUVZjc1JVRkJSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPMDFCUTJwRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wRkJRM0pETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03TzBsQlJXSXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeEZRVUZGTzAxQlEzQkNMRTFCUVUwc1NVRkJTU3hMUVVGTExFTkJRVU1zSzBOQlFTdERMRU5CUVVNc1EwRkJRenRCUVVOMlJTeExRVUZMT3p0SlFVVkVMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEdGQlFXRXNSVUZCUlR0TlFVTTNRaXhQUVVGUExGVkJRVlVzUTBGQlF5eFpRVUZaTzFGQlF6VkNMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVWQlFVVXNUMEZCVHp0UlFVTTVRaXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4aFFVRmhMRVZCUVVVN1ZVRkROMElzVFVGQlRTeEpRVUZKTEV0QlFVc3NRMEZCUXl4elJFRkJjMFFzUTBGQlF5eERRVUZETzFOQlEzcEZPMUZCUTBRc1UwRkJVeXhGUVVGRkxFTkJRVU03VDBGRFlpeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6dExRVU5zUWp0QlFVTk1MRWxCUVVrc1UwRkJVeXhGUVVGRkxFTkJRVU03TzBGQlJXaENMRWRCUVVjN1FVRkRTRHM3UlVGRlJTeDVRa0ZCZVVJc1JVRkJSU3hWUVVGVkxGTkJRVk1zUlVGQlJUdEpRVU01UXl4VFFVRlRMRU5CUVVNc1lVRkJZU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4RFFVRkRPMGxCUTI1RUxGTkJRVk1zUTBGQlF5eGxRVUZsTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU03U1VGRGRrUXNVMEZCVXl4RFFVRkRMRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXp0SlFVTXpReXhKUVVGSkxFTkJRVU1zWTBGQll5eERRVUZETEZOQlFWTXNRMEZCUXl4WFFVRlhMRVZCUVVVc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzBGQlEyNUZMRWRCUVVjN08wRkJSVWdzUlVGQlJTeHJRa0ZCYTBJc1JVRkJSU3hWUVVGVkxGTkJRVk1zUlVGQlJTeFRRVUZUTEVWQlFVVTdPMEZCUlhSRUxFbEJRVWtzU1VGQlNTeGpRVUZqTEVkQlFVY3NXVUZCV1RzN1RVRkZMMEk3VVVGRFJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1MwRkJTeXhUUVVGVExFTkJRVU1zUzBGQlN6dEJRVU0xUXl4VlFVRlZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeExRVUZMTEZOQlFWTXNRMEZCUXl4TFFVRkxPMEZCUXk5RE8wRkJRMEU3TzFkQlJWY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFdEJRVXNzUlVGQlJTeEpRVUZKTEZOQlFWTXNRMEZCUXl4TFFVRkxMRXRCUVVzc1UwRkJVeXhEUVVGRE8xTkJRelZFTzBGQlExUXNVVUZCVVRzN1FVRkZVaXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTJwQ08wRkJRMEU3UVVGRFFUdEJRVU5CT3p0SlFVVkpMRWxCUVVrc1UwRkJVeXhEUVVGRExGZEJRVmNzUzBGQlN5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRmRCUVZjc1NVRkJTU3hqUVVGakxFVkJRVVVzUlVGQlJUdE5RVU40UlN4SlFVRkpMRXRCUVVzc1IwRkJSeXhQUVVGUExFbEJRVWtzU1VGQlNTeERRVUZETEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFdEJRVXNzUjBGQlJ5eEZRVUZGTEVOQlFVTTdUVUZETVVRc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0TFFVTjBRanRCUVVOTUxFZEJRVWM3UVVGRFNEczdSVUZGUlN4dlFrRkJiMElzUlVGQlJTeFpRVUZaTzBsQlEyaERMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWlVGQlpTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTNKRExFZEJRVWM3TzBGQlJVZ3NSVUZCUlN4alFVRmpMRVZCUVVVc1ZVRkJWU3hYUVVGWExFVkJRVVVzVVVGQlVTeEZRVUZGTzBGQlEyNUVPenRCUVVWQkxFbEJRVWtzU1VGQlNTeERRVUZETEZsQlFWa3NSMEZCUnl4WFFVRlhMRWxCUVVrc1JVRkJSU3hEUVVGRE96dEpRVVYwUXl4SlFVRkpMRkZCUVZFc1JVRkJSVHROUVVOYUxFbEJRVWtzUTBGQlF5eFpRVUZaTEVkQlFVY3NWMEZCVnl4SFFVRkhMRmRCUVZjc1IwRkJSeXhIUVVGSExFZEJRVWNzUlVGQlJTeERRVUZETzAxQlEzcEVMRWxCUVVrc1EwRkJReXhaUVVGWkxFbEJRVWtzVTBGQlV5eERRVUZETzBGQlEzSkRMRXRCUVVzN08wRkJSVXdzUjBGQlJ6dEJRVU5JT3p0RlFVVkZMRkZCUVZFc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdEpRVU42UWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRE8wMUJRMW9zVFVGQlRTeEZRVUZGTEV0QlFVczdUVUZEWWl4WFFVRlhMRVZCUVVVc1MwRkJTenRMUVVOdVFpeEZRVUZGTEZsQlFWazdUVUZEWWl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TFFVTTFRaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMGRCUTJZN1JVRkRSQ3hWUVVGVkxFVkJRVVVzV1VGQldUdEpRVU4wUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRE8wMUJRMW9zVFVGQlRTeEZRVUZGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1kwRkJZenROUVVOcVF5eFhRVUZYTEVWQlFVVXNTVUZCU1R0TFFVTnNRaXhGUVVGRkxGbEJRVms3VFVGRFlpeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dExRVU0xUWl4RFFVRkRMRU5CUVVNN1IwRkRTanRGUVVORUxGRkJRVkVzUlVGQlJTeFpRVUZaTzBsQlEzQkNMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTTdSMEZETVVJN1JVRkRSQ3hSUVVGUkxFVkJRVVVzV1VGQldUdEpRVU53UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeExRVUZMTEVWQlFVVXNRMEZCUXp0SFFVTnFRenRGUVVORUxHVkJRV1VzUlVGQlJTeFpRVUZaTzBsQlF6TkNMRTlCUVU4c1NVRkJTU3hEUVVGRExFOUJRVThzUlVGQlJTeEpRVUZKTEVsQlFVa3NRMEZCUXl4WlFVRlpMRVZCUVVVc1IwRkJSeXhKUVVGSkxFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4WlFVRlpMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGxRVUZsTEVOQlFVTTdSMEZETjBjN1JVRkRSQ3hqUVVGakxFVkJRVVVzV1VGQldUdEpRVU14UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWlVGQlpTeEZRVUZGTEVOQlFVTTdSMEZEY2tNN1JVRkRSQ3hQUVVGUExFVkJRVVVzV1VGQldUdEpRVU51UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETzBkQlF6VkNPMFZCUTBRc1ZVRkJWU3hGUVVGRkxGbEJRVms3U1VGRGRFSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGZEJRVmNzUTBGQlF6dEhRVU12UWp0RlFVTkVMRlZCUVZVc1JVRkJSU3haUVVGWk8wbEJRM1JDTEU5QlFVOHNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETzBkQlF6bENPMFZCUTBRc1dVRkJXU3hGUVVGRkxGbEJRVms3U1VGRGVFSXNUMEZCVHl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFbEJRVWtzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRXRCUVVzc1JVRkJSU3hEUVVGRE8wZEJRM1JFTzBWQlEwUXNVMEZCVXl4RlFVRkZMRmxCUVZrN1NVRkRja0lzVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4WlFVRlpMRVZCUVVVc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RFFVRkRPMGRCUTNKRU8wVkJRMFFzV1VGQldTeEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMGxCUXpkQ0xFOUJRVThzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4aFFVRmhMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVXNTMEZCU3l4RFFVRkRMRU5CUVVNN1IwRkRla1E3UTBGRFJpeERRVUZESWl3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaWJXOWtkV3hsTG1WNGNHOXlkSE1nUFNCN1hHNGdJR2RsZEVsdWFYUnBZV3hUZEdGMFpUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSFpoY2lCMllXeDFaU0E5SUNkMllXeDFaU2NnYVc0Z2RHaHBjeTV3Y205d2N5QS9JSFJvYVhNdWNISnZjSE11ZG1Gc2RXVWdPaUFuSnp0Y2JpQWdJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDQWdYM1poYkhWbE9pQjJZV3gxWlN4Y2JpQWdJQ0FnSUY5cGMxWmhiR2xrT2lCMGNuVmxMRnh1SUNBZ0lDQWdYMmx6VUhKcGMzUnBibVU2SUhSeWRXVXNYRzRnSUNBZ0lDQmZjSEpwYzNScGJtVldZV3gxWlRvZ2RtRnNkV1ZjYmlBZ0lDQjlPMXh1SUNCOUxGeHVJQ0JqYjIxd2IyNWxiblJYYVd4c1RXOTFiblE2SUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lIWmhjaUJqYjI1bWFXZDFjbVVnUFNCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQjBhR2x6TG5ObGRGWmhiR2xrWVhScGIyNXpLSFJvYVhNdWNISnZjSE11ZG1Gc2FXUmhkR2x2Ym5Nc0lIUm9hWE11Y0hKdmNITXVjbVZ4ZFdseVpXUXBPMXh1SUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTVmWVhSMFlXTm9WRzlHYjNKdEtIUm9hWE1wTzF4dUlDQWdJSDB1WW1sdVpDaDBhR2x6S1R0Y2JseHVJQ0FnSUdsbUlDZ2hkR2hwY3k1d2NtOXdjeTV1WVcxbEtTQjdYRzRnSUNBZ0lDQjBhSEp2ZHlCdVpYY2dSWEp5YjNJb0owWnZjbTBnU1c1d2RYUWdjbVZ4ZFdseVpYTWdZU0J1WVcxbElIQnliM0JsY25SNUlIZG9aVzRnZFhObFpDY3BPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHbG1JQ2doZEdocGN5NXdjbTl3Y3k1ZllYUjBZV05vVkc5R2IzSnRLU0I3WEc0Z0lDQWdJQ0J5WlhSMWNtNGdjMlYwVkdsdFpXOTFkQ2htZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2doZEdocGN5NXBjMDF2ZFc1MFpXUW9LU2tnY21WMGRYSnVPMXh1SUNBZ0lDQWdJQ0JwWmlBb0lYUm9hWE11Y0hKdmNITXVYMkYwZEdGamFGUnZSbTl5YlNrZ2UxeHVJQ0FnSUNBZ0lDQWdJSFJvY205M0lHNWxkeUJGY25KdmNpZ25SbTl5YlNCTmFYaHBiaUJ5WlhGMWFYSmxjeUJqYjIxd2IyNWxiblFnZEc4Z1ltVWdibVZ6ZEdWa0lHbHVJR0VnUm05eWJTY3BPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUdOdmJtWnBaM1Z5WlNncE8xeHVJQ0FnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBMQ0F3S1R0Y2JpQWdJQ0I5WEc0Z0lDQWdZMjl1Wm1sbmRYSmxLQ2s3WEc1Y2JpQWdmU3hjYmx4dUlDQXZMeUJYWlNCb1lYWmxJSFJ2SUcxaGEyVWdkR2hsSUhaaGJHbGtZWFJsSUcxbGRHaHZaQ0JwY3lCclpYQjBJSGRvWlc0Z2JtVjNJSEJ5YjNCeklHRnlaU0JoWkdSbFpGeHVJQ0JqYjIxd2IyNWxiblJYYVd4c1VtVmpaV2wyWlZCeWIzQnpPaUJtZFc1amRHbHZiaUFvYm1WNGRGQnliM0J6S1NCN1hHNGdJQ0FnYm1WNGRGQnliM0J6TGw5aGRIUmhZMmhVYjBadmNtMGdQU0IwYUdsekxuQnliM0J6TGw5aGRIUmhZMmhVYjBadmNtMDdYRzRnSUNBZ2JtVjRkRkJ5YjNCekxsOWtaWFJoWTJoR2NtOXRSbTl5YlNBOUlIUm9hWE11Y0hKdmNITXVYMlJsZEdGamFFWnliMjFHYjNKdE8xeHVJQ0FnSUc1bGVIUlFjbTl3Y3k1ZmRtRnNhV1JoZEdVZ1BTQjBhR2x6TG5CeWIzQnpMbDkyWVd4cFpHRjBaVHRjYmlBZ0lDQjBhR2x6TG5ObGRGWmhiR2xrWVhScGIyNXpLRzVsZUhSUWNtOXdjeTUyWVd4cFpHRjBhVzl1Y3l3Z2JtVjRkRkJ5YjNCekxuSmxjWFZwY21Wa0tUdGNiaUFnZlN4Y2JseHVJQ0JqYjIxd2IyNWxiblJFYVdSVmNHUmhkR1U2SUdaMWJtTjBhVzl1SUNod2NtVjJVSEp2Y0hNc0lIQnlaWFpUZEdGMFpTa2dlMXh1WEc0Z0lDQWdkbUZ5SUdselZtRnNkV1ZEYUdGdVoyVmtJRDBnWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ1hHNGdJQ0FnSUNCeVpYUjFjbTRnS0Z4dUlDQWdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxuWmhiSFZsSUNFOVBTQndjbVYyVUhKdmNITXVkbUZzZFdVZ0ppWWdLRnh1SUNBZ0lDQWdJQ0FnSUhSb2FYTXVjM1JoZEdVdVgzWmhiSFZsSUQwOVBTQndjbVYyVUhKdmNITXVkbUZzZFdVZ2ZIeGNibHh1SUNBZ0lDQWdJQ0FnSUM4dklGTnBibU5sSUhWdVpHVm1hVzVsWkNCcGN5QmpiMjUyWlhKMFpXUWdkRzhnWlcxd2RIa2djM1J5YVc1bklIZGxJR2hoZG1VZ2RHOWNiaUFnSUNBZ0lDQWdJQ0F2THlCamFHVmpheUIwYUdGMElITndaV05wWm1sallXeHNlVnh1SUNBZ0lDQWdJQ0FnSUNoMGFHbHpMbk4wWVhSbExsOTJZV3gxWlNBOVBUMGdKeWNnSmlZZ2NISmxkbEJ5YjNCekxuWmhiSFZsSUQwOVBTQjFibVJsWm1sdVpXUXBYRzRnSUNBZ0lDQWdJQ2xjYmlBZ0lDQWdJQ2s3WEc1Y2JpQWdJQ0I5TG1KcGJtUW9kR2hwY3lrN1hHNWNibHh1SUNBZ0lDOHZJRWxtSUhaaGJHbGtZWFJwYjI1eklHaGhjeUJqYUdGdVoyVmtJRzl5SUhOdmJXVjBhR2x1WnlCdmRYUnphV1JsSUdOb1lXNW5aWE1nWEc0Z0lDQWdMeThnZEdobElIWmhiSFZsTENCelpYUWdkR2hsSUhaaGJIVmxJR0ZuWVdsdUlISjFibTVwYm1jZ1lTQjJZV3hwWkdGMGFXOXVYRzVjYmlBZ0lDQnBaaUFvY0hKbGRsQnliM0J6TG5aaGJHbGtZWFJwYjI1eklDRTlQU0IwYUdsekxuQnliM0J6TG5aaGJHbGtZWFJwYjI1eklIeDhJR2x6Vm1Gc2RXVkRhR0Z1WjJWa0tDa3BJSHRjYmlBZ0lDQWdJSFpoY2lCMllXeDFaU0E5SUNkMllXeDFaU2NnYVc0Z2RHaHBjeTV3Y205d2N5QS9JSFJvYVhNdWNISnZjSE11ZG1Gc2RXVWdPaUFuSnp0Y2JpQWdJQ0FnSUhSb2FYTXVjMlYwVm1Gc2RXVW9kbUZzZFdVcE8xeHVJQ0FnSUgxY2JpQWdmU3hjYmx4dUlDQXZMeUJFWlhSaFkyZ2dhWFFnZDJobGJpQmpiMjF3YjI1bGJuUWdkVzV0YjNWdWRITmNiaUFnWTI5dGNHOXVaVzUwVjJsc2JGVnViVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQjBhR2x6TG5CeWIzQnpMbDlrWlhSaFkyaEdjbTl0Um05eWJTaDBhR2x6S1R0Y2JpQWdmU3hjYmx4dUlDQnpaWFJXWVd4cFpHRjBhVzl1Y3pvZ1puVnVZM1JwYjI0Z0tIWmhiR2xrWVhScGIyNXpMQ0J5WlhGMWFYSmxaQ2tnZTF4dVhHNGdJQ0FnTHk4Z1FXUmtJSFpoYkdsa1lYUnBiMjV6SUhSdklIUm9aU0J6ZEc5eVpTQnBkSE5sYkdZZ1lYTWdkR2hsSUhCeWIzQnpJRzlpYW1WamRDQmpZVzRnYm05MElHSmxJRzF2WkdsbWFXVmtYRzRnSUNBZ2RHaHBjeTVmZG1Gc2FXUmhkR2x2Ym5NZ1BTQjJZV3hwWkdGMGFXOXVjeUI4ZkNBbkp6dGNibHh1SUNBZ0lHbG1JQ2h5WlhGMWFYSmxaQ2tnZTF4dUlDQWdJQ0FnZEdocGN5NWZkbUZzYVdSaGRHbHZibk1nUFNCMllXeHBaR0YwYVc5dWN5QS9JSFpoYkdsa1lYUnBiMjV6SUNzZ0p5d25JRG9nSnljN1hHNGdJQ0FnSUNCMGFHbHpMbDkyWVd4cFpHRjBhVzl1Y3lBclBTQW5hWE5XWVd4MVpTYzdYRzRnSUNBZ2ZWeHVYRzRnSUgwc1hHNWNiaUFnTHk4Z1YyVWdkbUZzYVdSaGRHVWdZV1owWlhJZ2RHaGxJSFpoYkhWbElHaGhjeUJpWldWdUlITmxkRnh1SUNCelpYUldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsS1NCN1hHNGdJQ0FnZEdocGN5NXpaWFJUZEdGMFpTaDdYRzRnSUNBZ0lDQmZkbUZzZFdVNklIWmhiSFZsTEZ4dUlDQWdJQ0FnWDJselVISnBjM1JwYm1VNklHWmhiSE5sWEc0Z0lDQWdmU3dnWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ2RHaHBjeTV3Y205d2N5NWZkbUZzYVdSaGRHVW9kR2hwY3lrN1hHNGdJQ0FnZlM1aWFXNWtLSFJvYVhNcEtUdGNiaUFnZlN4Y2JpQWdjbVZ6WlhSV1lXeDFaVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhSb2FYTXVjMlYwVTNSaGRHVW9lMXh1SUNBZ0lDQWdYM1poYkhWbE9pQjBhR2x6TG5OMFlYUmxMbDl3Y21semRHbHVaVlpoYkhWbExGeHVJQ0FnSUNBZ1gybHpVSEpwYzNScGJtVTZJSFJ5ZFdWY2JpQWdJQ0I5TENCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQjBhR2x6TG5CeWIzQnpMbDkyWVd4cFpHRjBaU2gwYUdsektUdGNiaUFnSUNCOUtUdGNiaUFnZlN4Y2JpQWdaMlYwVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0J5WlhSMWNtNGdkR2hwY3k1emRHRjBaUzVmZG1Gc2RXVTdYRzRnSUgwc1hHNGdJR2hoYzFaaGJIVmxPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWMzUmhkR1V1WDNaaGJIVmxJQ0U5UFNBbkp6dGNiaUFnZlN4Y2JpQWdaMlYwUlhKeWIzSk5aWE56WVdkbE9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIUm9hWE11YVhOV1lXeHBaQ2dwSUh4OElIUm9hWE11YzJodmQxSmxjWFZwY21Wa0tDa2dQeUJ1ZFd4c0lEb2dkR2hwY3k1emRHRjBaUzVmYzJWeWRtVnlSWEp5YjNJZ2ZId2dkR2hwY3k1d2NtOXdjeTUyWVd4cFpHRjBhVzl1UlhKeWIzSTdYRzRnSUgwc1hHNGdJR2x6Um05eWJVUnBjMkZpYkdWa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIUm9hWE11Y0hKdmNITXVYMmx6Um05eWJVUnBjMkZpYkdWa0tDazdYRzRnSUgwc1hHNGdJR2x6Vm1Gc2FXUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0J5WlhSMWNtNGdkR2hwY3k1emRHRjBaUzVmYVhOV1lXeHBaRHRjYmlBZ2ZTeGNiaUFnYVhOUWNtbHpkR2x1WlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCMGFHbHpMbk4wWVhSbExsOXBjMUJ5YVhOMGFXNWxPMXh1SUNCOUxGeHVJQ0JwYzFKbGNYVnBjbVZrT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUNFaGRHaHBjeTV3Y205d2N5NXlaWEYxYVhKbFpEdGNiaUFnZlN4Y2JpQWdjMmh2ZDFKbGNYVnBjbVZrT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUhSb2FYTXVhWE5TWlhGMWFYSmxaQ2dwSUNZbUlIUm9hWE11YzNSaGRHVXVYM1poYkhWbElEMDlQU0FuSnp0Y2JpQWdmU3hjYmlBZ2MyaHZkMFZ5Y205eU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlDRjBhR2x6TG5Ob2IzZFNaWEYxYVhKbFpDZ3BJQ1ltSUNGMGFHbHpMbk4wWVhSbExsOXBjMVpoYkdsa08xeHVJQ0I5TEZ4dUlDQnBjMVpoYkdsa1ZtRnNkV1U2SUdaMWJtTjBhVzl1SUNoMllXeDFaU2tnZTF4dUlDQWdJSEpsZEhWeWJpQjBhR2x6TG5CeWIzQnpMbDlwYzFaaGJHbGtWbUZzZFdVdVkyRnNiQ2h1ZFd4c0xDQjBhR2x6TENCMllXeDFaU2s3WEc0Z0lIMWNibjA3WEc0aVhYMD0iLCJ2YXIgUmVhY3QgPSBnbG9iYWwuUmVhY3QgfHwgcmVxdWlyZSgncmVhY3QnKTtcbnZhciBGb3Jtc3kgPSB7fTtcbnZhciB2YWxpZGF0aW9uUnVsZXMgPSByZXF1aXJlKCcuL3ZhbGlkYXRpb25SdWxlcy5qcycpO1xudmFyIHV0aWxzID0gcmVxdWlyZSgnLi91dGlscy5qcycpO1xudmFyIE1peGluID0gcmVxdWlyZSgnLi9NaXhpbi5qcycpO1xudmFyIG9wdGlvbnMgPSB7fTtcblxuRm9ybXN5Lk1peGluID0gTWl4aW47XG5cbkZvcm1zeS5kZWZhdWx0cyA9IGZ1bmN0aW9uIChwYXNzZWRPcHRpb25zKSB7XG4gIG9wdGlvbnMgPSBwYXNzZWRPcHRpb25zO1xufTtcblxuRm9ybXN5LmFkZFZhbGlkYXRpb25SdWxlID0gZnVuY3Rpb24gKG5hbWUsIGZ1bmMpIHtcbiAgdmFsaWRhdGlvblJ1bGVzW25hbWVdID0gZnVuYztcbn07XG5cbkZvcm1zeS5Gb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIkZvcm1cIixcbiAgZ2V0SW5pdGlhbFN0YXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlzVmFsaWQ6IHRydWUsXG4gICAgICBpc1N1Ym1pdHRpbmc6IGZhbHNlLFxuICAgICAgY2FuQ2hhbmdlOiBmYWxzZVxuICAgIH07XG4gIH0sXG4gIGdldERlZmF1bHRQcm9wczogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB7XG4gICAgICBoZWFkZXJzOiB7fSxcbiAgICAgIG9uU3VjY2VzczogZnVuY3Rpb24gKCkge30sXG4gICAgICBvbkVycm9yOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uU3VibWl0OiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uVmFsaWRTdWJtaXQ6IGZ1bmN0aW9uICgpIHt9LFxuICAgICAgb25JbnZhbGlkU3VibWl0OiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uU3VibWl0dGVkOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uVmFsaWQ6IGZ1bmN0aW9uICgpIHt9LFxuICAgICAgb25JbnZhbGlkOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uQ2hhbmdlOiBmdW5jdGlvbiAoKSB7fVxuICAgIH07XG4gIH0sXG5cbiAgLy8gQWRkIGEgbWFwIHRvIHN0b3JlIHRoZSBpbnB1dHMgb2YgdGhlIGZvcm0sIGEgbW9kZWwgdG8gc3RvcmVcbiAgLy8gdGhlIHZhbHVlcyBvZiB0aGUgZm9ybSBhbmQgcmVnaXN0ZXIgY2hpbGQgaW5wdXRzXG4gIGNvbXBvbmVudFdpbGxNb3VudDogZnVuY3Rpb24gKCkge1xuICAgIHRoaXMuaW5wdXRzID0ge307XG4gICAgdGhpcy5tb2RlbCA9IHt9O1xuICAgIHRoaXMucmVnaXN0ZXJJbnB1dHModGhpcy5wcm9wcy5jaGlsZHJlbik7XG4gIH0sXG5cbiAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnZhbGlkYXRlRm9ybSgpO1xuICB9LFxuXG4gIGNvbXBvbmVudFdpbGxVcGRhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgaW5wdXRLZXlzID0gT2JqZWN0LmtleXModGhpcy5pbnB1dHMpO1xuXG4gICAgLy8gVGhlIHVwZGF0ZWQgY2hpbGRyZW4gYXJyYXkgaXMgbm90IGF2YWlsYWJsZSBoZXJlIGZvciBzb21lIHJlYXNvbixcbiAgICAvLyB3ZSBuZWVkIHRvIHdhaXQgZm9yIG5leHQgZXZlbnQgbG9vcFxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXG4gICAgICAvLyBUaGUgY29tcG9uZW50IG1pZ2h0IGhhdmUgYmVlbiB1bm1vdW50ZWQgb24gYW5cbiAgICAgIC8vIHVwZGF0ZVxuICAgICAgaWYgKHRoaXMuaXNNb3VudGVkKCkpIHtcblxuICAgICAgICB0aGlzLnJlZ2lzdGVySW5wdXRzKHRoaXMucHJvcHMuY2hpbGRyZW4pO1xuXG4gICAgICAgaWYgKHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9ycykge1xuICAgICAgICAgIHRoaXMuc2V0SW5wdXRWYWxpZGF0aW9uRXJyb3JzKHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9ycyk7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgbmV3SW5wdXRLZXlzID0gT2JqZWN0LmtleXModGhpcy5pbnB1dHMpO1xuICAgICAgICBpZiAodXRpbHMuYXJyYXlzRGlmZmVyKGlucHV0S2V5cywgbmV3SW5wdXRLZXlzKSkge1xuICAgICAgICAgIHRoaXMudmFsaWRhdGVGb3JtKCk7XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfS5iaW5kKHRoaXMpLCAwKTtcbiAgfSxcblxuICAvLyBVcGRhdGUgbW9kZWwsIHN1Ym1pdCB0byB1cmwgcHJvcCBhbmQgc2VuZCB0aGUgbW9kZWxcbiAgc3VibWl0OiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgLy8gVHJpZ2dlciBmb3JtIGFzIG5vdCBwcmlzdGluZS5cbiAgICAvLyBJZiBhbnkgaW5wdXRzIGhhdmUgbm90IGJlZW4gdG91Y2hlZCB5ZXQgdGhpcyB3aWxsIG1ha2UgdGhlbSBkaXJ0eVxuICAgIC8vIHNvIHZhbGlkYXRpb24gYmVjb21lcyB2aXNpYmxlIChpZiBiYXNlZCBvbiBpc1ByaXN0aW5lKVxuICAgIHRoaXMuc2V0Rm9ybVByaXN0aW5lKGZhbHNlKTtcblxuICAgIC8vIFRvIHN1cHBvcnQgdXNlIGNhc2VzIHdoZXJlIG5vIGFzeW5jIG9yIHJlcXVlc3Qgb3BlcmF0aW9uIGlzIG5lZWRlZC5cbiAgICAvLyBUaGUgXCJvblN1Ym1pdFwiIGNhbGxiYWNrIGlzIGNhbGxlZCB3aXRoIHRoZSBtb2RlbCBlLmcuIHtmaWVsZE5hbWU6IFwibXlWYWx1ZVwifSxcbiAgICAvLyBpZiB3YW50aW5nIHRvIHJlc2V0IHRoZSBlbnRpcmUgZm9ybSB0byBvcmlnaW5hbCBzdGF0ZSwgdGhlIHNlY29uZCBwYXJhbSBpcyBhIGNhbGxiYWNrIGZvciB0aGlzLlxuICAgIGlmICghdGhpcy5wcm9wcy51cmwpIHtcbiAgICAgIHRoaXMudXBkYXRlTW9kZWwoKTtcbiAgICAgIHZhciBtb2RlbCA9IHRoaXMubWFwTW9kZWwoKTtcbiAgICAgIHRoaXMucHJvcHMub25TdWJtaXQobW9kZWwsIHRoaXMucmVzZXRNb2RlbCwgdGhpcy51cGRhdGVJbnB1dHNXaXRoRXJyb3IpO1xuICAgICAgdGhpcy5zdGF0ZS5pc1ZhbGlkID8gdGhpcy5wcm9wcy5vblZhbGlkU3VibWl0KG1vZGVsLCB0aGlzLnJlc2V0TW9kZWwpIDogdGhpcy5wcm9wcy5vbkludmFsaWRTdWJtaXQobW9kZWwsIHRoaXMucmVzZXRNb2RlbCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVNb2RlbCgpO1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgaXNTdWJtaXR0aW5nOiB0cnVlXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzLm9uU3VibWl0KHRoaXMubWFwTW9kZWwoKSwgdGhpcy5yZXNldE1vZGVsLCB0aGlzLnVwZGF0ZUlucHV0c1dpdGhFcnJvcik7XG5cbiAgICB2YXIgaGVhZGVycyA9IChPYmplY3Qua2V5cyh0aGlzLnByb3BzLmhlYWRlcnMpLmxlbmd0aCAmJiB0aGlzLnByb3BzLmhlYWRlcnMpIHx8IG9wdGlvbnMuaGVhZGVycyB8fCB7fTtcblxuICAgIHZhciBtZXRob2QgPSB0aGlzLnByb3BzLm1ldGhvZCAmJiB1dGlscy5hamF4W3RoaXMucHJvcHMubWV0aG9kLnRvTG93ZXJDYXNlKCldID8gdGhpcy5wcm9wcy5tZXRob2QudG9Mb3dlckNhc2UoKSA6ICdwb3N0JztcbiAgICB1dGlscy5hamF4W21ldGhvZF0odGhpcy5wcm9wcy51cmwsIHRoaXMubWFwTW9kZWwoKSwgdGhpcy5wcm9wcy5jb250ZW50VHlwZSB8fCBvcHRpb25zLmNvbnRlbnRUeXBlIHx8ICdqc29uJywgaGVhZGVycylcbiAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkge1xuICAgICAgICB0aGlzLnByb3BzLm9uU3VjY2VzcyhyZXNwb25zZSk7XG4gICAgICAgIHRoaXMucHJvcHMub25TdWJtaXR0ZWQoKTtcbiAgICAgIH0uYmluZCh0aGlzKSlcbiAgICAgIC5jYXRjaCh0aGlzLmZhaWxTdWJtaXQpO1xuICB9LFxuXG4gIG1hcE1vZGVsOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubWFwcGluZyA/IHRoaXMucHJvcHMubWFwcGluZyh0aGlzLm1vZGVsKSA6IHRoaXMubW9kZWw7XG4gIH0sXG5cbiAgLy8gR29lcyB0aHJvdWdoIGFsbCByZWdpc3RlcmVkIGNvbXBvbmVudHMgYW5kXG4gIC8vIHVwZGF0ZXMgdGhlIG1vZGVsIHZhbHVlc1xuICB1cGRhdGVNb2RlbDogZnVuY3Rpb24gKCkge1xuICAgIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lKSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gdGhpcy5pbnB1dHNbbmFtZV07XG4gICAgICB0aGlzLm1vZGVsW25hbWVdID0gY29tcG9uZW50LnN0YXRlLl92YWx1ZTtcbiAgICB9LmJpbmQodGhpcykpO1xuICB9LFxuXG4gIC8vIFJlc2V0IGVhY2gga2V5IGluIHRoZSBtb2RlbCB0byB0aGUgb3JpZ2luYWwgLyBpbml0aWFsIHZhbHVlXG4gIHJlc2V0TW9kZWw6IGZ1bmN0aW9uICgpIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmlucHV0cykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdGhpcy5pbnB1dHNbbmFtZV0ucmVzZXRWYWx1ZSgpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gICAgdGhpcy52YWxpZGF0ZUZvcm0oKTtcbiAgfSxcblxuICBzZXRJbnB1dFZhbGlkYXRpb25FcnJvcnM6IGZ1bmN0aW9uIChlcnJvcnMpIHtcbiAgICAgT2JqZWN0LmtleXModGhpcy5pbnB1dHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gdGhpcy5pbnB1dHNbbmFtZV07XG4gICAgICB2YXIgYXJncyA9IFt7XG4gICAgICAgIF9pc1ZhbGlkOiAhKG5hbWUgaW4gZXJyb3JzKSxcbiAgICAgICAgX3NlcnZlckVycm9yOiBlcnJvcnNbbmFtZV1cbiAgICAgIH1dO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlLmFwcGx5KGNvbXBvbmVudCwgYXJncyk7XG4gICAgfS5iaW5kKHRoaXMpKTsgICBcbiAgfSxcblxuICAvLyBHbyB0aHJvdWdoIGVycm9ycyBmcm9tIHNlcnZlciBhbmQgZ3JhYiB0aGUgY29tcG9uZW50c1xuICAvLyBzdG9yZWQgaW4gdGhlIGlucHV0cyBtYXAuIENoYW5nZSB0aGVpciBzdGF0ZSB0byBpbnZhbGlkXG4gIC8vIGFuZCBzZXQgdGhlIHNlcnZlckVycm9yIG1lc3NhZ2VcbiAgdXBkYXRlSW5wdXRzV2l0aEVycm9yOiBmdW5jdGlvbiAoZXJyb3JzKSB7XG4gICAgT2JqZWN0LmtleXMoZXJyb3JzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuXG4gICAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBhcmUgdHJ5aW5nIHRvIHVwZGF0ZSBhbiBpbnB1dCB0aGF0IGRvZXMgbm90IGV4aXN0cy4gVmVyaWZ5IGVycm9ycyBvYmplY3Qgd2l0aCBpbnB1dCBuYW1lcy4gJyArIEpTT04uc3RyaW5naWZ5KGVycm9ycykpO1xuICAgICAgfVxuXG4gICAgICB2YXIgYXJncyA9IFt7XG4gICAgICAgIF9pc1ZhbGlkOiBmYWxzZSxcbiAgICAgICAgX3NlcnZlckVycm9yOiBlcnJvcnNbbmFtZV1cbiAgICAgIH1dO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlLmFwcGx5KGNvbXBvbmVudCwgYXJncyk7XG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcblxuICBmYWlsU3VibWl0OiBmdW5jdGlvbiAoZXJyb3JzKSB7XG4gICAgdGhpcy51cGRhdGVJbnB1dHNXaXRoRXJyb3IoZXJyb3JzKTtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGlzU3VibWl0dGluZzogZmFsc2VcbiAgICB9KTtcbiAgICB0aGlzLnByb3BzLm9uRXJyb3IoZXJyb3JzKTtcbiAgICB0aGlzLnByb3BzLm9uU3VibWl0dGVkKCk7XG4gIH0sXG5cbiAgLy8gVHJhdmVyc2UgdGhlIGNoaWxkcmVuIGFuZCBjaGlsZHJlbiBvZiBjaGlsZHJlbiB0byBmaW5kXG4gIC8vIGFsbCBpbnB1dHMgYnkgY2hlY2tpbmcgdGhlIG5hbWUgcHJvcC4gTWF5YmUgZG8gYSBiZXR0ZXJcbiAgLy8gY2hlY2sgaGVyZVxuICByZWdpc3RlcklucHV0czogZnVuY3Rpb24gKGNoaWxkcmVuKSB7XG4gICAgUmVhY3QuQ2hpbGRyZW4uZm9yRWFjaChjaGlsZHJlbiwgZnVuY3Rpb24gKGNoaWxkKSB7XG5cbiAgICAgIGlmIChjaGlsZCAmJiBjaGlsZC5wcm9wcyAmJiBjaGlsZC5wcm9wcy5uYW1lKSB7XG4gICAgICAgIGNoaWxkLnByb3BzLl9hdHRhY2hUb0Zvcm0gPSB0aGlzLmF0dGFjaFRvRm9ybTtcbiAgICAgICAgY2hpbGQucHJvcHMuX2RldGFjaEZyb21Gb3JtID0gdGhpcy5kZXRhY2hGcm9tRm9ybTtcbiAgICAgICAgY2hpbGQucHJvcHMuX3ZhbGlkYXRlID0gdGhpcy52YWxpZGF0ZTtcbiAgICAgICAgY2hpbGQucHJvcHMuX2lzRm9ybURpc2FibGVkID0gdGhpcy5pc0Zvcm1EaXNhYmxlZDtcbiAgICAgICAgY2hpbGQucHJvcHMuX2lzVmFsaWRWYWx1ZSA9IHRoaXMucnVuVmFsaWRhdGlvbjtcbiAgICAgIH1cblxuICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLnByb3BzICYmIGNoaWxkLnByb3BzLmNoaWxkcmVuKSB7XG4gICAgICAgIHRoaXMucmVnaXN0ZXJJbnB1dHMoY2hpbGQucHJvcHMuY2hpbGRyZW4pO1xuICAgICAgfVxuXG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcblxuICBpc0Zvcm1EaXNhYmxlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmRpc2FibGVkO1xuICB9LFxuXG4gIGdldEN1cnJlbnRWYWx1ZXM6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5pbnB1dHMpLnJlZHVjZShmdW5jdGlvbiAoZGF0YSwgbmFtZSkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuICAgICAgZGF0YVtuYW1lXSA9IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgICByZXR1cm4gZGF0YTtcbiAgICB9LmJpbmQodGhpcyksIHt9KTtcbiAgfSxcblxuICBzZXRGb3JtUHJpc3RpbmU6IGZ1bmN0aW9uIChpc1ByaXN0aW5lKSB7XG4gICAgdmFyIGlucHV0cyA9IHRoaXMuaW5wdXRzO1xuICAgIHZhciBpbnB1dEtleXMgPSBPYmplY3Qua2V5cyhpbnB1dHMpO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggY29tcG9uZW50IGFuZCBzZXQgaXQgYXMgcHJpc3RpbmVcbiAgICAvLyBvciBcImRpcnR5XCIuXG4gICAgaW5wdXRLZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gaW5wdXRzW25hbWVdO1xuICAgICAgY29tcG9uZW50LnNldFN0YXRlKHtcbiAgICAgICAgX2lzUHJpc3RpbmU6IGlzUHJpc3RpbmVcbiAgICAgIH0pO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG5cbiAgLy8gVXNlIHRoZSBiaW5kZWQgdmFsdWVzIGFuZCB0aGUgYWN0dWFsIGlucHV0IHZhbHVlIHRvXG4gIC8vIHZhbGlkYXRlIHRoZSBpbnB1dCBhbmQgc2V0IGl0cyBzdGF0ZS4gVGhlbiBjaGVjayB0aGVcbiAgLy8gc3RhdGUgb2YgdGhlIGZvcm0gaXRzZWxmXG4gIHZhbGlkYXRlOiBmdW5jdGlvbiAoY29tcG9uZW50KSB7XG5cbiAgICAvLyBUcmlnZ2VyIG9uQ2hhbmdlXG4gICAgaWYgKHRoaXMuc3RhdGUuY2FuQ2hhbmdlKSB7XG4gICAgICB0aGlzLnByb3BzLm9uQ2hhbmdlKHRoaXMuZ2V0Q3VycmVudFZhbHVlcygpKTtcbiAgICB9XG5cbiAgICB2YXIgaXNWYWxpZCA9IHRydWU7XG4gICAgaWYgKGNvbXBvbmVudC52YWxpZGF0ZSkge1xuICAgICAgaXNWYWxpZCA9IGNvbXBvbmVudC52YWxpZGF0ZSgpO1xuICAgIH0gZWxzZSBpZiAoY29tcG9uZW50LnByb3BzLnJlcXVpcmVkIHx8IGNvbXBvbmVudC5fdmFsaWRhdGlvbnMpIHtcbiAgICAgIGlzVmFsaWQgPSB0aGlzLnJ1blZhbGlkYXRpb24oY29tcG9uZW50KTtcbiAgICB9XG5cbiAgICAvLyBSdW4gdGhyb3VnaCB0aGUgdmFsaWRhdGlvbnMsIHNwbGl0IHRoZW0gdXAgYW5kIGNhbGxcbiAgICAvLyB0aGUgdmFsaWRhdG9yIElGIHRoZXJlIGlzIGEgdmFsdWUgb3IgaXQgaXMgcmVxdWlyZWRcbiAgICBjb21wb25lbnQuc2V0U3RhdGUoe1xuICAgICAgX2lzVmFsaWQ6IGlzVmFsaWQsXG4gICAgICBfc2VydmVyRXJyb3I6IG51bGxcbiAgICB9LCB0aGlzLnZhbGlkYXRlRm9ybSk7XG5cbiAgfSxcblxuICAvLyBDaGVja3MgdmFsaWRhdGlvbiBvbiBjdXJyZW50IHZhbHVlIG9yIGEgcGFzc2VkIHZhbHVlXG4gIHJ1blZhbGlkYXRpb246IGZ1bmN0aW9uIChjb21wb25lbnQsIHZhbHVlKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IHRydWU7XG4gICAgXG4gICAgdmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID09PSAyID8gdmFsdWUgOiBjb21wb25lbnQuc3RhdGUuX3ZhbHVlO1xuICAgIGlmIChjb21wb25lbnQuX3ZhbGlkYXRpb25zLmxlbmd0aCAmJiAoY29tcG9uZW50LnByb3BzLnJlcXVpcmVkIHx8IHZhbHVlICE9PSAnJykpIHtcbiAgICAgIGNvbXBvbmVudC5fdmFsaWRhdGlvbnMuc3BsaXQoL1xcLCg/IVtee1xcW10qW31cXF1dKS9nKS5mb3JFYWNoKGZ1bmN0aW9uICh2YWxpZGF0aW9uKSB7XG4gICAgICAgIHZhciBhcmdzID0gdmFsaWRhdGlvbi5zcGxpdCgnOicpO1xuICAgICAgICB2YXIgdmFsaWRhdGVNZXRob2QgPSBhcmdzLnNoaWZ0KCk7XG4gICAgICAgIGFyZ3MgPSBhcmdzLm1hcChmdW5jdGlvbiAoYXJnKSB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKGFyZyk7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmV0dXJuIGFyZzsgLy8gSXQgaXMgYSBzdHJpbmcgaWYgaXQgY2FuIG5vdCBwYXJzZSBpdFxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGFyZ3MgPSBbdmFsdWVdLmNvbmNhdChhcmdzKTtcbiAgICAgICAgaWYgKCF2YWxpZGF0aW9uUnVsZXNbdmFsaWRhdGVNZXRob2RdKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGb3Jtc3kgZG9lcyBub3QgaGF2ZSB0aGUgdmFsaWRhdGlvbiBydWxlOiAnICsgdmFsaWRhdGVNZXRob2QpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdmFsaWRhdGlvblJ1bGVzW3ZhbGlkYXRlTWV0aG9kXS5hcHBseSh0aGlzLmdldEN1cnJlbnRWYWx1ZXMoKSwgYXJncykpIHtcbiAgICAgICAgICBpc1ZhbGlkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0uYmluZCh0aGlzKSk7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgY29tcG9uZW50LmNoZWNrVmFsaWRpdHkgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgLy8gdGhlIGNvbXBvbmVudCBkZWZpbmVzIGFuIGV4cGxpY2l0IGNoZWNrVmFsaWRpdHkgZnVuY3Rpb25cbiAgICAgIGlzVmFsaWQgPSBjb21wb25lbnQuY2hlY2tWYWxpZGl0eSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIGlzVmFsaWQ7XG4gIH0sXG5cbiAgLy8gVmFsaWRhdGUgdGhlIGZvcm0gYnkgZ29pbmcgdGhyb3VnaCBhbGwgY2hpbGQgaW5wdXQgY29tcG9uZW50c1xuICAvLyBhbmQgY2hlY2sgdGhlaXIgc3RhdGVcbiAgdmFsaWRhdGVGb3JtOiBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGFsbElzVmFsaWQgPSB0cnVlO1xuICAgIHZhciBpbnB1dHMgPSB0aGlzLmlucHV0cztcbiAgICB2YXIgaW5wdXRLZXlzID0gT2JqZWN0LmtleXMoaW5wdXRzKTtcblxuICAgIC8vIFdlIG5lZWQgYSBjYWxsYmFjayBhcyB3ZSBhcmUgdmFsaWRhdGluZyBhbGwgaW5wdXRzIGFnYWluLiBUaGlzIHdpbGxcbiAgICAvLyBydW4gd2hlbiB0aGUgbGFzdCBjb21wb25lbnQgaGFzIHNldCBpdHMgc3RhdGVcbiAgICB2YXIgb25WYWxpZGF0aW9uQ29tcGxldGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICBpbnB1dEtleXMuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgICBpZiAoIWlucHV0c1tuYW1lXS5zdGF0ZS5faXNWYWxpZCkge1xuICAgICAgICAgIGFsbElzVmFsaWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfS5iaW5kKHRoaXMpKTtcblxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgIGlzVmFsaWQ6IGFsbElzVmFsaWRcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoYWxsSXNWYWxpZCkge1xuICAgICAgICB0aGlzLnByb3BzLm9uVmFsaWQoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucHJvcHMub25JbnZhbGlkKCk7XG4gICAgICB9XG5cbiAgICAgIC8vIFRlbGwgdGhlIGZvcm0gdGhhdCBpdCBjYW4gc3RhcnQgdG8gdHJpZ2dlciBjaGFuZ2UgZXZlbnRzXG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgY2FuQ2hhbmdlOiB0cnVlXG4gICAgICB9KTtcblxuICAgIH0uYmluZCh0aGlzKTtcblxuICAgIC8vIFJ1biB2YWxpZGF0aW9uIGFnYWluIGluIGNhc2UgYWZmZWN0ZWQgYnkgb3RoZXIgaW5wdXRzLiBUaGVcbiAgICAvLyBsYXN0IGNvbXBvbmVudCB2YWxpZGF0ZWQgd2lsbCBydW4gdGhlIG9uVmFsaWRhdGlvbkNvbXBsZXRlIGNhbGxiYWNrXG4gICAgaW5wdXRLZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gaW5wdXRzW25hbWVdO1xuICAgICAgdmFyIGlzVmFsaWQgPSB0aGlzLnJ1blZhbGlkYXRpb24oY29tcG9uZW50KTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZSh7XG4gICAgICAgIF9pc1ZhbGlkOiBpc1ZhbGlkLFxuICAgICAgICBfc2VydmVyRXJyb3I6IG51bGxcbiAgICAgIH0sIGluZGV4ID09PSBpbnB1dEtleXMubGVuZ3RoIC0gMSA/IG9uVmFsaWRhdGlvbkNvbXBsZXRlIDogbnVsbCk7XG4gICAgfS5iaW5kKHRoaXMpKTtcblxuICAgIC8vIElmIHRoZXJlIGFyZSBubyBpbnB1dHMsIHNldCBzdGF0ZSB3aGVyZSBmb3JtIGlzIHJlYWR5IHRvIHRyaWdnZXJcbiAgICAvLyBjaGFuZ2UgZXZlbnQuIE5ldyBpbnB1dHMgbWlnaHQgYmUgYWRkZWQgbGF0ZXJcbiAgICBpZiAoIWlucHV0S2V5cy5sZW5ndGggJiYgdGhpcy5pc01vdW50ZWQoKSkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgIGNhbkNoYW5nZTogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9LFxuXG4gIC8vIE1ldGhvZCBwdXQgb24gZWFjaCBpbnB1dCBjb21wb25lbnQgdG8gcmVnaXN0ZXJcbiAgLy8gaXRzZWxmIHRvIHRoZSBmb3JtXG4gIGF0dGFjaFRvRm9ybTogZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuICAgIHRoaXMuaW5wdXRzW2NvbXBvbmVudC5wcm9wcy5uYW1lXSA9IGNvbXBvbmVudDtcbiAgICB0aGlzLm1vZGVsW2NvbXBvbmVudC5wcm9wcy5uYW1lXSA9IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgdGhpcy52YWxpZGF0ZShjb21wb25lbnQpO1xuICB9LFxuXG4gIC8vIE1ldGhvZCBwdXQgb24gZWFjaCBpbnB1dCBjb21wb25lbnQgdG8gdW5yZWdpc3RlclxuICAvLyBpdHNlbGYgZnJvbSB0aGUgZm9ybVxuICBkZXRhY2hGcm9tRm9ybTogZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuICAgIGRlbGV0ZSB0aGlzLmlucHV0c1tjb21wb25lbnQucHJvcHMubmFtZV07XG4gICAgZGVsZXRlIHRoaXMubW9kZWxbY29tcG9uZW50LnByb3BzLm5hbWVdO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcblxuICAgIHJldHVybiBSZWFjdC5ET00uZm9ybSh7XG4gICAgICAgIG9uU3VibWl0OiB0aGlzLnN1Ym1pdCxcbiAgICAgICAgY2xhc3NOYW1lOiB0aGlzLnByb3BzLmNsYXNzTmFtZVxuICAgICAgfSxcbiAgICAgIHRoaXMucHJvcHMuY2hpbGRyZW5cbiAgICApO1xuXG4gIH1cbn0pO1xuXG5pZiAoIWdsb2JhbC5leHBvcnRzICYmICFnbG9iYWwubW9kdWxlICYmICghZ2xvYmFsLmRlZmluZSB8fCAhZ2xvYmFsLmRlZmluZS5hbWQpKSB7XG4gIGdsb2JhbC5Gb3Jtc3kgPSBGb3Jtc3k7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gRm9ybXN5O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZiV0ZwYmk1cWN5SXNJbk52ZFhKalpYTWlPbHNpTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjbU12YldGcGJpNXFjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4SlFVRkpMRXRCUVVzc1IwRkJSeXhOUVVGTkxFTkJRVU1zUzBGQlN5eEpRVUZKTEU5QlFVOHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRCUVVNM1F5eEpRVUZKTEUxQlFVMHNSMEZCUnl4RlFVRkZMRU5CUVVNN1FVRkRhRUlzU1VGQlNTeGxRVUZsTEVkQlFVY3NUMEZCVHl4RFFVRkRMSE5DUVVGelFpeERRVUZETEVOQlFVTTdRVUZEZEVRc1NVRkJTU3hMUVVGTExFZEJRVWNzVDBGQlR5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPMEZCUTJ4RExFbEJRVWtzUzBGQlN5eEhRVUZITEU5QlFVOHNRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRCUVVOc1F5eEpRVUZKTEU5QlFVOHNSMEZCUnl4RlFVRkZMRU5CUVVNN08wRkJSV3BDTEUxQlFVMHNRMEZCUXl4TFFVRkxMRWRCUVVjc1MwRkJTeXhEUVVGRE96dEJRVVZ5UWl4TlFVRk5MRU5CUVVNc1VVRkJVU3hIUVVGSExGVkJRVlVzWVVGQllTeEZRVUZGTzBWQlEzcERMRTlCUVU4c1IwRkJSeXhoUVVGaExFTkJRVU03UVVGRE1VSXNRMEZCUXl4RFFVRkRPenRCUVVWR0xFMUJRVTBzUTBGQlF5eHBRa0ZCYVVJc1IwRkJSeXhWUVVGVkxFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVTdSVUZETDBNc1pVRkJaU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0QlFVTXZRaXhEUVVGRExFTkJRVU03TzBGQlJVWXNhVU5CUVdsRExHOUNRVUZCTzBWQlF5OUNMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVODdUVUZEVEN4UFFVRlBMRVZCUVVVc1NVRkJTVHROUVVOaUxGbEJRVmtzUlVGQlJTeExRVUZMTzAxQlEyNUNMRk5CUVZNc1JVRkJSU3hMUVVGTE8wdEJRMnBDTEVOQlFVTTdSMEZEU0R0RlFVTkVMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVODdUVUZEVEN4UFFVRlBMRVZCUVVVc1JVRkJSVHROUVVOWUxGTkJRVk1zUlVGQlJTeFpRVUZaTEVWQlFVVTdUVUZEZWtJc1QwRkJUeXhGUVVGRkxGbEJRVmtzUlVGQlJUdE5RVU4yUWl4UlFVRlJMRVZCUVVVc1dVRkJXU3hGUVVGRk8wMUJRM2hDTEdGQlFXRXNSVUZCUlN4WlFVRlpMRVZCUVVVN1RVRkROMElzWlVGQlpTeEZRVUZGTEZsQlFWa3NSVUZCUlR0TlFVTXZRaXhYUVVGWExFVkJRVVVzV1VGQldTeEZRVUZGTzAxQlF6TkNMRTlCUVU4c1JVRkJSU3haUVVGWkxFVkJRVVU3VFVGRGRrSXNVMEZCVXl4RlFVRkZMRmxCUVZrc1JVRkJSVHROUVVONlFpeFJRVUZSTEVWQlFVVXNXVUZCV1N4RlFVRkZPMHRCUTNwQ0xFTkJRVU03UVVGRFRpeEhRVUZITzBGQlEwZzdRVUZEUVRzN1JVRkZSU3hyUWtGQmEwSXNSVUZCUlN4WlFVRlpPMGxCUXpsQ0xFbEJRVWtzUTBGQlF5eE5RVUZOTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJwQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJoQ0xFbEJRVWtzUTBGQlF5eGpRVUZqTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dEJRVU0zUXl4SFFVRkhPenRGUVVWRUxHbENRVUZwUWl4RlFVRkZMRmxCUVZrN1NVRkROMElzU1VGQlNTeERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRPMEZCUTNoQ0xFZEJRVWM3TzBWQlJVUXNiVUpCUVcxQ0xFVkJRVVVzV1VGQldUdEJRVU51UXl4SlFVRkpMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wRkJRemRETzBGQlEwRTdPMEZCUlVFc1NVRkJTU3hWUVVGVkxFTkJRVU1zV1VGQldUdEJRVU16UWp0QlFVTkJPenRCUVVWQkxFMUJRVTBzU1VGQlNTeEpRVUZKTEVOQlFVTXNVMEZCVXl4RlFVRkZMRVZCUVVVN08wRkJSVFZDTEZGQlFWRXNTVUZCU1N4RFFVRkRMR05CUVdNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPenRQUVVVeFF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1owSkJRV2RDTEVWQlFVVTdWVUZET1VJc1NVRkJTU3hEUVVGRExIZENRVUYzUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1EwRkJRenRCUVVOeVJTeFRRVUZUT3p0UlFVVkVMRWxCUVVrc1dVRkJXU3hIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xRkJRelZETEVsQlFVa3NTMEZCU3l4RFFVRkRMRmxCUVZrc1EwRkJReXhUUVVGVExFVkJRVVVzV1VGQldTeERRVUZETEVWQlFVVTdWVUZETDBNc1NVRkJTU3hEUVVGRExGbEJRVmtzUlVGQlJTeERRVUZETzBGQlF6bENMRk5CUVZNN08wRkJSVlFzVDBGQlR6czdTMEZGUml4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTnlRaXhIUVVGSE8wRkJRMGc3TzBWQlJVVXNUVUZCVFN4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8wRkJRek5DTEVsQlFVa3NTMEZCU3l4RFFVRkRMR05CUVdNc1JVRkJSU3hEUVVGRE8wRkJRek5DTzBGQlEwRTdRVUZEUVRzN1FVRkZRU3hKUVVGSkxFbEJRVWtzUTBGQlF5eGxRVUZsTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1FVRkRhRU03UVVGRFFUdEJRVU5CT3p0SlFVVkpMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NSVUZCUlR0TlFVTnVRaXhKUVVGSkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTTdUVUZEYmtJc1NVRkJTU3hMUVVGTExFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RFFVRkRPMDFCUXpWQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RFFVRkRMRXRCUVVzc1JVRkJSU3hKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVsQlFVa3NRMEZCUXl4eFFrRkJjVUlzUTBGQlF5eERRVUZETzAxQlEzaEZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1lVRkJZU3hEUVVGRExFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGxRVUZsTEVOQlFVTXNTMEZCU3l4RlFVRkZMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF6dE5RVU16U0N4UFFVRlBPMEZCUTJJc1MwRkJTenM3U1VGRlJDeEpRVUZKTEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNN1NVRkRia0lzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXp0TlFVTmFMRmxCUVZrc1JVRkJSU3hKUVVGSk8wRkJRM2hDTEV0QlFVc3NRMEZCUXl4RFFVRkRPenRCUVVWUUxFbEJRVWtzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZGTEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1NVRkJTU3hEUVVGRExIRkNRVUZ4UWl4RFFVRkRMRU5CUVVNN08wRkJSWFJHTEVsQlFVa3NTVUZCU1N4UFFVRlBMRWRCUVVjc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zVFVGQlRTeEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhMUVVGTExFOUJRVThzUTBGQlF5eFBRVUZQTEVsQlFVa3NSVUZCUlN4RFFVRkRPenRKUVVWMFJ5eEpRVUZKTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEZkQlFWY3NSVUZCUlN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNWMEZCVnl4RlFVRkZMRWRCUVVjc1RVRkJUU3hEUVVGRE8wbEJRM3BJTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRVZCUVVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1YwRkJWeXhKUVVGSkxFOUJRVThzUTBGQlF5eFhRVUZYTEVsQlFVa3NUVUZCVFN4RlFVRkZMRTlCUVU4c1EwRkJRenRQUVVOc1NDeEpRVUZKTEVOQlFVTXNWVUZCVlN4UlFVRlJMRVZCUVVVN1VVRkRlRUlzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU03VVVGREwwSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhYUVVGWExFVkJRVVVzUTBGQlF6dFBRVU14UWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dFBRVU5hTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU03UVVGRE9VSXNSMEZCUnpzN1JVRkZSQ3hSUVVGUkxFVkJRVVVzV1VGQldUdEpRVU53UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRE8wRkJRelZGTEVkQlFVYzdRVUZEU0R0QlFVTkJPenRGUVVWRkxGZEJRVmNzUlVGQlJTeFpRVUZaTzBsQlEzWkNMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhWUVVGVkxFbEJRVWtzUlVGQlJUdE5RVU12UXl4SlFVRkpMRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUTJ4RExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTTdTMEZETTBNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTnNRaXhIUVVGSE8wRkJRMGc3TzBWQlJVVXNWVUZCVlN4RlFVRkZMRmxCUVZrN1NVRkRkRUlzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZPMDFCUXk5RExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU03UzBGRGFFTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5rTEVsQlFVa3NRMEZCUXl4WlFVRlpMRVZCUVVVc1EwRkJRenRCUVVONFFpeEhRVUZIT3p0RlFVVkVMSGRDUVVGM1FpeEZRVUZGTEZWQlFWVXNUVUZCVFN4RlFVRkZPMHRCUTNwRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFOUJRVThzUTBGQlF5eFZRVUZWTEVsQlFVa3NSVUZCUlN4TFFVRkxMRVZCUVVVN1RVRkRka1FzU1VGQlNTeFRRVUZUTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU5zUXl4SlFVRkpMRWxCUVVrc1IwRkJSeXhEUVVGRE8xRkJRMVlzVVVGQlVTeEZRVUZGTEVWQlFVVXNTVUZCU1N4SlFVRkpMRTFCUVUwc1EwRkJRenRSUVVNelFpeFpRVUZaTEVWQlFVVXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJRenRQUVVNelFpeERRVUZETEVOQlFVTTdUVUZEU0N4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNN1MwRkRNME1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOc1FpeEhRVUZITzBGQlEwZzdRVUZEUVR0QlFVTkJPenRGUVVWRkxIRkNRVUZ4UWl4RlFVRkZMRlZCUVZVc1RVRkJUU3hGUVVGRk8wbEJRM1pETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSVHRCUVVOMlJDeE5RVUZOTEVsQlFVa3NVMEZCVXl4SFFVRkhMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdPMDFCUld4RExFbEJRVWtzUTBGQlF5eFRRVUZUTEVWQlFVVTdVVUZEWkN4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExHbEhRVUZwUnl4SFFVRkhMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTndTaXhQUVVGUE96dE5RVVZFTEVsQlFVa3NTVUZCU1N4SFFVRkhMRU5CUVVNN1VVRkRWaXhSUVVGUkxFVkJRVVVzUzBGQlN6dFJRVU5tTEZsQlFWa3NSVUZCUlN4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRE8wOUJRek5DTEVOQlFVTXNRMEZCUXp0TlFVTklMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRMUVVNelF5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRMnhDTEVkQlFVYzdPMFZCUlVRc1ZVRkJWU3hGUVVGRkxGVkJRVlVzVFVGQlRTeEZRVUZGTzBsQlF6VkNMRWxCUVVrc1EwRkJReXh4UWtGQmNVSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRKUVVOdVF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1dVRkJXU3hGUVVGRkxFdEJRVXM3UzBGRGNFSXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1NVRkRNMElzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4WFFVRlhMRVZCUVVVc1EwRkJRenRCUVVNM1FpeEhRVUZITzBGQlEwZzdRVUZEUVR0QlFVTkJPenRGUVVWRkxHTkJRV01zUlVGQlJTeFZRVUZWTEZGQlFWRXNSVUZCUlR0QlFVTjBReXhKUVVGSkxFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNUMEZCVHl4RFFVRkRMRkZCUVZFc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUczdUVUZGYUVRc1NVRkJTU3hMUVVGTExFbEJRVWtzUzBGQlN5eERRVUZETEV0QlFVc3NTVUZCU1N4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUlVGQlJUdFJRVU0xUXl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExHRkJRV0VzUjBGQlJ5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RFFVRkRPMUZCUXpsRExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNaVUZCWlN4SFFVRkhMRWxCUVVrc1EwRkJReXhqUVVGakxFTkJRVU03VVVGRGJFUXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhUUVVGVExFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXp0UlFVTjBReXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEdWQlFXVXNSMEZCUnl4SlFVRkpMRU5CUVVNc1kwRkJZeXhEUVVGRE8xRkJRMnhFTEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1lVRkJZU3hIUVVGSExFbEJRVWtzUTBGQlF5eGhRVUZoTEVOQlFVTTdRVUZEZGtRc1QwRkJUenM3VFVGRlJDeEpRVUZKTEV0QlFVc3NTVUZCU1N4TFFVRkxMRU5CUVVNc1MwRkJTeXhKUVVGSkxFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RlFVRkZPMUZCUTJoRUxFbEJRVWtzUTBGQlF5eGpRVUZqTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dEJRVU5zUkN4UFFVRlBPenRMUVVWR0xFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRiRUlzUjBGQlJ6czdSVUZGUkN4alFVRmpMRVZCUVVVc1dVRkJXVHRKUVVNeFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wRkJReTlDTEVkQlFVYzdPMFZCUlVRc1owSkJRV2RDTEVWQlFVVXNXVUZCV1R0SlFVTTFRaXhQUVVGUExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eFZRVUZWTEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVN1RVRkRNMFFzU1VGQlNTeFRRVUZUTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU5zUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNN1RVRkRjRU1zVDBGQlR5eEpRVUZKTEVOQlFVTTdTMEZEWWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTjBRaXhIUVVGSE96dEZRVVZFTEdWQlFXVXNSVUZCUlN4VlFVRlZMRlZCUVZVc1JVRkJSVHRKUVVOeVF5eEpRVUZKTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRE8wRkJRemRDTEVsQlFVa3NTVUZCU1N4VFFVRlRMRWRCUVVjc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTjRRenRCUVVOQk96dEpRVVZKTEZOQlFWTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hKUVVGSkxFVkJRVVVzUzBGQlN5eEZRVUZGTzAxQlEzWkRMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TlFVTTNRaXhUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETzFGQlEycENMRmRCUVZjc1JVRkJSU3hWUVVGVk8wOUJRM2hDTEVOQlFVTXNRMEZCUXp0TFFVTktMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZEYkVJc1IwRkJSenRCUVVOSU8wRkJRMEU3UVVGRFFUczdRVUZGUVN4RlFVRkZMRkZCUVZFc1JVRkJSU3hWUVVGVkxGTkJRVk1zUlVGQlJUdEJRVU5xUXpzN1NVRkZTU3hKUVVGSkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVMEZCVXl4RlFVRkZPMDFCUTNoQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RFFVRkRMRU5CUVVNN1FVRkRia1FzUzBGQlN6czdTVUZGUkN4SlFVRkpMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU03U1VGRGJrSXNTVUZCU1N4VFFVRlRMRU5CUVVNc1VVRkJVU3hGUVVGRk8wMUJRM1JDTEU5QlFVOHNSMEZCUnl4VFFVRlRMRU5CUVVNc1VVRkJVU3hGUVVGRkxFTkJRVU03UzBGRGFFTXNUVUZCVFN4SlFVRkpMRk5CUVZNc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeEpRVUZKTEZOQlFWTXNRMEZCUXl4WlFVRlpMRVZCUVVVN1RVRkROMFFzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4aFFVRmhMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU03UVVGRE9VTXNTMEZCU3p0QlFVTk1PMEZCUTBFN08wbEJSVWtzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXp0TlFVTnFRaXhSUVVGUkxFVkJRVVVzVDBGQlR6dE5RVU5xUWl4WlFVRlpMRVZCUVVVc1NVRkJTVHRCUVVONFFpeExRVUZMTEVWQlFVVXNTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJReXhEUVVGRE96dEJRVVV4UWl4SFFVRkhPMEZCUTBnN08wRkJSVUVzUlVGQlJTeGhRVUZoTEVWQlFVVXNWVUZCVlN4VFFVRlRMRVZCUVVVc1MwRkJTeXhGUVVGRk96dEJRVVUzUXl4SlFVRkpMRWxCUVVrc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF6czdTVUZGYmtJc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5eE5RVUZOTEV0QlFVc3NRMEZCUXl4SFFVRkhMRXRCUVVzc1IwRkJSeXhUUVVGVExFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXp0SlFVTm9SU3hKUVVGSkxGTkJRVk1zUTBGQlF5eFpRVUZaTEVOQlFVTXNUVUZCVFN4TFFVRkxMRk5CUVZNc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeEpRVUZKTEV0QlFVc3NTMEZCU3l4RlFVRkZMRU5CUVVNc1JVRkJSVHROUVVNdlJTeFRRVUZUTEVOQlFVTXNXVUZCV1N4RFFVRkRMRXRCUVVzc1EwRkJReXh4UWtGQmNVSXNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhWUVVGVkxGVkJRVlVzUlVGQlJUdFJRVU5vUml4SlFVRkpMRWxCUVVrc1IwRkJSeXhWUVVGVkxFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMUZCUTJwRExFbEJRVWtzWTBGQll5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRVZCUVVVc1EwRkJRenRSUVVOc1F5eEpRVUZKTEVkQlFVY3NTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhWUVVGVkxFZEJRVWNzUlVGQlJUdFZRVU0zUWl4SlFVRkpPMWxCUTBZc1QwRkJUeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMWRCUTNoQ0xFTkJRVU1zVDBGQlR5eERRVUZETEVWQlFVVTdXVUZEVml4UFFVRlBMRWRCUVVjc1EwRkJRenRYUVVOYU8xTkJRMFlzUTBGQlF5eERRVUZETzFGQlEwZ3NTVUZCU1N4SFFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUXpWQ0xFbEJRVWtzUTBGQlF5eGxRVUZsTEVOQlFVTXNZMEZCWXl4RFFVRkRMRVZCUVVVN1ZVRkRjRU1zVFVGQlRTeEpRVUZKTEV0QlFVc3NRMEZCUXl3MFEwRkJORU1zUjBGQlJ5eGpRVUZqTEVOQlFVTXNRMEZCUXp0VFFVTm9SanRSUVVORUxFbEJRVWtzUTBGQlF5eGxRVUZsTEVOQlFVTXNZMEZCWXl4RFFVRkRMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eG5Ra0ZCWjBJc1JVRkJSU3hGUVVGRkxFbEJRVWtzUTBGQlF5eEZRVUZGTzFWQlEzcEZMRTlCUVU4c1IwRkJSeXhMUVVGTExFTkJRVU03VTBGRGFrSTdUMEZEUml4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzB0QlEyWTdRVUZEVEN4SlFVRkpMRWxCUVVrc1QwRkJUeXhUUVVGVExFTkJRVU1zWVVGQllTeExRVUZMTEZWQlFWVXNSVUZCUlRzN1RVRkZha1FzVDBGQlR5eEhRVUZITEZOQlFWTXNRMEZCUXl4aFFVRmhMRVZCUVVVN1FVRkRla01zUzBGQlN6czdTVUZGUkN4UFFVRlBMRTlCUVU4c1EwRkJRenRCUVVOdVFpeEhRVUZITzBGQlEwZzdRVUZEUVRzN1JVRkZSU3haUVVGWkxFVkJRVVVzV1VGQldUdEpRVU40UWl4SlFVRkpMRlZCUVZVc1IwRkJSeXhKUVVGSkxFTkJRVU03U1VGRGRFSXNTVUZCU1N4TlFVRk5MRWRCUVVjc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF6dEJRVU0zUWl4SlFVRkpMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1FVRkRlRU03UVVGRFFUczdTVUZGU1N4SlFVRkpMRzlDUVVGdlFpeEhRVUZITEZsQlFWazdUVUZEY2tNc1UwRkJVeXhEUVVGRExFOUJRVThzUTBGQlF5eFZRVUZWTEVsQlFVa3NSVUZCUlR0UlFVTm9ReXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFVkJRVVU3VlVGRGFFTXNWVUZCVlN4SFFVRkhMRXRCUVVzc1EwRkJRenRUUVVOd1FqdEJRVU5VTEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6czdUVUZGWkN4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRE8xRkJRMW9zVDBGQlR5eEZRVUZGTEZWQlFWVTdRVUZETTBJc1QwRkJUeXhEUVVGRExFTkJRVU03TzAxQlJVZ3NTVUZCU1N4VlFVRlZMRVZCUVVVN1VVRkRaQ3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRPMDlCUTNSQ0xFMUJRVTA3VVVGRFRDeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1JVRkJSU3hEUVVGRE8wRkJReTlDTEU5QlFVODdRVUZEVURzN1RVRkZUU3hKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETzFGQlExb3NVMEZCVXl4RlFVRkZMRWxCUVVrN1FVRkRka0lzVDBGQlR5eERRVUZETEVOQlFVTTdPMEZCUlZRc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0QlFVTnFRanRCUVVOQk96dEpRVVZKTEZOQlFWTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hKUVVGSkxFVkJRVVVzUzBGQlN5eEZRVUZGTzAxQlEzWkRMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TlFVTTNRaXhKUVVGSkxFOUJRVThzUjBGQlJ5eEpRVUZKTEVOQlFVTXNZVUZCWVN4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRE8wMUJRelZETEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNN1VVRkRha0lzVVVGQlVTeEZRVUZGTEU5QlFVODdVVUZEYWtJc1dVRkJXU3hGUVVGRkxFbEJRVWs3VDBGRGJrSXNSVUZCUlN4TFFVRkxMRXRCUVVzc1UwRkJVeXhEUVVGRExFMUJRVTBzUjBGQlJ5eERRVUZETEVkQlFVY3NiMEpCUVc5Q0xFZEJRVWNzU1VGQlNTeERRVUZETEVOQlFVTTdRVUZEZGtVc1MwRkJTeXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTJ4Q08wRkJRMEU3TzBsQlJVa3NTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhOUVVGTkxFbEJRVWtzU1VGQlNTeERRVUZETEZOQlFWTXNSVUZCUlN4RlFVRkZPMDFCUTNwRExFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTTdVVUZEV2l4VFFVRlRMRVZCUVVVc1NVRkJTVHRQUVVOb1FpeERRVUZETEVOQlFVTTdTMEZEU2p0QlFVTk1MRWRCUVVjN1FVRkRTRHRCUVVOQk96dEZRVVZGTEZsQlFWa3NSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSVHRKUVVOcVF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRk5CUVZNc1EwRkJReXhMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NVMEZCVXl4RFFVRkRPMGxCUXpsRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eFRRVUZUTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJRenRKUVVNeFJDeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRE8wRkJRemRDTEVkQlFVYzdRVUZEU0R0QlFVTkJPenRGUVVWRkxHTkJRV01zUlVGQlJTeFZRVUZWTEZOQlFWTXNSVUZCUlR0SlFVTnVReXhQUVVGUExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dEpRVU42UXl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRIUVVONlF6dEJRVU5JTEVWQlFVVXNUVUZCVFN4RlFVRkZMRmxCUVZrN08wbEJSV3hDTEU5QlFVOHNTMEZCU3l4RFFVRkRMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU03VVVGRGJFSXNVVUZCVVN4RlFVRkZMRWxCUVVrc1EwRkJReXhOUVVGTk8xRkJRM0pDTEZOQlFWTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk03VDBGRGFFTTdUVUZEUkN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkU3UVVGRGVrSXNTMEZCU3l4RFFVRkRPenRIUVVWSU8wRkJRMGdzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUlVnc1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eFBRVUZQTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1RVRkJUU3hMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEUxQlFVMHNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEVWQlFVVTdSVUZETDBVc1RVRkJUU3hEUVVGRExFMUJRVTBzUjBGQlJ5eE5RVUZOTEVOQlFVTTdRVUZEZWtJc1EwRkJRenM3UVVGRlJDeE5RVUZOTEVOQlFVTXNUMEZCVHl4SFFVRkhMRTFCUVUwc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW5aaGNpQlNaV0ZqZENBOUlHZHNiMkpoYkM1U1pXRmpkQ0I4ZkNCeVpYRjFhWEpsS0NkeVpXRmpkQ2NwTzF4dWRtRnlJRVp2Y20xemVTQTlJSHQ5TzF4dWRtRnlJSFpoYkdsa1lYUnBiMjVTZFd4bGN5QTlJSEpsY1hWcGNtVW9KeTR2ZG1Gc2FXUmhkR2x2YmxKMWJHVnpMbXB6SnlrN1hHNTJZWElnZFhScGJITWdQU0J5WlhGMWFYSmxLQ2N1TDNWMGFXeHpMbXB6SnlrN1hHNTJZWElnVFdsNGFXNGdQU0J5WlhGMWFYSmxLQ2N1TDAxcGVHbHVMbXB6SnlrN1hHNTJZWElnYjNCMGFXOXVjeUE5SUh0OU8xeHVYRzVHYjNKdGMza3VUV2w0YVc0Z1BTQk5hWGhwYmp0Y2JseHVSbTl5YlhONUxtUmxabUYxYkhSeklEMGdablZ1WTNScGIyNGdLSEJoYzNObFpFOXdkR2x2Ym5NcElIdGNiaUFnYjNCMGFXOXVjeUE5SUhCaGMzTmxaRTl3ZEdsdmJuTTdYRzU5TzF4dVhHNUdiM0p0YzNrdVlXUmtWbUZzYVdSaGRHbHZibEoxYkdVZ1BTQm1kVzVqZEdsdmJpQW9ibUZ0WlN3Z1puVnVZeWtnZTF4dUlDQjJZV3hwWkdGMGFXOXVVblZzWlhOYmJtRnRaVjBnUFNCbWRXNWpPMXh1ZlR0Y2JseHVSbTl5YlhONUxrWnZjbTBnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJR2RsZEVsdWFYUnBZV3hUZEdGMFpUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjdYRzRnSUNBZ0lDQnBjMVpoYkdsa09pQjBjblZsTEZ4dUlDQWdJQ0FnYVhOVGRXSnRhWFIwYVc1bk9pQm1ZV3h6WlN4Y2JpQWdJQ0FnSUdOaGJrTm9ZVzVuWlRvZ1ptRnNjMlZjYmlBZ0lDQjlPMXh1SUNCOUxGeHVJQ0JuWlhSRVpXWmhkV3gwVUhKdmNITTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDQWdhR1ZoWkdWeWN6b2dlMzBzWEc0Z0lDQWdJQ0J2YmxOMVkyTmxjM002SUdaMWJtTjBhVzl1SUNncElIdDlMRnh1SUNBZ0lDQWdiMjVGY25KdmNqb2dablZ1WTNScGIyNGdLQ2tnZTMwc1hHNGdJQ0FnSUNCdmJsTjFZbTFwZERvZ1puVnVZM1JwYjI0Z0tDa2dlMzBzWEc0Z0lDQWdJQ0J2YmxaaGJHbGtVM1ZpYldsME9pQm1kVzVqZEdsdmJpQW9LU0I3ZlN4Y2JpQWdJQ0FnSUc5dVNXNTJZV3hwWkZOMVltMXBkRG9nWm5WdVkzUnBiMjRnS0NrZ2UzMHNYRzRnSUNBZ0lDQnZibE4xWW0xcGRIUmxaRG9nWm5WdVkzUnBiMjRnS0NrZ2UzMHNYRzRnSUNBZ0lDQnZibFpoYkdsa09pQm1kVzVqZEdsdmJpQW9LU0I3ZlN4Y2JpQWdJQ0FnSUc5dVNXNTJZV3hwWkRvZ1puVnVZM1JwYjI0Z0tDa2dlMzBzWEc0Z0lDQWdJQ0J2YmtOb1lXNW5aVG9nWm5WdVkzUnBiMjRnS0NrZ2UzMWNiaUFnSUNCOU8xeHVJQ0I5TEZ4dVhHNGdJQzh2SUVGa1pDQmhJRzFoY0NCMGJ5QnpkRzl5WlNCMGFHVWdhVzV3ZFhSeklHOW1JSFJvWlNCbWIzSnRMQ0JoSUcxdlpHVnNJSFJ2SUhOMGIzSmxYRzRnSUM4dklIUm9aU0IyWVd4MVpYTWdiMllnZEdobElHWnZjbTBnWVc1a0lISmxaMmx6ZEdWeUlHTm9hV3hrSUdsdWNIVjBjMXh1SUNCamIyMXdiMjVsYm5SWGFXeHNUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQjBhR2x6TG1sdWNIVjBjeUE5SUh0OU8xeHVJQ0FnSUhSb2FYTXViVzlrWld3Z1BTQjdmVHRjYmlBZ0lDQjBhR2x6TG5KbFoybHpkR1Z5U1c1d2RYUnpLSFJvYVhNdWNISnZjSE11WTJocGJHUnlaVzRwTzF4dUlDQjlMRnh1WEc0Z0lHTnZiWEJ2Ym1WdWRFUnBaRTF2ZFc1ME9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdkR2hwY3k1MllXeHBaR0YwWlVadmNtMG9LVHRjYmlBZ2ZTeGNibHh1SUNCamIyMXdiMjVsYm5SWGFXeHNWWEJrWVhSbE9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdkbUZ5SUdsdWNIVjBTMlY1Y3lBOUlFOWlhbVZqZEM1clpYbHpLSFJvYVhNdWFXNXdkWFJ6S1R0Y2JseHVJQ0FnSUM4dklGUm9aU0IxY0dSaGRHVmtJR05vYVd4a2NtVnVJR0Z5Y21GNUlHbHpJRzV2ZENCaGRtRnBiR0ZpYkdVZ2FHVnlaU0JtYjNJZ2MyOXRaU0J5WldGemIyNHNYRzRnSUNBZ0x5OGdkMlVnYm1WbFpDQjBieUIzWVdsMElHWnZjaUJ1WlhoMElHVjJaVzUwSUd4dmIzQmNiaUFnSUNCelpYUlVhVzFsYjNWMEtHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJQ0FnTHk4Z1ZHaGxJR052YlhCdmJtVnVkQ0J0YVdkb2RDQm9ZWFpsSUdKbFpXNGdkVzV0YjNWdWRHVmtJRzl1SUdGdVhHNGdJQ0FnSUNBdkx5QjFjR1JoZEdWY2JpQWdJQ0FnSUdsbUlDaDBhR2x6TG1selRXOTFiblJsWkNncEtTQjdYRzVjYmlBZ0lDQWdJQ0FnZEdocGN5NXlaV2RwYzNSbGNrbHVjSFYwY3loMGFHbHpMbkJ5YjNCekxtTm9hV3hrY21WdUtUdGNibHh1SUNBZ0lDQWdJR2xtSUNoMGFHbHpMbkJ5YjNCekxuWmhiR2xrWVhScGIyNUZjbkp2Y25NcElIdGNiaUFnSUNBZ0lDQWdJQ0IwYUdsekxuTmxkRWx1Y0hWMFZtRnNhV1JoZEdsdmJrVnljbTl5Y3loMGFHbHpMbkJ5YjNCekxuWmhiR2xrWVhScGIyNUZjbkp2Y25NcE8xeHVJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnZG1GeUlHNWxkMGx1Y0hWMFMyVjVjeUE5SUU5aWFtVmpkQzVyWlhsektIUm9hWE11YVc1d2RYUnpLVHRjYmlBZ0lDQWdJQ0FnYVdZZ0tIVjBhV3h6TG1GeWNtRjVjMFJwWm1abGNpaHBibkIxZEV0bGVYTXNJRzVsZDBsdWNIVjBTMlY1Y3lrcElIdGNiaUFnSUNBZ0lDQWdJQ0IwYUdsekxuWmhiR2xrWVhSbFJtOXliU2dwTzF4dUlDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lIMHVZbWx1WkNoMGFHbHpLU3dnTUNrN1hHNGdJSDBzWEc1Y2JpQWdMeThnVlhCa1lYUmxJRzF2WkdWc0xDQnpkV0p0YVhRZ2RHOGdkWEpzSUhCeWIzQWdZVzVrSUhObGJtUWdkR2hsSUcxdlpHVnNYRzRnSUhOMVltMXBkRG9nWm5WdVkzUnBiMjRnS0dWMlpXNTBLU0I3WEc0Z0lDQWdaWFpsYm5RdWNISmxkbVZ1ZEVSbFptRjFiSFFvS1R0Y2JseHVJQ0FnSUM4dklGUnlhV2RuWlhJZ1ptOXliU0JoY3lCdWIzUWdjSEpwYzNScGJtVXVYRzRnSUNBZ0x5OGdTV1lnWVc1NUlHbHVjSFYwY3lCb1lYWmxJRzV2ZENCaVpXVnVJSFJ2ZFdOb1pXUWdlV1YwSUhSb2FYTWdkMmxzYkNCdFlXdGxJSFJvWlcwZ1pHbHlkSGxjYmlBZ0lDQXZMeUJ6YnlCMllXeHBaR0YwYVc5dUlHSmxZMjl0WlhNZ2RtbHphV0pzWlNBb2FXWWdZbUZ6WldRZ2IyNGdhWE5RY21semRHbHVaU2xjYmlBZ0lDQjBhR2x6TG5ObGRFWnZjbTFRY21semRHbHVaU2htWVd4elpTazdYRzVjYmlBZ0lDQXZMeUJVYnlCemRYQndiM0owSUhWelpTQmpZWE5sY3lCM2FHVnlaU0J1YnlCaGMzbHVZeUJ2Y2lCeVpYRjFaWE4wSUc5d1pYSmhkR2x2YmlCcGN5QnVaV1ZrWldRdVhHNGdJQ0FnTHk4Z1ZHaGxJRndpYjI1VGRXSnRhWFJjSWlCallXeHNZbUZqYXlCcGN5QmpZV3hzWldRZ2QybDBhQ0IwYUdVZ2JXOWtaV3dnWlM1bkxpQjdabWxsYkdST1lXMWxPaUJjSW0xNVZtRnNkV1ZjSW4wc1hHNGdJQ0FnTHk4Z2FXWWdkMkZ1ZEdsdVp5QjBieUJ5WlhObGRDQjBhR1VnWlc1MGFYSmxJR1p2Y20wZ2RHOGdiM0pwWjJsdVlXd2djM1JoZEdVc0lIUm9aU0J6WldOdmJtUWdjR0Z5WVcwZ2FYTWdZU0JqWVd4c1ltRmpheUJtYjNJZ2RHaHBjeTVjYmlBZ0lDQnBaaUFvSVhSb2FYTXVjSEp2Y0hNdWRYSnNLU0I3WEc0Z0lDQWdJQ0IwYUdsekxuVndaR0YwWlUxdlpHVnNLQ2s3WEc0Z0lDQWdJQ0IyWVhJZ2JXOWtaV3dnUFNCMGFHbHpMbTFoY0UxdlpHVnNLQ2s3WEc0Z0lDQWdJQ0IwYUdsekxuQnliM0J6TG05dVUzVmliV2wwS0cxdlpHVnNMQ0IwYUdsekxuSmxjMlYwVFc5a1pXd3NJSFJvYVhNdWRYQmtZWFJsU1c1d2RYUnpWMmwwYUVWeWNtOXlLVHRjYmlBZ0lDQWdJSFJvYVhNdWMzUmhkR1V1YVhOV1lXeHBaQ0EvSUhSb2FYTXVjSEp2Y0hNdWIyNVdZV3hwWkZOMVltMXBkQ2h0YjJSbGJDd2dkR2hwY3k1eVpYTmxkRTF2WkdWc0tTQTZJSFJvYVhNdWNISnZjSE11YjI1SmJuWmhiR2xrVTNWaWJXbDBLRzF2WkdWc0xDQjBhR2x6TG5KbGMyVjBUVzlrWld3cE8xeHVJQ0FnSUNBZ2NtVjBkWEp1TzF4dUlDQWdJSDFjYmx4dUlDQWdJSFJvYVhNdWRYQmtZWFJsVFc5a1pXd29LVHRjYmlBZ0lDQjBhR2x6TG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUdselUzVmliV2wwZEdsdVp6b2dkSEoxWlZ4dUlDQWdJSDBwTzF4dVhHNGdJQ0FnZEdocGN5NXdjbTl3Y3k1dmJsTjFZbTFwZENoMGFHbHpMbTFoY0UxdlpHVnNLQ2tzSUhSb2FYTXVjbVZ6WlhSTmIyUmxiQ3dnZEdocGN5NTFjR1JoZEdWSmJuQjFkSE5YYVhSb1JYSnliM0lwTzF4dVhHNGdJQ0FnZG1GeUlHaGxZV1JsY25NZ1BTQW9UMkpxWldOMExtdGxlWE1vZEdocGN5NXdjbTl3Y3k1b1pXRmtaWEp6S1M1c1pXNW5kR2dnSmlZZ2RHaHBjeTV3Y205d2N5NW9aV0ZrWlhKektTQjhmQ0J2Y0hScGIyNXpMbWhsWVdSbGNuTWdmSHdnZTMwN1hHNWNiaUFnSUNCMllYSWdiV1YwYUc5a0lEMGdkR2hwY3k1d2NtOXdjeTV0WlhSb2IyUWdKaVlnZFhScGJITXVZV3BoZUZ0MGFHbHpMbkJ5YjNCekxtMWxkR2h2WkM1MGIweHZkMlZ5UTJGelpTZ3BYU0EvSUhSb2FYTXVjSEp2Y0hNdWJXVjBhRzlrTG5SdlRHOTNaWEpEWVhObEtDa2dPaUFuY0c5emRDYzdYRzRnSUNBZ2RYUnBiSE11WVdwaGVGdHRaWFJvYjJSZEtIUm9hWE11Y0hKdmNITXVkWEpzTENCMGFHbHpMbTFoY0UxdlpHVnNLQ2tzSUhSb2FYTXVjSEp2Y0hNdVkyOXVkR1Z1ZEZSNWNHVWdmSHdnYjNCMGFXOXVjeTVqYjI1MFpXNTBWSGx3WlNCOGZDQW5hbk52Ymljc0lHaGxZV1JsY25NcFhHNGdJQ0FnSUNBdWRHaGxiaWhtZFc1amRHbHZiaUFvY21WemNHOXVjMlVwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV3Y205d2N5NXZibE4xWTJObGMzTW9jbVZ6Y0c5dWMyVXBPMXh1SUNBZ0lDQWdJQ0IwYUdsekxuQnliM0J6TG05dVUzVmliV2wwZEdWa0tDazdYRzRnSUNBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtwWEc0Z0lDQWdJQ0F1WTJGMFkyZ29kR2hwY3k1bVlXbHNVM1ZpYldsMEtUdGNiaUFnZlN4Y2JseHVJQ0J0WVhCTmIyUmxiRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhKbGRIVnliaUIwYUdsekxuQnliM0J6TG0xaGNIQnBibWNnUHlCMGFHbHpMbkJ5YjNCekxtMWhjSEJwYm1jb2RHaHBjeTV0YjJSbGJDa2dPaUIwYUdsekxtMXZaR1ZzTzF4dUlDQjlMRnh1WEc0Z0lDOHZJRWR2WlhNZ2RHaHliM1ZuYUNCaGJHd2djbVZuYVhOMFpYSmxaQ0JqYjIxd2IyNWxiblJ6SUdGdVpGeHVJQ0F2THlCMWNHUmhkR1Z6SUhSb1pTQnRiMlJsYkNCMllXeDFaWE5jYmlBZ2RYQmtZWFJsVFc5a1pXdzZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0JQWW1wbFkzUXVhMlY1Y3loMGFHbHpMbWx1Y0hWMGN5a3VabTl5UldGamFDaG1kVzVqZEdsdmJpQW9ibUZ0WlNrZ2UxeHVJQ0FnSUNBZ2RtRnlJR052YlhCdmJtVnVkQ0E5SUhSb2FYTXVhVzV3ZFhSelcyNWhiV1ZkTzF4dUlDQWdJQ0FnZEdocGN5NXRiMlJsYkZ0dVlXMWxYU0E5SUdOdmJYQnZibVZ1ZEM1emRHRjBaUzVmZG1Gc2RXVTdYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBLVHRjYmlBZ2ZTeGNibHh1SUNBdkx5QlNaWE5sZENCbFlXTm9JR3RsZVNCcGJpQjBhR1VnYlc5a1pXd2dkRzhnZEdobElHOXlhV2RwYm1Gc0lDOGdhVzVwZEdsaGJDQjJZV3gxWlZ4dUlDQnlaWE5sZEUxdlpHVnNPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnVDJKcVpXTjBMbXRsZVhNb2RHaHBjeTVwYm5CMWRITXBMbVp2Y2tWaFkyZ29ablZ1WTNScGIyNGdLRzVoYldVcElIdGNiaUFnSUNBZ0lIUm9hWE11YVc1d2RYUnpXMjVoYldWZExuSmxjMlYwVm1Gc2RXVW9LVHRjYmlBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtwTzF4dUlDQWdJSFJvYVhNdWRtRnNhV1JoZEdWR2IzSnRLQ2s3WEc0Z0lIMHNYRzVjYmlBZ2MyVjBTVzV3ZFhSV1lXeHBaR0YwYVc5dVJYSnliM0p6T2lCbWRXNWpkR2x2YmlBb1pYSnliM0p6S1NCN1hHNGdJQ0FnSUU5aWFtVmpkQzVyWlhsektIUm9hWE11YVc1d2RYUnpLUzVtYjNKRllXTm9LR1oxYm1OMGFXOXVJQ2h1WVcxbExDQnBibVJsZUNrZ2UxeHVJQ0FnSUNBZ2RtRnlJR052YlhCdmJtVnVkQ0E5SUhSb2FYTXVhVzV3ZFhSelcyNWhiV1ZkTzF4dUlDQWdJQ0FnZG1GeUlHRnlaM01nUFNCYmUxeHVJQ0FnSUNBZ0lDQmZhWE5XWVd4cFpEb2dJU2h1WVcxbElHbHVJR1Z5Y205eWN5a3NYRzRnSUNBZ0lDQWdJRjl6WlhKMlpYSkZjbkp2Y2pvZ1pYSnliM0p6VzI1aGJXVmRYRzRnSUNBZ0lDQjlYVHRjYmlBZ0lDQWdJR052YlhCdmJtVnVkQzV6WlhSVGRHRjBaUzVoY0hCc2VTaGpiMjF3YjI1bGJuUXNJR0Z5WjNNcE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektTazdJQ0FnWEc0Z0lIMHNYRzVjYmlBZ0x5OGdSMjhnZEdoeWIzVm5hQ0JsY25KdmNuTWdabkp2YlNCelpYSjJaWElnWVc1a0lHZHlZV0lnZEdobElHTnZiWEJ2Ym1WdWRITmNiaUFnTHk4Z2MzUnZjbVZrSUdsdUlIUm9aU0JwYm5CMWRITWdiV0Z3TGlCRGFHRnVaMlVnZEdobGFYSWdjM1JoZEdVZ2RHOGdhVzUyWVd4cFpGeHVJQ0F2THlCaGJtUWdjMlYwSUhSb1pTQnpaWEoyWlhKRmNuSnZjaUJ0WlhOellXZGxYRzRnSUhWd1pHRjBaVWx1Y0hWMGMxZHBkR2hGY25KdmNqb2dablZ1WTNScGIyNGdLR1Z5Y205eWN5a2dlMXh1SUNBZ0lFOWlhbVZqZEM1clpYbHpLR1Z5Y205eWN5a3VabTl5UldGamFDaG1kVzVqZEdsdmJpQW9ibUZ0WlN3Z2FXNWtaWGdwSUh0Y2JpQWdJQ0FnSUhaaGNpQmpiMjF3YjI1bGJuUWdQU0IwYUdsekxtbHVjSFYwYzF0dVlXMWxYVHRjYmx4dUlDQWdJQ0FnYVdZZ0tDRmpiMjF3YjI1bGJuUXBJSHRjYmlBZ0lDQWdJQ0FnZEdoeWIzY2dibVYzSUVWeWNtOXlLQ2RaYjNVZ1lYSmxJSFJ5ZVdsdVp5QjBieUIxY0dSaGRHVWdZVzRnYVc1d2RYUWdkR2hoZENCa2IyVnpJRzV2ZENCbGVHbHpkSE11SUZabGNtbG1lU0JsY25KdmNuTWdiMkpxWldOMElIZHBkR2dnYVc1d2RYUWdibUZ0WlhNdUlDY2dLeUJLVTA5T0xuTjBjbWx1WjJsbWVTaGxjbkp2Y25NcEtUdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdkbUZ5SUdGeVozTWdQU0JiZTF4dUlDQWdJQ0FnSUNCZmFYTldZV3hwWkRvZ1ptRnNjMlVzWEc0Z0lDQWdJQ0FnSUY5elpYSjJaWEpGY25KdmNqb2daWEp5YjNKelcyNWhiV1ZkWEc0Z0lDQWdJQ0I5WFR0Y2JpQWdJQ0FnSUdOdmJYQnZibVZ1ZEM1elpYUlRkR0YwWlM1aGNIQnNlU2hqYjIxd2IyNWxiblFzSUdGeVozTXBPMXh1SUNBZ0lIMHVZbWx1WkNoMGFHbHpLU2s3WEc0Z0lIMHNYRzVjYmlBZ1ptRnBiRk4xWW0xcGREb2dablZ1WTNScGIyNGdLR1Z5Y205eWN5a2dlMXh1SUNBZ0lIUm9hWE11ZFhCa1lYUmxTVzV3ZFhSelYybDBhRVZ5Y205eUtHVnljbTl5Y3lrN1hHNGdJQ0FnZEdocGN5NXpaWFJUZEdGMFpTaDdYRzRnSUNBZ0lDQnBjMU4xWW0xcGRIUnBibWM2SUdaaGJITmxYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RHaHBjeTV3Y205d2N5NXZia1Z5Y205eUtHVnljbTl5Y3lrN1hHNGdJQ0FnZEdocGN5NXdjbTl3Y3k1dmJsTjFZbTFwZEhSbFpDZ3BPMXh1SUNCOUxGeHVYRzRnSUM4dklGUnlZWFpsY25ObElIUm9aU0JqYUdsc1pISmxiaUJoYm1RZ1kyaHBiR1J5Wlc0Z2IyWWdZMmhwYkdSeVpXNGdkRzhnWm1sdVpGeHVJQ0F2THlCaGJHd2dhVzV3ZFhSeklHSjVJR05vWldOcmFXNW5JSFJvWlNCdVlXMWxJSEJ5YjNBdUlFMWhlV0psSUdSdklHRWdZbVYwZEdWeVhHNGdJQzh2SUdOb1pXTnJJR2hsY21WY2JpQWdjbVZuYVhOMFpYSkpibkIxZEhNNklHWjFibU4wYVc5dUlDaGphR2xzWkhKbGJpa2dlMXh1SUNBZ0lGSmxZV04wTGtOb2FXeGtjbVZ1TG1admNrVmhZMmdvWTJocGJHUnlaVzRzSUdaMWJtTjBhVzl1SUNoamFHbHNaQ2tnZTF4dVhHNGdJQ0FnSUNCcFppQW9ZMmhwYkdRZ0ppWWdZMmhwYkdRdWNISnZjSE1nSmlZZ1kyaHBiR1F1Y0hKdmNITXVibUZ0WlNrZ2UxeHVJQ0FnSUNBZ0lDQmphR2xzWkM1d2NtOXdjeTVmWVhSMFlXTm9WRzlHYjNKdElEMGdkR2hwY3k1aGRIUmhZMmhVYjBadmNtMDdYRzRnSUNBZ0lDQWdJR05vYVd4a0xuQnliM0J6TGw5a1pYUmhZMmhHY205dFJtOXliU0E5SUhSb2FYTXVaR1YwWVdOb1JuSnZiVVp2Y20wN1hHNGdJQ0FnSUNBZ0lHTm9hV3hrTG5CeWIzQnpMbDkyWVd4cFpHRjBaU0E5SUhSb2FYTXVkbUZzYVdSaGRHVTdYRzRnSUNBZ0lDQWdJR05vYVd4a0xuQnliM0J6TGw5cGMwWnZjbTFFYVhOaFlteGxaQ0E5SUhSb2FYTXVhWE5HYjNKdFJHbHpZV0pzWldRN1hHNGdJQ0FnSUNBZ0lHTm9hV3hrTG5CeWIzQnpMbDlwYzFaaGJHbGtWbUZzZFdVZ1BTQjBhR2x6TG5KMWJsWmhiR2xrWVhScGIyNDdYRzRnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJR2xtSUNoamFHbHNaQ0FtSmlCamFHbHNaQzV3Y205d2N5QW1KaUJqYUdsc1pDNXdjbTl3Y3k1amFHbHNaSEpsYmlrZ2UxeHVJQ0FnSUNBZ0lDQjBhR2x6TG5KbFoybHpkR1Z5U1c1d2RYUnpLR05vYVd4a0xuQnliM0J6TG1Ob2FXeGtjbVZ1S1R0Y2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUgwdVltbHVaQ2gwYUdsektTazdYRzRnSUgwc1hHNWNiaUFnYVhOR2IzSnRSR2x6WVdKc1pXUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0J5WlhSMWNtNGdkR2hwY3k1d2NtOXdjeTVrYVhOaFlteGxaRHRjYmlBZ2ZTeGNibHh1SUNCblpYUkRkWEp5Wlc1MFZtRnNkV1Z6T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUU5aWFtVmpkQzVyWlhsektIUm9hWE11YVc1d2RYUnpLUzV5WldSMVkyVW9ablZ1WTNScGIyNGdLR1JoZEdFc0lHNWhiV1VwSUh0Y2JpQWdJQ0FnSUhaaGNpQmpiMjF3YjI1bGJuUWdQU0IwYUdsekxtbHVjSFYwYzF0dVlXMWxYVHRjYmlBZ0lDQWdJR1JoZEdGYmJtRnRaVjBnUFNCamIyMXdiMjVsYm5RdWMzUmhkR1V1WDNaaGJIVmxPMXh1SUNBZ0lDQWdjbVYwZFhKdUlHUmhkR0U3WEc0Z0lDQWdmUzVpYVc1a0tIUm9hWE1wTENCN2ZTazdYRzRnSUgwc1hHNWNiaUFnYzJWMFJtOXliVkJ5YVhOMGFXNWxPaUJtZFc1amRHbHZiaUFvYVhOUWNtbHpkR2x1WlNrZ2UxeHVJQ0FnSUhaaGNpQnBibkIxZEhNZ1BTQjBhR2x6TG1sdWNIVjBjenRjYmlBZ0lDQjJZWElnYVc1d2RYUkxaWGx6SUQwZ1QySnFaV04wTG10bGVYTW9hVzV3ZFhSektUdGNibHh1SUNBZ0lDOHZJRWwwWlhKaGRHVWdkR2h5YjNWbmFDQmxZV05vSUdOdmJYQnZibVZ1ZENCaGJtUWdjMlYwSUdsMElHRnpJSEJ5YVhOMGFXNWxYRzRnSUNBZ0x5OGdiM0lnWENKa2FYSjBlVndpTGx4dUlDQWdJR2x1Y0hWMFMyVjVjeTVtYjNKRllXTm9LR1oxYm1OMGFXOXVJQ2h1WVcxbExDQnBibVJsZUNrZ2UxeHVJQ0FnSUNBZ2RtRnlJR052YlhCdmJtVnVkQ0E5SUdsdWNIVjBjMXR1WVcxbFhUdGNiaUFnSUNBZ0lHTnZiWEJ2Ym1WdWRDNXpaWFJUZEdGMFpTaDdYRzRnSUNBZ0lDQWdJRjlwYzFCeWFYTjBhVzVsT2lCcGMxQnlhWE4wYVc1bFhHNGdJQ0FnSUNCOUtUdGNiaUFnSUNCOUxtSnBibVFvZEdocGN5a3BPMXh1SUNCOUxGeHVYRzRnSUM4dklGVnpaU0IwYUdVZ1ltbHVaR1ZrSUhaaGJIVmxjeUJoYm1RZ2RHaGxJR0ZqZEhWaGJDQnBibkIxZENCMllXeDFaU0IwYjF4dUlDQXZMeUIyWVd4cFpHRjBaU0IwYUdVZ2FXNXdkWFFnWVc1a0lITmxkQ0JwZEhNZ2MzUmhkR1V1SUZSb1pXNGdZMmhsWTJzZ2RHaGxYRzRnSUM4dklITjBZWFJsSUc5bUlIUm9aU0JtYjNKdElHbDBjMlZzWmx4dUlDQjJZV3hwWkdGMFpUb2dablZ1WTNScGIyNGdLR052YlhCdmJtVnVkQ2tnZTF4dVhHNGdJQ0FnTHk4Z1ZISnBaMmRsY2lCdmJrTm9ZVzVuWlZ4dUlDQWdJR2xtSUNoMGFHbHpMbk4wWVhSbExtTmhia05vWVc1blpTa2dlMXh1SUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTV2YmtOb1lXNW5aU2gwYUdsekxtZGxkRU4xY25KbGJuUldZV3gxWlhNb0tTazdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2RtRnlJR2x6Vm1Gc2FXUWdQU0IwY25WbE8xeHVJQ0FnSUdsbUlDaGpiMjF3YjI1bGJuUXVkbUZzYVdSaGRHVXBJSHRjYmlBZ0lDQWdJR2x6Vm1Gc2FXUWdQU0JqYjIxd2IyNWxiblF1ZG1Gc2FXUmhkR1VvS1R0Y2JpQWdJQ0I5SUdWc2MyVWdhV1lnS0dOdmJYQnZibVZ1ZEM1d2NtOXdjeTV5WlhGMWFYSmxaQ0I4ZkNCamIyMXdiMjVsYm5RdVgzWmhiR2xrWVhScGIyNXpLU0I3WEc0Z0lDQWdJQ0JwYzFaaGJHbGtJRDBnZEdocGN5NXlkVzVXWVd4cFpHRjBhVzl1S0dOdmJYQnZibVZ1ZENrN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnTHk4Z1VuVnVJSFJvY205MVoyZ2dkR2hsSUhaaGJHbGtZWFJwYjI1ekxDQnpjR3hwZENCMGFHVnRJSFZ3SUdGdVpDQmpZV3hzWEc0Z0lDQWdMeThnZEdobElIWmhiR2xrWVhSdmNpQkpSaUIwYUdWeVpTQnBjeUJoSUhaaGJIVmxJRzl5SUdsMElHbHpJSEpsY1hWcGNtVmtYRzRnSUNBZ1kyOXRjRzl1Wlc1MExuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lGOXBjMVpoYkdsa09pQnBjMVpoYkdsa0xGeHVJQ0FnSUNBZ1gzTmxjblpsY2tWeWNtOXlPaUJ1ZFd4c1hHNGdJQ0FnZlN3Z2RHaHBjeTUyWVd4cFpHRjBaVVp2Y20wcE8xeHVYRzRnSUgwc1hHNWNiaUFnTHk4Z1EyaGxZMnR6SUhaaGJHbGtZWFJwYjI0Z2IyNGdZM1Z5Y21WdWRDQjJZV3gxWlNCdmNpQmhJSEJoYzNObFpDQjJZV3gxWlZ4dUlDQnlkVzVXWVd4cFpHRjBhVzl1T2lCbWRXNWpkR2x2YmlBb1kyOXRjRzl1Wlc1MExDQjJZV3gxWlNrZ2UxeHVYRzRnSUNBZ2RtRnlJR2x6Vm1Gc2FXUWdQU0IwY25WbE8xeHVJQ0FnSUZ4dUlDQWdJSFpoYkhWbElEMGdZWEpuZFcxbGJuUnpMbXhsYm1kMGFDQTlQVDBnTWlBL0lIWmhiSFZsSURvZ1kyOXRjRzl1Wlc1MExuTjBZWFJsTGw5MllXeDFaVHRjYmlBZ0lDQnBaaUFvWTI5dGNHOXVaVzUwTGw5MllXeHBaR0YwYVc5dWN5NXNaVzVuZEdnZ0ppWWdLR052YlhCdmJtVnVkQzV3Y205d2N5NXlaWEYxYVhKbFpDQjhmQ0IyWVd4MVpTQWhQVDBnSnljcEtTQjdYRzRnSUNBZ0lDQmpiMjF3YjI1bGJuUXVYM1poYkdsa1lYUnBiMjV6TG5Od2JHbDBLQzljWEN3b1B5RmJYbnRjWEZ0ZEtsdDlYRnhkWFNrdlp5a3VabTl5UldGamFDaG1kVzVqZEdsdmJpQW9kbUZzYVdSaGRHbHZiaWtnZTF4dUlDQWdJQ0FnSUNCMllYSWdZWEpuY3lBOUlIWmhiR2xrWVhScGIyNHVjM0JzYVhRb0p6b25LVHRjYmlBZ0lDQWdJQ0FnZG1GeUlIWmhiR2xrWVhSbFRXVjBhRzlrSUQwZ1lYSm5jeTV6YUdsbWRDZ3BPMXh1SUNBZ0lDQWdJQ0JoY21keklEMGdZWEpuY3k1dFlYQW9ablZ1WTNScGIyNGdLR0Z5WnlrZ2UxeHVJQ0FnSUNBZ0lDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdTbE5QVGk1d1lYSnpaU2hoY21jcE8xeHVJQ0FnSUNBZ0lDQWdJSDBnWTJGMFkyZ2dLR1VwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQmhjbWM3SUM4dklFbDBJR2x6SUdFZ2MzUnlhVzVuSUdsbUlHbDBJR05oYmlCdWIzUWdjR0Z5YzJVZ2FYUmNiaUFnSUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ0lDQmhjbWR6SUQwZ1czWmhiSFZsWFM1amIyNWpZWFFvWVhKbmN5azdYRzRnSUNBZ0lDQWdJR2xtSUNnaGRtRnNhV1JoZEdsdmJsSjFiR1Z6VzNaaGJHbGtZWFJsVFdWMGFHOWtYU2tnZTF4dUlDQWdJQ0FnSUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2lnblJtOXliWE41SUdSdlpYTWdibTkwSUdoaGRtVWdkR2hsSUhaaGJHbGtZWFJwYjI0Z2NuVnNaVG9nSnlBcklIWmhiR2xrWVhSbFRXVjBhRzlrS1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ0lDQnBaaUFvSVhaaGJHbGtZWFJwYjI1U2RXeGxjMXQyWVd4cFpHRjBaVTFsZEdodlpGMHVZWEJ3Ykhrb2RHaHBjeTVuWlhSRGRYSnlaVzUwVm1Gc2RXVnpLQ2tzSUdGeVozTXBLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2FYTldZV3hwWkNBOUlHWmhiSE5sTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOUxtSnBibVFvZEdocGN5a3BPMXh1SUNBZ0lIMWNiaUFnSUNCcFppQW9kSGx3Wlc5bUlHTnZiWEJ2Ym1WdWRDNWphR1ZqYTFaaGJHbGthWFI1SUQwOVBTQmNJbVoxYm1OMGFXOXVYQ0lwSUh0Y2JpQWdJQ0FnSUM4dklIUm9aU0JqYjIxd2IyNWxiblFnWkdWbWFXNWxjeUJoYmlCbGVIQnNhV05wZENCamFHVmphMVpoYkdsa2FYUjVJR1oxYm1OMGFXOXVYRzRnSUNBZ0lDQnBjMVpoYkdsa0lEMGdZMjl0Y0c5dVpXNTBMbU5vWldOclZtRnNhV1JwZEhrb0tWeHVJQ0FnSUgxY2JseHVJQ0FnSUhKbGRIVnliaUJwYzFaaGJHbGtPMXh1SUNCOUxGeHVYRzRnSUM4dklGWmhiR2xrWVhSbElIUm9aU0JtYjNKdElHSjVJR2R2YVc1bklIUm9jbTkxWjJnZ1lXeHNJR05vYVd4a0lHbHVjSFYwSUdOdmJYQnZibVZ1ZEhOY2JpQWdMeThnWVc1a0lHTm9aV05ySUhSb1pXbHlJSE4wWVhSbFhHNGdJSFpoYkdsa1lYUmxSbTl5YlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lIWmhjaUJoYkd4SmMxWmhiR2xrSUQwZ2RISjFaVHRjYmlBZ0lDQjJZWElnYVc1d2RYUnpJRDBnZEdocGN5NXBibkIxZEhNN1hHNGdJQ0FnZG1GeUlHbHVjSFYwUzJWNWN5QTlJRTlpYW1WamRDNXJaWGx6S0dsdWNIVjBjeWs3WEc1Y2JpQWdJQ0F2THlCWFpTQnVaV1ZrSUdFZ1kyRnNiR0poWTJzZ1lYTWdkMlVnWVhKbElIWmhiR2xrWVhScGJtY2dZV3hzSUdsdWNIVjBjeUJoWjJGcGJpNGdWR2hwY3lCM2FXeHNYRzRnSUNBZ0x5OGdjblZ1SUhkb1pXNGdkR2hsSUd4aGMzUWdZMjl0Y0c5dVpXNTBJR2hoY3lCelpYUWdhWFJ6SUhOMFlYUmxYRzRnSUNBZ2RtRnlJRzl1Vm1Gc2FXUmhkR2x2YmtOdmJYQnNaWFJsSUQwZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdhVzV3ZFhSTFpYbHpMbVp2Y2tWaFkyZ29ablZ1WTNScGIyNGdLRzVoYldVcElIdGNiaUFnSUNBZ0lDQWdhV1lnS0NGcGJuQjFkSE5iYm1GdFpWMHVjM1JoZEdVdVgybHpWbUZzYVdRcElIdGNiaUFnSUNBZ0lDQWdJQ0JoYkd4SmMxWmhiR2xrSUQwZ1ptRnNjMlU3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwdVltbHVaQ2gwYUdsektTazdYRzVjYmlBZ0lDQWdJSFJvYVhNdWMyVjBVM1JoZEdVb2UxeHVJQ0FnSUNBZ0lDQnBjMVpoYkdsa09pQmhiR3hKYzFaaGJHbGtYRzRnSUNBZ0lDQjlLVHRjYmx4dUlDQWdJQ0FnYVdZZ0tHRnNiRWx6Vm1Gc2FXUXBJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXdjbTl3Y3k1dmJsWmhiR2xrS0NrN1hHNGdJQ0FnSUNCOUlHVnNjMlVnZTF4dUlDQWdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxtOXVTVzUyWVd4cFpDZ3BPMXh1SUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0F2THlCVVpXeHNJSFJvWlNCbWIzSnRJSFJvWVhRZ2FYUWdZMkZ1SUhOMFlYSjBJSFJ2SUhSeWFXZG5aWElnWTJoaGJtZGxJR1YyWlc1MGMxeHVJQ0FnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0FnSUdOaGJrTm9ZVzVuWlRvZ2RISjFaVnh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0I5TG1KcGJtUW9kR2hwY3lrN1hHNWNiaUFnSUNBdkx5QlNkVzRnZG1Gc2FXUmhkR2x2YmlCaFoyRnBiaUJwYmlCallYTmxJR0ZtWm1WamRHVmtJR0o1SUc5MGFHVnlJR2x1Y0hWMGN5NGdWR2hsWEc0Z0lDQWdMeThnYkdGemRDQmpiMjF3YjI1bGJuUWdkbUZzYVdSaGRHVmtJSGRwYkd3Z2NuVnVJSFJvWlNCdmJsWmhiR2xrWVhScGIyNURiMjF3YkdWMFpTQmpZV3hzWW1GamExeHVJQ0FnSUdsdWNIVjBTMlY1Y3k1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNodVlXMWxMQ0JwYm1SbGVDa2dlMXh1SUNBZ0lDQWdkbUZ5SUdOdmJYQnZibVZ1ZENBOUlHbHVjSFYwYzF0dVlXMWxYVHRjYmlBZ0lDQWdJSFpoY2lCcGMxWmhiR2xrSUQwZ2RHaHBjeTV5ZFc1V1lXeHBaR0YwYVc5dUtHTnZiWEJ2Ym1WdWRDazdYRzRnSUNBZ0lDQmpiMjF3YjI1bGJuUXVjMlYwVTNSaGRHVW9lMXh1SUNBZ0lDQWdJQ0JmYVhOV1lXeHBaRG9nYVhOV1lXeHBaQ3hjYmlBZ0lDQWdJQ0FnWDNObGNuWmxja1Z5Y205eU9pQnVkV3hzWEc0Z0lDQWdJQ0I5TENCcGJtUmxlQ0E5UFQwZ2FXNXdkWFJMWlhsekxteGxibWQwYUNBdElERWdQeUJ2YmxaaGJHbGtZWFJwYjI1RGIyMXdiR1YwWlNBNklHNTFiR3dwTzF4dUlDQWdJSDB1WW1sdVpDaDBhR2x6S1NrN1hHNWNiaUFnSUNBdkx5QkpaaUIwYUdWeVpTQmhjbVVnYm04Z2FXNXdkWFJ6TENCelpYUWdjM1JoZEdVZ2QyaGxjbVVnWm05eWJTQnBjeUJ5WldGa2VTQjBieUIwY21sbloyVnlYRzRnSUNBZ0x5OGdZMmhoYm1kbElHVjJaVzUwTGlCT1pYY2dhVzV3ZFhSeklHMXBaMmgwSUdKbElHRmtaR1ZrSUd4aGRHVnlYRzRnSUNBZ2FXWWdLQ0ZwYm5CMWRFdGxlWE11YkdWdVozUm9JQ1ltSUhSb2FYTXVhWE5OYjNWdWRHVmtLQ2twSUh0Y2JpQWdJQ0FnSUhSb2FYTXVjMlYwVTNSaGRHVW9lMXh1SUNBZ0lDQWdJQ0JqWVc1RGFHRnVaMlU2SUhSeWRXVmNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lIMWNiaUFnZlN4Y2JseHVJQ0F2THlCTlpYUm9iMlFnY0hWMElHOXVJR1ZoWTJnZ2FXNXdkWFFnWTI5dGNHOXVaVzUwSUhSdklISmxaMmx6ZEdWeVhHNGdJQzh2SUdsMGMyVnNaaUIwYnlCMGFHVWdabTl5YlZ4dUlDQmhkSFJoWTJoVWIwWnZjbTA2SUdaMWJtTjBhVzl1SUNoamIyMXdiMjVsYm5RcElIdGNiaUFnSUNCMGFHbHpMbWx1Y0hWMGMxdGpiMjF3YjI1bGJuUXVjSEp2Y0hNdWJtRnRaVjBnUFNCamIyMXdiMjVsYm5RN1hHNGdJQ0FnZEdocGN5NXRiMlJsYkZ0amIyMXdiMjVsYm5RdWNISnZjSE11Ym1GdFpWMGdQU0JqYjIxd2IyNWxiblF1YzNSaGRHVXVYM1poYkhWbE8xeHVJQ0FnSUhSb2FYTXVkbUZzYVdSaGRHVW9ZMjl0Y0c5dVpXNTBLVHRjYmlBZ2ZTeGNibHh1SUNBdkx5Qk5aWFJvYjJRZ2NIVjBJRzl1SUdWaFkyZ2dhVzV3ZFhRZ1kyOXRjRzl1Wlc1MElIUnZJSFZ1Y21WbmFYTjBaWEpjYmlBZ0x5OGdhWFJ6Wld4bUlHWnliMjBnZEdobElHWnZjbTFjYmlBZ1pHVjBZV05vUm5KdmJVWnZjbTA2SUdaMWJtTjBhVzl1SUNoamIyMXdiMjVsYm5RcElIdGNiaUFnSUNCa1pXeGxkR1VnZEdocGN5NXBibkIxZEhOYlkyOXRjRzl1Wlc1MExuQnliM0J6TG01aGJXVmRPMXh1SUNBZ0lHUmxiR1YwWlNCMGFHbHpMbTF2WkdWc1cyTnZiWEJ2Ym1WdWRDNXdjbTl3Y3k1dVlXMWxYVHRjYmlBZ2ZTeGNiaUFnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNWNiaUFnSUNCeVpYUjFjbTRnVW1WaFkzUXVSRTlOTG1admNtMG9lMXh1SUNBZ0lDQWdJQ0J2YmxOMVltMXBkRG9nZEdocGN5NXpkV0p0YVhRc1hHNGdJQ0FnSUNBZ0lHTnNZWE56VG1GdFpUb2dkR2hwY3k1d2NtOXdjeTVqYkdGemMwNWhiV1ZjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0IwYUdsekxuQnliM0J6TG1Ob2FXeGtjbVZ1WEc0Z0lDQWdLVHRjYmx4dUlDQjlYRzU5S1R0Y2JseHVhV1lnS0NGbmJHOWlZV3d1Wlhod2IzSjBjeUFtSmlBaFoyeHZZbUZzTG0xdlpIVnNaU0FtSmlBb0lXZHNiMkpoYkM1a1pXWnBibVVnZkh3Z0lXZHNiMkpoYkM1a1pXWnBibVV1WVcxa0tTa2dlMXh1SUNCbmJHOWlZV3d1Um05eWJYTjVJRDBnUm05eWJYTjVPMXh1ZlZ4dVhHNXRiMlIxYkdVdVpYaHdiM0owY3lBOUlFWnZjbTF6ZVR0Y2JpSmRmUT09IiwidmFyIGNzcmZUb2tlblNlbGVjdG9yID0gdHlwZW9mIGRvY3VtZW50ICE9ICd1bmRlZmluZWQnID8gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbWV0YVtuYW1lPVwiY3NyZi10b2tlblwiXScpIDogbnVsbDtcblxudmFyIHRvVVJMRW5jb2RlZCA9IGZ1bmN0aW9uIChlbGVtZW50LCBrZXksIGxpc3QpIHtcbiAgdmFyIGxpc3QgPSBsaXN0IHx8IFtdO1xuICBpZiAodHlwZW9mIChlbGVtZW50KSA9PSAnb2JqZWN0Jykge1xuICAgIGZvciAodmFyIGlkeCBpbiBlbGVtZW50KVxuICAgICAgdG9VUkxFbmNvZGVkKGVsZW1lbnRbaWR4XSwga2V5ID8ga2V5ICsgJ1snICsgaWR4ICsgJ10nIDogaWR4LCBsaXN0KTtcbiAgfSBlbHNlIHtcbiAgICBsaXN0LnB1c2goa2V5ICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KGVsZW1lbnQpKTtcbiAgfVxuICByZXR1cm4gbGlzdC5qb2luKCcmJyk7XG59O1xuXG52YXIgcmVxdWVzdCA9IGZ1bmN0aW9uIChtZXRob2QsIHVybCwgZGF0YSwgY29udGVudFR5cGUsIGhlYWRlcnMpIHtcblxuICB2YXIgY29udGVudFR5cGUgPSBjb250ZW50VHlwZSA9PT0gJ3VybGVuY29kZWQnID8gJ2FwcGxpY2F0aW9uLycgKyBjb250ZW50VHlwZS5yZXBsYWNlKCd1cmxlbmNvZGVkJywgJ3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpIDogJ2FwcGxpY2F0aW9uL2pzb24nO1xuICBkYXRhID0gY29udGVudFR5cGUgPT09ICdhcHBsaWNhdGlvbi9qc29uJyA/IEpTT04uc3RyaW5naWZ5KGRhdGEpIDogdG9VUkxFbmNvZGVkKGRhdGEpO1xuXG4gIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgdHJ5IHtcbiAgICAgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcbiAgICAgIHhoci5vcGVuKG1ldGhvZCwgdXJsLCB0cnVlKTtcbiAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCdBY2NlcHQnLCAnYXBwbGljYXRpb24vanNvbicpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsIGNvbnRlbnRUeXBlKTtcblxuICAgICAgaWYgKCEhY3NyZlRva2VuU2VsZWN0b3IgJiYgISFjc3JmVG9rZW5TZWxlY3Rvci5jb250ZW50KSB7XG4gICAgICAgIHhoci5zZXRSZXF1ZXN0SGVhZGVyKCdYLUNTUkYtVG9rZW4nLCBjc3JmVG9rZW5TZWxlY3Rvci5jb250ZW50KTtcbiAgICAgIH1cblxuICAgICAgLy8gQWRkIHBhc3NlZCBoZWFkZXJzXG4gICAgICBPYmplY3Qua2V5cyhoZWFkZXJzKS5mb3JFYWNoKGZ1bmN0aW9uIChoZWFkZXIpIHtcbiAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoaGVhZGVyLCBoZWFkZXJzW2hlYWRlcl0pO1xuICAgICAgfSk7XG5cbiAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh4aHIucmVhZHlTdGF0ZSA9PT0gNCkge1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHZhciByZXNwb25zZSA9IHhoci5yZXNwb25zZVRleHQgPyBKU09OLnBhcnNlKHhoci5yZXNwb25zZVRleHQpIDogbnVsbDtcbiAgICAgICAgICAgIGlmICh4aHIuc3RhdHVzID49IDIwMCAmJiB4aHIuc3RhdHVzIDwgMzAwKSB7XG4gICAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmVqZWN0KHJlc3BvbnNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICByZWplY3QoZSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICB4aHIuc2VuZChkYXRhKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZWplY3QoZSk7XG4gICAgfVxuICB9KTtcbn07XG5cbm1vZHVsZS5leHBvcnRzID0ge1xuICBhcnJheXNEaWZmZXI6IGZ1bmN0aW9uIChhcnJheUEsIGFycmF5Qikge1xuICAgIHZhciBpc0RpZmZlcmVudCA9IGZhbHNlO1xuICAgIGlmIChhcnJheUEubGVuZ3RoICE9PSBhcnJheUIubGVuZ3RoKSB7XG4gICAgICBpc0RpZmZlcmVudCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFycmF5QS5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBpbmRleCkge1xuICAgICAgICBpZiAoaXRlbSAhPT0gYXJyYXlCW2luZGV4XSkge1xuICAgICAgICAgIGlzRGlmZmVyZW50ID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBpc0RpZmZlcmVudDtcbiAgfSxcbiAgYWpheDoge1xuICAgIHBvc3Q6IHJlcXVlc3QuYmluZChudWxsLCAnUE9TVCcpLFxuICAgIHB1dDogcmVxdWVzdC5iaW5kKG51bGwsICdQVVQnKVxuICB9XG59O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZkWFJwYkhNdWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0pqTDNWMGFXeHpMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFbEJRVWtzYVVKQlFXbENMRWRCUVVjc1QwRkJUeXhSUVVGUkxFbEJRVWtzVjBGQlZ5eEhRVUZITEZGQlFWRXNRMEZCUXl4aFFVRmhMRU5CUVVNc2VVSkJRWGxDTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNN08wRkJSV3hJTEVsQlFVa3NXVUZCV1N4SFFVRkhMRlZCUVZVc1QwRkJUeXhGUVVGRkxFZEJRVWNzUlVGQlJTeEpRVUZKTEVWQlFVVTdSVUZETDBNc1NVRkJTU3hKUVVGSkxFZEJRVWNzU1VGQlNTeEpRVUZKTEVWQlFVVXNRMEZCUXp0RlFVTjBRaXhKUVVGSkxGRkJRVkVzVDBGQlR5eERRVUZETEVsQlFVa3NVVUZCVVN4RlFVRkZPMGxCUTJoRExFdEJRVXNzU1VGQlNTeEhRVUZITEVsQlFVa3NUMEZCVHp0TlFVTnlRaXhaUVVGWkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NRMEZCUXl4RlFVRkZMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUjBGQlJ5eEhRVUZITEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1IwRkJSeXhGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBkQlEzWkZMRTFCUVUwN1NVRkRUQ3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc2EwSkJRV3RDTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1EwRkJRenRIUVVOd1JEdEZRVU5FTEU5QlFVOHNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF6dEJRVU40UWl4RFFVRkRMRU5CUVVNN08wRkJSVVlzU1VGQlNTeFBRVUZQTEVkQlFVY3NWVUZCVlN4TlFVRk5MRVZCUVVVc1IwRkJSeXhGUVVGRkxFbEJRVWtzUlVGQlJTeFhRVUZYTEVWQlFVVXNUMEZCVHl4RlFVRkZPenRGUVVVdlJDeEpRVUZKTEZkQlFWY3NSMEZCUnl4WFFVRlhMRXRCUVVzc1dVRkJXU3hIUVVGSExHTkJRV01zUjBGQlJ5eFhRVUZYTEVOQlFVTXNUMEZCVHl4RFFVRkRMRmxCUVZrc1JVRkJSU3gxUWtGQmRVSXNRMEZCUXl4SFFVRkhMR3RDUVVGclFpeERRVUZETzBGQlEzQktMRVZCUVVVc1NVRkJTU3hIUVVGSExGZEJRVmNzUzBGQlN5eHJRa0ZCYTBJc1IwRkJSeXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMRmxCUVZrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6czdSVUZGZEVZc1QwRkJUeXhKUVVGSkxFOUJRVThzUTBGQlF5eFZRVUZWTEU5QlFVOHNSVUZCUlN4TlFVRk5MRVZCUVVVN1NVRkROVU1zU1VGQlNUdE5RVU5HTEVsQlFVa3NSMEZCUnl4SFFVRkhMRWxCUVVrc1kwRkJZeXhGUVVGRkxFTkJRVU03VFVGREwwSXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXhOUVVGTkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUXpWQ0xFZEJRVWNzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhSUVVGUkxFVkJRVVVzYTBKQlFXdENMRU5CUVVNc1EwRkJRenRCUVVONlJDeE5RVUZOTEVkQlFVY3NRMEZCUXl4blFrRkJaMElzUTBGQlF5eGpRVUZqTEVWQlFVVXNWMEZCVnl4RFFVRkRMRU5CUVVNN08wMUJSV3hFTEVsQlFVa3NRMEZCUXl4RFFVRkRMR2xDUVVGcFFpeEpRVUZKTEVOQlFVTXNRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eFBRVUZQTEVWQlFVVTdVVUZEZEVRc1IwRkJSeXhEUVVGRExHZENRVUZuUWl4RFFVRkRMR05CUVdNc1JVRkJSU3hwUWtGQmFVSXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRCUVVONFJTeFBRVUZQTzBGQlExQTdPMDFCUlUwc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hOUVVGTkxFVkJRVVU3VVVGRE4wTXNSMEZCUnl4RFFVRkRMR2RDUVVGblFpeERRVUZETEUxQlFVMHNSVUZCUlN4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4wUkN4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEhRVUZITEVOQlFVTXNhMEpCUVd0Q0xFZEJRVWNzV1VGQldUdEJRVU16UXl4UlFVRlJMRWxCUVVrc1IwRkJSeXhEUVVGRExGVkJRVlVzUzBGQlN5eERRVUZETEVWQlFVVTdPMVZCUlhoQ0xFbEJRVWs3V1VGRFJpeEpRVUZKTEZGQlFWRXNSMEZCUnl4SFFVRkhMRU5CUVVNc1dVRkJXU3hIUVVGSExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRmxCUVZrc1EwRkJReXhIUVVGSExFbEJRVWtzUTBGQlF6dFpRVU4wUlN4SlFVRkpMRWRCUVVjc1EwRkJReXhOUVVGTkxFbEJRVWtzUjBGQlJ5eEpRVUZKTEVkQlFVY3NRMEZCUXl4TlFVRk5MRWRCUVVjc1IwRkJSeXhGUVVGRk8yTkJRM3BETEU5QlFVOHNRMEZCUXl4UlFVRlJMRU5CUVVNc1EwRkJRenRoUVVOdVFpeE5RVUZOTzJOQlEwd3NUVUZCVFN4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8yRkJRMnhDTzFkQlEwWXNRMEZCUXl4UFFVRlBMRU5CUVVNc1JVRkJSVHRaUVVOV0xFMUJRVTBzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjBRaXhYUVVGWE96dFRRVVZHTzA5QlEwWXNRMEZCUXp0TlFVTkdMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdTMEZEYUVJc1EwRkJReXhQUVVGUExFTkJRVU1zUlVGQlJUdE5RVU5XTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOWU8wZEJRMFlzUTBGQlF5eERRVUZETzBGQlEwd3NRMEZCUXl4RFFVRkRPenRCUVVWR0xFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVYzdSVUZEWml4WlFVRlpMRVZCUVVVc1ZVRkJWU3hOUVVGTkxFVkJRVVVzVFVGQlRTeEZRVUZGTzBsQlEzUkRMRWxCUVVrc1YwRkJWeXhIUVVGSExFdEJRVXNzUTBGQlF6dEpRVU40UWl4SlFVRkpMRTFCUVUwc1EwRkJReXhOUVVGTkxFdEJRVXNzVFVGQlRTeERRVUZETEUxQlFVMHNSVUZCUlR0TlFVTnVReXhYUVVGWExFZEJRVWNzU1VGQlNTeERRVUZETzB0QlEzQkNMRTFCUVUwN1RVRkRUQ3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSVHRSUVVOd1F5eEpRVUZKTEVsQlFVa3NTMEZCU3l4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFVkJRVVU3VlVGRE1VSXNWMEZCVnl4SFFVRkhMRWxCUVVrc1EwRkJRenRUUVVOd1FqdFBRVU5HTEVOQlFVTXNRMEZCUXp0TFFVTktPMGxCUTBRc1QwRkJUeXhYUVVGWExFTkJRVU03UjBGRGNFSTdSVUZEUkN4SlFVRkpMRVZCUVVVN1NVRkRTaXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRVZCUVVVc1RVRkJUU3hEUVVGRE8wbEJRMmhETEVkQlFVY3NSVUZCUlN4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVOQlFVTTdSMEZETDBJN1EwRkRSaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lkbUZ5SUdOemNtWlViMnRsYmxObGJHVmpkRzl5SUQwZ2RIbHdaVzltSUdSdlkzVnRaVzUwSUNFOUlDZDFibVJsWm1sdVpXUW5JRDhnWkc5amRXMWxiblF1Y1hWbGNubFRaV3hsWTNSdmNpZ25iV1YwWVZ0dVlXMWxQVndpWTNOeVppMTBiMnRsYmx3aVhTY3BJRG9nYm5Wc2JEdGNibHh1ZG1GeUlIUnZWVkpNUlc1amIyUmxaQ0E5SUdaMWJtTjBhVzl1SUNobGJHVnRaVzUwTENCclpYa3NJR3hwYzNRcElIdGNiaUFnZG1GeUlHeHBjM1FnUFNCc2FYTjBJSHg4SUZ0ZE8xeHVJQ0JwWmlBb2RIbHdaVzltSUNobGJHVnRaVzUwS1NBOVBTQW5iMkpxWldOMEp5a2dlMXh1SUNBZ0lHWnZjaUFvZG1GeUlHbGtlQ0JwYmlCbGJHVnRaVzUwS1Z4dUlDQWdJQ0FnZEc5VlVreEZibU52WkdWa0tHVnNaVzFsYm5SYmFXUjRYU3dnYTJWNUlEOGdhMlY1SUNzZ0oxc25JQ3NnYVdSNElDc2dKMTBuSURvZ2FXUjRMQ0JzYVhOMEtUdGNiaUFnZlNCbGJITmxJSHRjYmlBZ0lDQnNhWE4wTG5CMWMyZ29hMlY1SUNzZ0p6MG5JQ3NnWlc1amIyUmxWVkpKUTI5dGNHOXVaVzUwS0dWc1pXMWxiblFwS1R0Y2JpQWdmVnh1SUNCeVpYUjFjbTRnYkdsemRDNXFiMmx1S0NjbUp5azdYRzU5TzF4dVhHNTJZWElnY21WeGRXVnpkQ0E5SUdaMWJtTjBhVzl1SUNodFpYUm9iMlFzSUhWeWJDd2daR0YwWVN3Z1kyOXVkR1Z1ZEZSNWNHVXNJR2hsWVdSbGNuTXBJSHRjYmx4dUlDQjJZWElnWTI5dWRHVnVkRlI1Y0dVZ1BTQmpiMjUwWlc1MFZIbHdaU0E5UFQwZ0ozVnliR1Z1WTI5a1pXUW5JRDhnSjJGd2NHeHBZMkYwYVc5dUx5Y2dLeUJqYjI1MFpXNTBWSGx3WlM1eVpYQnNZV05sS0NkMWNteGxibU52WkdWa0p5d2dKM2d0ZDNkM0xXWnZjbTB0ZFhKc1pXNWpiMlJsWkNjcElEb2dKMkZ3Y0d4cFkyRjBhVzl1TDJwemIyNG5PMXh1SUNCa1lYUmhJRDBnWTI5dWRHVnVkRlI1Y0dVZ1BUMDlJQ2RoY0hCc2FXTmhkR2x2Ymk5cWMyOXVKeUEvSUVwVFQwNHVjM1J5YVc1bmFXWjVLR1JoZEdFcElEb2dkRzlWVWt4RmJtTnZaR1ZrS0dSaGRHRXBPMXh1WEc0Z0lISmxkSFZ5YmlCdVpYY2dVSEp2YldselpTaG1kVzVqZEdsdmJpQW9jbVZ6YjJ4MlpTd2djbVZxWldOMEtTQjdYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJSFpoY2lCNGFISWdQU0J1WlhjZ1dFMU1TSFIwY0ZKbGNYVmxjM1FvS1R0Y2JpQWdJQ0FnSUhob2NpNXZjR1Z1S0cxbGRHaHZaQ3dnZFhKc0xDQjBjblZsS1R0Y2JpQWdJQ0FnSUhob2NpNXpaWFJTWlhGMVpYTjBTR1ZoWkdWeUtDZEJZMk5sY0hRbkxDQW5ZWEJ3YkdsallYUnBiMjR2YW5OdmJpY3BPMXh1SUNBZ0lDQWdlR2h5TG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvSjBOdmJuUmxiblF0Vkhsd1pTY3NJR052Ym5SbGJuUlVlWEJsS1R0Y2JseHVJQ0FnSUNBZ2FXWWdLQ0VoWTNOeVpsUnZhMlZ1VTJWc1pXTjBiM0lnSmlZZ0lTRmpjM0ptVkc5clpXNVRaV3hsWTNSdmNpNWpiMjUwWlc1MEtTQjdYRzRnSUNBZ0lDQWdJSGhvY2k1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NkWUxVTlRVa1l0Vkc5clpXNG5MQ0JqYzNKbVZHOXJaVzVUWld4bFkzUnZjaTVqYjI1MFpXNTBLVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnTHk4Z1FXUmtJSEJoYzNObFpDQm9aV0ZrWlhKelhHNGdJQ0FnSUNCUFltcGxZM1F1YTJWNWN5aG9aV0ZrWlhKektTNW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaG9aV0ZrWlhJcElIdGNiaUFnSUNBZ0lDQWdlR2h5TG5ObGRGSmxjWFZsYzNSSVpXRmtaWElvYUdWaFpHVnlMQ0JvWldGa1pYSnpXMmhsWVdSbGNsMHBPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUhob2NpNXZibkpsWVdSNWMzUmhkR1ZqYUdGdVoyVWdQU0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2g0YUhJdWNtVmhaSGxUZEdGMFpTQTlQVDBnTkNrZ2UxeHVYRzRnSUNBZ0lDQWdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lDQWdJQ0FnSUhaaGNpQnlaWE53YjI1elpTQTlJSGhvY2k1eVpYTndiMjV6WlZSbGVIUWdQeUJLVTA5T0xuQmhjbk5sS0hob2NpNXlaWE53YjI1elpWUmxlSFFwSURvZ2JuVnNiRHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHbG1JQ2g0YUhJdWMzUmhkSFZ6SUQ0OUlESXdNQ0FtSmlCNGFISXVjM1JoZEhWeklEd2dNekF3S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUhKbGMyOXNkbVVvY21WemNHOXVjMlVwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2NtVnFaV04wS0hKbGMzQnZibk5sS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnSUNCOUlHTmhkR05vSUNobEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpXcGxZM1FvWlNrN1hHNGdJQ0FnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwN1hHNGdJQ0FnSUNCNGFISXVjMlZ1WkNoa1lYUmhLVHRjYmlBZ0lDQjlJR05oZEdOb0lDaGxLU0I3WEc0Z0lDQWdJQ0J5WldwbFkzUW9aU2s3WEc0Z0lDQWdmVnh1SUNCOUtUdGNibjA3WEc1Y2JtMXZaSFZzWlM1bGVIQnZjblJ6SUQwZ2UxeHVJQ0JoY25KaGVYTkVhV1ptWlhJNklHWjFibU4wYVc5dUlDaGhjbkpoZVVFc0lHRnljbUY1UWlrZ2UxeHVJQ0FnSUhaaGNpQnBjMFJwWm1abGNtVnVkQ0E5SUdaaGJITmxPMXh1SUNBZ0lHbG1JQ2hoY25KaGVVRXViR1Z1WjNSb0lDRTlQU0JoY25KaGVVSXViR1Z1WjNSb0tTQjdYRzRnSUNBZ0lDQnBjMFJwWm1abGNtVnVkQ0E5SUhSeWRXVTdYRzRnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUdGeWNtRjVRUzVtYjNKRllXTm9LR1oxYm1OMGFXOXVJQ2hwZEdWdExDQnBibVJsZUNrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYVhSbGJTQWhQVDBnWVhKeVlYbENXMmx1WkdWNFhTa2dlMXh1SUNBZ0lDQWdJQ0FnSUdselJHbG1abVZ5Wlc1MElEMGdkSEoxWlR0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ2ZWeHVJQ0FnSUhKbGRIVnliaUJwYzBScFptWmxjbVZ1ZER0Y2JpQWdmU3hjYmlBZ1lXcGhlRG9nZTF4dUlDQWdJSEJ2YzNRNklISmxjWFZsYzNRdVltbHVaQ2h1ZFd4c0xDQW5VRTlUVkNjcExGeHVJQ0FnSUhCMWREb2djbVZ4ZFdWemRDNWlhVzVrS0c1MWJHd3NJQ2RRVlZRbktWeHVJQ0I5WEc1OU8xeHVJbDE5IiwibW9kdWxlLmV4cG9ydHMgPSB7XG4gICdpc1ZhbHVlJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlICE9PSAnJztcbiAgfSxcbiAgJ2lzRW1haWwnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL14oKChbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKFxcLihbYS16XXxcXGR8WyEjXFwkJSYnXFwqXFwrXFwtXFwvPVxcP1xcXl9ge1xcfH1+XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkrKSopfCgoXFx4MjIpKCgoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oKFtcXHgwMS1cXHgwOFxceDBiXFx4MGNcXHgwZS1cXHgxZlxceDdmXXxcXHgyMXxbXFx4MjMtXFx4NWJdfFtcXHg1ZC1cXHg3ZV18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pfChcXFxcKFtcXHgwMS1cXHgwOVxceDBiXFx4MGNcXHgwZC1cXHg3Zl18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pKSkpKigoKFxceDIwfFxceDA5KSooXFx4MGRcXHgwYSkpPyhcXHgyMHxcXHgwOSkrKT8oXFx4MjIpKSlAKCgoW2Etel18XFxkfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKXwoKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFxcZHxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkpKVxcLikrKChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSl8KChbYS16XXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkoW2Etel18XFxkfC18XFwufF98fnxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkqKFthLXpdfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSkpJC9pKTtcbiAgfSxcbiAgJ2lzVHJ1ZSc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZSA9PT0gdHJ1ZTtcbiAgfSxcbiAgJ2lzTnVtZXJpYyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFyIG1hdGNoUmVzdWx0cyA9IHZhbHVlLm1hdGNoKC9bLStdPyhcXGQqWy5dKT9cXGQrLyk7XG4gICAgICBpZiAoISEgbWF0Y2hSZXN1bHRzKSB7XG4gICAgICAgIHJldHVybiBtYXRjaFJlc3VsdHNbMF0gPT0gdmFsdWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9LFxuICAnaXNBbHBoYSc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpdKyQvKTtcbiAgfSxcbiAgJ2lzV29yZHMnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUubWF0Y2goL15bYS16QS1aXFxzXSskLyk7XG4gIH0sXG4gICdpc1NwZWNpYWxXb3Jkcyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpcXHNcXHUwMEMwLVxcdTAxN0ZdKyQvKTtcbiAgfSxcbiAgaXNMZW5ndGg6IGZ1bmN0aW9uICh2YWx1ZSwgbWluLCBtYXgpIHtcbiAgICBpZiAobWF4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPj0gbWluICYmIHZhbHVlLmxlbmd0aCA8PSBtYXg7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPj0gbWluO1xuICB9LFxuICBlcXVhbHM6IGZ1bmN0aW9uICh2YWx1ZSwgZXFsKSB7XG4gICAgcmV0dXJuIHZhbHVlID09IGVxbDtcbiAgfSxcbiAgZXF1YWxzRmllbGQ6IGZ1bmN0aW9uICh2YWx1ZSwgZmllbGQpIHtcbiAgICByZXR1cm4gdmFsdWUgPT0gdGhpc1tmaWVsZF07XG4gIH1cbn07XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdmRtRnNhV1JoZEdsdmJsSjFiR1Z6TG1weklpd2ljMjkxY21ObGN5STZXeUl2VlhObGNuTXZZMmh5YVhOMGFXRnVZV3htYjI1cEwwUnZZM1Z0Wlc1MGN5OWtaWFl2Wm05eWJYTjVMWEpsWVdOMEwzTnlZeTkyWVd4cFpHRjBhVzl1VW5Wc1pYTXVhbk1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFc1RVRkJUU3hEUVVGRExFOUJRVThzUjBGQlJ6dEZRVU5tTEZOQlFWTXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVNeFFpeFBRVUZQTEV0QlFVc3NTMEZCU3l4RlFVRkZMRU5CUVVNN1IwRkRja0k3UlVGRFJDeFRRVUZUTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRNVUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMSGswUWtGQmVUUkNMRU5CUVVNc1EwRkJRenRIUVVNdk5VSTdSVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3U1VGRGVrSXNUMEZCVHl4TFFVRkxMRXRCUVVzc1NVRkJTU3hEUVVGRE8wZEJRM1pDTzBWQlEwUXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8wbEJRelZDTEVsQlFVa3NUMEZCVHl4TFFVRkxMRXRCUVVzc1VVRkJVU3hGUVVGRk8wMUJRemRDTEU5QlFVOHNTVUZCU1N4RFFVRkRPMHRCUTJJc1RVRkJUVHROUVVOTUxFbEJRVWtzV1VGQldTeEhRVUZITEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc2JVSkJRVzFDTEVOQlFVTXNRMEZCUXp0TlFVTndSQ3hKUVVGSkxFTkJRVU1zUlVGQlJTeFpRVUZaTEVWQlFVVTdVVUZEYmtJc1QwRkJUeXhaUVVGWkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NTMEZCU3l4RFFVRkRPMDlCUTJwRExFMUJRVTA3VVVGRFRDeFBRVUZQTEV0QlFVc3NRMEZCUXp0UFFVTmtPMHRCUTBZN1IwRkRSanRGUVVORUxGTkJRVk1zUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0SlFVTXhRaXhQUVVGUExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNZVUZCWVN4RFFVRkRMRU5CUVVNN1IwRkRia003UlVGRFJDeFRRVUZUTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRNVUlzVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMR1ZCUVdVc1EwRkJReXhEUVVGRE8wZEJRM0pETzBWQlEwUXNaMEpCUVdkQ0xFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdTVUZEYWtNc1QwRkJUeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETERSQ1FVRTBRaXhEUVVGRExFTkJRVU03UjBGRGJFUTdSVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVVzUjBGQlJ5eEZRVUZGTEVkQlFVY3NSVUZCUlR0SlFVTnVReXhKUVVGSkxFZEJRVWNzUzBGQlN5eFRRVUZUTEVWQlFVVTdUVUZEY2tJc1QwRkJUeXhMUVVGTExFTkJRVU1zVFVGQlRTeEpRVUZKTEVkQlFVY3NTVUZCU1N4TFFVRkxMRU5CUVVNc1RVRkJUU3hKUVVGSkxFZEJRVWNzUTBGQlF6dExRVU51UkR0SlFVTkVMRTlCUVU4c1MwRkJTeXhEUVVGRExFMUJRVTBzU1VGQlNTeEhRVUZITEVOQlFVTTdSMEZETlVJN1JVRkRSQ3hOUVVGTkxFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVXNSMEZCUnl4RlFVRkZPMGxCUXpWQ0xFOUJRVThzUzBGQlN5eEpRVUZKTEVkQlFVY3NRMEZCUXp0SFFVTnlRanRGUVVORUxGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlN4TFFVRkxMRVZCUVVVN1NVRkRia01zVDBGQlR5eExRVUZMTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wZEJRemRDTzBOQlEwWXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltMXZaSFZzWlM1bGVIQnZjblJ6SUQwZ2UxeHVJQ0FuYVhOV1lXeDFaU2M2SUdaMWJtTjBhVzl1SUNoMllXeDFaU2tnZTF4dUlDQWdJSEpsZEhWeWJpQjJZV3gxWlNBaFBUMGdKeWM3WEc0Z0lIMHNYRzRnSUNkcGMwVnRZV2xzSnpvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbExtMWhkR05vS0M5ZUtDZ29XMkV0ZWwxOFhGeGtmRnNoSTF4Y0pDVW1KMXhjS2x4Y0sxeGNMVnhjTHoxY1hEOWNYRjVmWUh0Y1hIeDlmbDE4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEt5aGNYQzRvVzJFdGVsMThYRnhrZkZzaEkxeGNKQ1VtSjF4Y0tseGNLMXhjTFZ4Y0x6MWNYRDljWEY1ZllIdGNYSHg5ZmwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLeWtxS1h3b0tGeGNlREl5S1Nnb0tDaGNYSGd5TUh4Y1hIZ3dPU2txS0Z4Y2VEQmtYRng0TUdFcEtUOG9YRng0TWpCOFhGeDRNRGtwS3lrL0tDaGJYRng0TURFdFhGeDRNRGhjWEhnd1lseGNlREJqWEZ4NE1HVXRYRng0TVdaY1hIZzNabDE4WEZ4NE1qRjhXMXhjZURJekxWeGNlRFZpWFh4YlhGeDROV1F0WEZ4NE4yVmRmRnRjWEhVd01FRXdMVnhjZFVRM1JrWmNYSFZHT1RBd0xWeGNkVVpFUTBaY1hIVkdSRVl3TFZ4Y2RVWkdSVVpkS1h3b1hGeGNYQ2hiWEZ4NE1ERXRYRng0TURsY1hIZ3dZbHhjZURCalhGeDRNR1F0WEZ4NE4yWmRmRnRjWEhVd01FRXdMVnhjZFVRM1JrWmNYSFZHT1RBd0xWeGNkVVpFUTBaY1hIVkdSRVl3TFZ4Y2RVWkdSVVpkS1NrcEtTb29LQ2hjWEhneU1IeGNYSGd3T1NrcUtGeGNlREJrWEZ4NE1HRXBLVDhvWEZ4NE1qQjhYRng0TURrcEt5ay9LRnhjZURJeUtTa3BRQ2dvS0Z0aExYcGRmRnhjWkh4YlhGeDFNREJCTUMxY1hIVkVOMFpHWEZ4MVJqa3dNQzFjWEhWR1JFTkdYRngxUmtSR01DMWNYSFZHUmtWR1hTbDhLQ2hiWVMxNlhYeGNYR1I4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEtGdGhMWHBkZkZ4Y1pId3RmRnhjTG54ZmZINThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS2loYllTMTZYWHhjWEdSOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLU2xjWEM0cEt5Z29XMkV0ZWwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBmQ2dvVzJFdGVsMThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS0Z0aExYcGRmRnhjWkh3dGZGeGNMbnhmZkg1OFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLaWhiWVMxNlhYeGJYRngxTURCQk1DMWNYSFZFTjBaR1hGeDFSamt3TUMxY1hIVkdSRU5HWEZ4MVJrUkdNQzFjWEhWR1JrVkdYU2twS1NRdmFTazdYRzRnSUgwc1hHNGdJQ2RwYzFSeWRXVW5PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1VnUFQwOUlIUnlkV1U3WEc0Z0lIMHNYRzRnSUNkcGMwNTFiV1Z5YVdNbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCcFppQW9kSGx3Wlc5bUlIWmhiSFZsSUQwOVBTQW5iblZ0WW1WeUp5a2dlMXh1SUNBZ0lDQWdjbVYwZFhKdUlIUnlkV1U3WEc0Z0lDQWdmU0JsYkhObElIdGNiaUFnSUNBZ0lIWmhjaUJ0WVhSamFGSmxjM1ZzZEhNZ1BTQjJZV3gxWlM1dFlYUmphQ2d2V3kwclhUOG9YRnhrS2xzdVhTay9YRnhrS3k4cE8xeHVJQ0FnSUNBZ2FXWWdLQ0VoSUcxaGRHTm9VbVZ6ZFd4MGN5a2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdiV0YwWTJoU1pYTjFiSFJ6V3pCZElEMDlJSFpoYkhWbE8xeHVJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUdaaGJITmxPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMWNiaUFnZlN4Y2JpQWdKMmx6UVd4d2FHRW5PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXBJSHRjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YldGMFkyZ29MMTViWVMxNlFTMWFYU3NrTHlrN1hHNGdJSDBzWEc0Z0lDZHBjMWR2Y21Sekp6b2dablZ1WTNScGIyNGdLSFpoYkhWbEtTQjdYRzRnSUNBZ2NtVjBkWEp1SUhaaGJIVmxMbTFoZEdOb0tDOWVXMkV0ZWtFdFdseGNjMTBySkM4cE8xeHVJQ0I5TEZ4dUlDQW5hWE5UY0dWamFXRnNWMjl5WkhNbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVXViV0YwWTJnb0wxNWJZUzE2UVMxYVhGeHpYRngxTURCRE1DMWNYSFV3TVRkR1hTc2tMeWs3WEc0Z0lIMHNYRzRnSUdselRHVnVaM1JvT2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VzSUcxcGJpd2diV0Y0S1NCN1hHNGdJQ0FnYVdZZ0tHMWhlQ0FoUFQwZ2RXNWtaV1pwYm1Wa0tTQjdYRzRnSUNBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YkdWdVozUm9JRDQ5SUcxcGJpQW1KaUIyWVd4MVpTNXNaVzVuZEdnZ1BEMGdiV0Y0TzF4dUlDQWdJSDFjYmlBZ0lDQnlaWFIxY200Z2RtRnNkV1V1YkdWdVozUm9JRDQ5SUcxcGJqdGNiaUFnZlN4Y2JpQWdaWEYxWVd4ek9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVc0lHVnhiQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjJZV3gxWlNBOVBTQmxjV3c3WEc0Z0lIMHNYRzRnSUdWeGRXRnNjMFpwWld4a09pQm1kVzVqZEdsdmJpQW9kbUZzZFdVc0lHWnBaV3hrS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbElEMDlJSFJvYVhOYlptbGxiR1JkTzF4dUlDQjlYRzU5TzF4dUlsMTkiXX0= +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm5vZGVfbW9kdWxlcy9icm93c2VyaWZ5L25vZGVfbW9kdWxlcy9icm93c2VyLXBhY2svX3ByZWx1ZGUuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NwZWNzL0VsZW1lbnQtc3BlYy5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3BlY3MvRm9ybXN5LXNwZWMuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NwZWNzL1N1Ym1pdC1zcGVjLmpzIiwiL1VzZXJzL2NocmlzdGlhbmFsZm9uaS9Eb2N1bWVudHMvZGV2L2Zvcm1zeS1yZWFjdC9zcGVjcy9WYWxpZGF0aW9uLXNwZWMuanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy9NaXhpbi5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3JjL21haW4uanMiLCIvVXNlcnMvY2hyaXN0aWFuYWxmb25pL0RvY3VtZW50cy9kZXYvZm9ybXN5LXJlYWN0L3NyYy91dGlscy5qcyIsIi9Vc2Vycy9jaHJpc3RpYW5hbGZvbmkvRG9jdW1lbnRzL2Rldi9mb3Jtc3ktcmVhY3Qvc3JjL3ZhbGlkYXRpb25SdWxlcy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQ0FBLElBQUksTUFBTSxHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDOztBQUV6QyxRQUFRLENBQUMsU0FBUyxFQUFFLFdBQVc7O0FBRS9CLEVBQUUsRUFBRSxDQUFDLGlFQUFpRSxFQUFFLFlBQVk7O0lBRWhGLElBQUksU0FBUyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxXQUFXLEVBQUUsV0FBVztNQUN6RCxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxD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VyxFQUFFLFVBQVUsS0FBSyxFQUFFLEtBQUssRUFBRTtJQUNuQyxPQUFPLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7R0FDN0I7QUFDSCxDQUFDLENBQUM7O0FBRUYiLCJmaWxlIjoiZ2VuZXJhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbIihmdW5jdGlvbiBlKHQsbixyKXtmdW5jdGlvbiBzKG8sdSl7aWYoIW5bb10pe2lmKCF0W29dKXt2YXIgYT10eXBlb2YgcmVxdWlyZT09XCJmdW5jdGlvblwiJiZyZXF1aXJlO2lmKCF1JiZhKXJldHVybiBhKG8sITApO2lmKGkpcmV0dXJuIGkobywhMCk7dmFyIGY9bmV3IEVycm9yKFwiQ2Fubm90IGZpbmQgbW9kdWxlICdcIitvK1wiJ1wiKTt0aHJvdyBmLmNvZGU9XCJNT0RVTEVfTk9UX0ZPVU5EXCIsZn12YXIgbD1uW29dPXtleHBvcnRzOnt9fTt0W29dWzBdLmNhbGwobC5leHBvcnRzLGZ1bmN0aW9uKGUpe3ZhciBuPXRbb11bMV1bZV07cmV0dXJuIHMobj9uOmUpfSxsLGwuZXhwb3J0cyxlLHQsbixyKX1yZXR1cm4gbltvXS5leHBvcnRzfXZhciBpPXR5cGVvZiByZXF1aXJlPT1cImZ1bmN0aW9uXCImJnJlcXVpcmU7Zm9yKHZhciBvPTA7bzxyLmxlbmd0aDtvKyspcyhyW29dKTtyZXR1cm4gc30pIiwidmFyIEZvcm1zeSA9IHJlcXVpcmUoJy4vLi4vc3JjL21haW4uanMnKTtcblxuZGVzY3JpYmUoJ0VsZW1lbnQnLCBmdW5jdGlvbigpIHtcblxuICBpdCgnc2hvdWxkIHJldHVybiBwYXNzZWQgYW5kIHNldFZhbHVlKCkgdmFsdWUgd2hlbiB1c2luZyBnZXRWYWx1ZSgpJywgZnVuY3Rpb24gKCkge1xuICAgIFxuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIGV4cGVjdChpbnB1dC5nZXRET01Ob2RlKCkudmFsdWUpLnRvQmUoJ2ZvbycpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvb2Jhcid9fSk7XG4gICAgZXhwZWN0KGlucHV0LmdldERPTU5vZGUoKS52YWx1ZSkudG9CZSgnZm9vYmFyJyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBzZXQgYmFjayB0byBwcmlzdGluZSB2YWx1ZSB3aGVuIHJ1bm5pbmcgcmVzZXQnLCBmdW5jdGlvbiAoKSB7XG4gICAgXG4gICAgdmFyIHJlc2V0ID0gbnVsbDtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJlc2V0ID0gdGhpcy5yZXNldFZhbHVlO1xuICAgICAgfSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICdmb29iYXInfX0pO1xuICAgIHJlc2V0KCk7XG4gICAgZXhwZWN0KGlucHV0LmdldERPTU5vZGUoKS52YWx1ZSkudG9CZSgnZm9vJyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gZXJyb3IgbWVzc2FnZSBwYXNzZWQgd2hlbiBjYWxsaW5nIGdldEVycm9yTWVzc2FnZSgpJywgZnVuY3Rpb24gKCkge1xuICAgIFxuICAgIHZhciBnZXRFcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZ2V0RXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2U7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIiwgdmFsaWRhdGlvbnM6IFwiaXNFbWFpbFwiLCB2YWxpZGF0aW9uRXJyb3I6IFwiSGFzIHRvIGJlIGVtYWlsXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICBleHBlY3QoZ2V0RXJyb3JNZXNzYWdlKCkpLnRvQmUoJ0hhcyB0byBiZSBlbWFpbCcpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHNlcnZlciBlcnJvciBtZXNzYWdlIHdoZW4gY2FsbGluZyBnZXRFcnJvck1lc3NhZ2UoKScsIGZ1bmN0aW9uIChkb25lKSB7XG4gICAgXG4gICAgamFzbWluZS5BamF4Lmluc3RhbGwoKTtcblxuICAgIHZhciBnZXRFcnJvck1lc3NhZ2UgPSBudWxsO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZ2V0RXJyb3JNZXNzYWdlID0gdGhpcy5nZXRFcnJvck1lc3NhZ2U7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIiwgdmFsaWRhdGlvbkVycm9yOiBcIkhhcyB0byBiZSBlbWFpbFwifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcblxuICAgIGphc21pbmUuQWpheC5yZXF1ZXN0cy5tb3N0UmVjZW50KCkucmVzcG9uZFdpdGgoe1xuICAgICAgc3RhdHVzOiA1MDAsXG4gICAgICBjb250ZW50VHlwZTogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgcmVzcG9uc2VUZXh0OiAne1wiZm9vXCI6IFwiYmFyXCJ9J1xuICAgIH0pXG5cbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGV4cGVjdChnZXRFcnJvck1lc3NhZ2UoKSkudG9CZSgnYmFyJyk7XG4gICAgICBqYXNtaW5lLkFqYXgudW5pbnN0YWxsKCk7XG4gICAgICBkb25lKCk7XG4gICAgfSwgMCk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCByZXR1cm4gdHJ1ZSBvciBmYWxzZSB3aGVuIGNhbGxpbmcgaXNWYWxpZCgpIGRlcGVuZGluZyBvbiB2YWxpZCBzdGF0ZScsIGZ1bmN0aW9uICgpIHtcbiAgICBcbiAgICB2YXIgaXNWYWxpZCA9IG51bGw7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICBpc1ZhbGlkID0gdGhpcy5pc1ZhbGlkO1xuICAgICAgfSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIn0sIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHZhbHVlOiBcImZvb1wiLCB2YWxpZGF0aW9uczogXCJpc0VtYWlsXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICBleHBlY3QoaXNWYWxpZCgpKS50b0JlKGZhbHNlKTtcbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICdmb29AZm9vLmNvbSd9fSk7XG4gICAgZXhwZWN0KGlzVmFsaWQoKSkudG9CZSh0cnVlKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0cnVlIG9yIGZhbHNlIHdoZW4gY2FsbGluZyBpc1JlcXVpcmVkKCkgZGVwZW5kaW5nIG9uIHBhc3NlZCByZXF1aXJlZCBhdHRyaWJ1dGUnLCBmdW5jdGlvbiAoKSB7XG4gICAgXG4gICAgdmFyIGlzUmVxdWlyZWRzID0gW107XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICBpc1JlcXVpcmVkcy5wdXNoKHRoaXMuaXNSZXF1aXJlZCk7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCJ9KSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHJlcXVpcmVkOiB0cnVlfSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgZXhwZWN0KGlzUmVxdWlyZWRzWzBdKCkpLnRvQmUoZmFsc2UpO1xuICAgIGV4cGVjdChpc1JlcXVpcmVkc1sxXSgpKS50b0JlKHRydWUpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcmV0dXJuIHRydWUgb3IgZmFsc2Ugd2hlbiBjYWxsaW5nIHNob3dSZXF1aXJlZCgpIGRlcGVuZGluZyBvbiBpbnB1dCBiZWluZyBlbXB0eSBhbmQgcmVxdWlyZWQgaXMgcGFzc2VkLCBvciBub3QnLCBmdW5jdGlvbiAoKSB7XG4gICAgXG4gICAgdmFyIHNob3dSZXF1aXJlZHMgPSBbXTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHNob3dSZXF1aXJlZHMucHVzaCh0aGlzLnNob3dSZXF1aXJlZCk7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJBXCIsIHZhbHVlOiBcImZvb1wifSksIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiQlwiLCB2YWx1ZTogXCJcIiwgcmVxdWlyZWQ6IHRydWV9KSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJDXCIsIHZhbHVlOiBcIlwifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgZXhwZWN0KHNob3dSZXF1aXJlZHNbMF0oKSkudG9CZShmYWxzZSk7XG4gICAgZXhwZWN0KHNob3dSZXF1aXJlZHNbMV0oKSkudG9CZSh0cnVlKTtcbiAgICBleHBlY3Qoc2hvd1JlcXVpcmVkc1syXSgpKS50b0JlKGZhbHNlKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0cnVlIG9yIGZhbHNlIHdoZW4gY2FsbGluZyBzaG93RXJyb3IoKSBkZXBlbmRpbmcgb24gdmFsdWUgaXMgaW52YWxpZCBvciBhIHNlcnZlciBlcnJvciBoYXMgYXJyaXZlZCwgb3Igbm90JywgZnVuY3Rpb24gKGRvbmUpIHtcblxuICAgIHZhciBzaG93RXJyb3IgPSBudWxsO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgY29tcG9uZW50RGlkTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgc2hvd0Vycm9yID0gdGhpcy5zaG93RXJyb3I7XG4gICAgICB9LFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wifSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIiwgdmFsaWRhdGlvbkVycm9yOiBcIlRoaXMgaXMgbm90IGFuIGVtYWlsXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICBleHBlY3Qoc2hvd0Vycm9yKCkpLnRvQmUodHJ1ZSk7XG5cbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICdmb29AZm9vLmNvbSd9fSk7XG4gICAgZXhwZWN0KHNob3dFcnJvcigpKS50b0JlKGZhbHNlKTtcblxuICAgIGphc21pbmUuQWpheC5pbnN0YWxsKCk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7ICAgIFxuICAgIGphc21pbmUuQWpheC5yZXF1ZXN0cy5tb3N0UmVjZW50KCkucmVzcG9uZFdpdGgoe1xuICAgICAgc3RhdHVzOiA1MDAsXG4gICAgICByZXNwb25zZVR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIHJlc3BvbnNlVGV4dDogJ3tcImZvb1wiOiBcIkVtYWlsIGFscmVhZHkgZXhpc3RzXCJ9J1xuICAgIH0pO1xuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgZXhwZWN0KHNob3dFcnJvcigpKS50b0JlKHRydWUpO1xuICAgICAgamFzbWluZS5BamF4LnVuaW5zdGFsbCgpO1xuICAgICAgZG9uZSgpO1xuICAgIH0sIDApO1xuICB9KTtcblxuICBpdCgnc2hvdWxkIHJldHVybiB0cnVlIG9yIGZhbHNlIHdoZW4gY2FsbGluZyBpc1ByaXN0aW5lKCkgZGVwZW5kaW5nIG9uIGlucHV0IGhhcyBiZWVuIFwidG91Y2hlZFwiIG9yIG5vdCcsIGZ1bmN0aW9uICgpIHtcbiAgICBcbiAgICB2YXIgaXNQcmlzdGluZSA9IG51bGw7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICBjb21wb25lbnREaWRNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICBpc1ByaXN0aW5lID0gdGhpcy5pc1ByaXN0aW5lO1xuICAgICAgfSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIn0sIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiQVwiLCB2YWx1ZTogXCJmb29cIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIGV4cGVjdChpc1ByaXN0aW5lKCkpLnRvQmUodHJ1ZSk7XG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnZm9vJ319KTtcbiAgICBleHBlY3QoaXNQcmlzdGluZSgpKS50b0JlKGZhbHNlKTtcbiAgICBcbiAgfSk7XG5cbml0KCdzaG91bGQgYWxsb3cgYW4gdW5kZWZpbmVkIHZhbHVlIHRvIGJlIHVwZGF0ZWQgdG8gYSB2YWx1ZScsIGZ1bmN0aW9uIChkb25lKSB7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICBnZXRJbml0aWFsU3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIHt2YWx1ZTogdW5kZWZpbmVkfTtcbiAgICAgIH0sXG4gICAgICBjaGFuZ2VWYWx1ZTogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICB2YWx1ZTogJ2ZvbydcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIn0sIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcIkFcIiwgdmFsdWU6IHRoaXMuc3RhdGUudmFsdWV9KVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKVxuICAgICk7XG5cbiAgICBmb3JtLmNoYW5nZVZhbHVlKCk7XG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBleHBlY3QoaW5wdXQuZ2V0RE9NTm9kZSgpLnZhbHVlKS50b0JlKCdmb28nKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9LCAwKTtcbiAgfSk7ICBcblxuICBpdCgnc2hvdWxkIGJlIGFibGUgdG8gZHluYW1pY2FsbHkgY2hhbmdlIHZhbGlkYXRpb25zJywgZnVuY3Rpb24gKGRvbmUpIHtcblxuICAgIHZhciBpc0ludmFsaWQgPSBmYWxzZTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgIGdldEluaXRpYWxTdGF0ZTogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4ge3ZhbHVlOiAnZm9vQGJhci5jb20nLCB2YWxpZGF0aW9uczogJ2lzRW1haWwnfTtcbiAgICAgIH0sXG4gICAgICBjaGFuZ2VWYWxpZGF0aW9uczogZnVuY3Rpb24gKCkge1xuICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICB2YWxpZGF0aW9uczogJ2VxdWFsczpmb28nXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICAgIHNldEludmFsaWQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgY29uc29sZS5sb2coJ1J1bm5pbmcgaXQhJyk7XG4gICAgICAgIGlzSW52YWxpZCA9IHRydWU7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIiwgb25JbnZhbGlkOiB0aGlzLnNldEludmFsaWR9LCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJBXCIsIHZhbGlkYXRpb25zOiB0aGlzLnN0YXRlLnZhbGlkYXRpb25zLCB2YWx1ZTogdGhpcy5zdGF0ZS52YWx1ZX0pXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpXG4gICAgKTtcblxuICAgIGZvcm0uY2hhbmdlVmFsaWRhdGlvbnMoKTtcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgIGV4cGVjdChpc0ludmFsaWQpLnRvQmUodHJ1ZSk7XG4gICAgICBkb25lKCk7XG4gICAgfSwgMCk7XG4gIH0pOyAgXG5cbiAgaXQoJ3Nob3VsZCBiZSBhYmxlIHRvIHRlc3QgYSB2YWx1ZXMgdmFsaWRpdHknLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgaXNJbnZhbGlkID0gZmFsc2U7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJBXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIn0pXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRDb21wb25lbnRXaXRoVHlwZShmb3JtLCBUZXN0SW5wdXQpO1xuICAgIGV4cGVjdChpbnB1dC5pc1ZhbGlkVmFsdWUoJ2Zvb0BiYXIuY29tJykpLnRvQmUodHJ1ZSk7XG4gICAgZXhwZWN0KGlucHV0LmlzVmFsaWRWYWx1ZSgnZm9vQGJhcicpKS50b0JlKGZhbHNlKTtcblxuICB9KTsgXG5cbn0pO1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNHVmpjeTlGYkdWdFpXNTBMWE53WldNdWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0JsWTNNdlJXeGxiV1Z1ZEMxemNHVmpMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFbEJRVWtzVFVGQlRTeEhRVUZITEU5QlFVOHNRMEZCUXl4clFrRkJhMElzUTBGQlF5eERRVUZET3p0QlFVVjZReXhSUVVGUkxFTkJRVU1zVTBGQlV5eEZRVUZGTEZkQlFWYzdPMEZCUlM5Q0xFVkJRVVVzUlVGQlJTeERRVUZETEdsRlFVRnBSU3hGUVVGRkxGbEJRVms3TzBsQlJXaEdMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzVjBGQlZ5eEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMUZCUXpWQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFBRVU51UXp0TlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xRkJRMnhDTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGRkxFVkJRVU1zUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4SlFVRkpMRU5CUVVNc1YwRkJXU3hEUVVGRkxFTkJRVUU3VDBGRGNFVTdTMEZEUml4RFFVRkRMRU5CUVVNN1NVRkRTQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08wMUJRM0pETEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hKUVVGRExFVkJRVUU3VVVGRFdDeHZRa0ZCUXl4VFFVRlRMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVXNzUTBGQlJTeERRVUZCTzAxQlEzWkNMRU5CUVVFN1FVRkRjRUlzUzBGQlN5eERRVUZET3p0SlFVVkdMRWxCUVVrc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEY2tVc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdTVUZETjBNc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUzBGQlN5eEZRVUZGTEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOc1JTeEpRVUZKTEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE96dEJRVVZ3UkN4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl4elJFRkJjMFFzUlVGQlJTeFpRVUZaT3p0SlFVVnlSU3hKUVVGSkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTTdTVUZEYWtJc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeHBRa0ZCYVVJc1JVRkJSU3haUVVGWk8xRkJRemRDTEV0QlFVc3NSMEZCUnl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRE8wOUJRM3BDTzAxQlEwUXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UFFVTnVRenROUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENMRTlCUVU4c2IwSkJRVUVzVDBGQlRTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hKUVVGSkxFTkJRVU1zVVVGQlVTeEZRVUZGTEVWQlFVTXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hKUVVGSkxFTkJRVU1zVjBGQldTeERRVUZGTEVOQlFVRTdUMEZEY0VVN1MwRkRSaXhEUVVGRExFTkJRVU03U1VGRFNDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTzAxQlEzSkRMRzlDUVVGRExGZEJRVmNzUlVGQlFTeEpRVUZETEVWQlFVRTdVVUZEV0N4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVc3NRMEZCUlN4RFFVRkJPMDFCUTNaQ0xFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU01UkN4TFFVRkxMRVZCUVVVc1EwRkJRenRCUVVOYUxFbEJRVWtzVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wRkJSV3BFTEVkQlFVY3NRMEZCUXl4RFFVRkRPenRCUVVWTUxFVkJRVVVzUlVGQlJTeERRVUZETEcxRlFVRnRSU3hGUVVGRkxGbEJRVms3TzBsQlJXeEdMRWxCUVVrc1pVRkJaU3hIUVVGSExFbEJRVWtzUTBGQlF6dEpRVU16UWl4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0TlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMDFCUTNSQ0xHbENRVUZwUWl4RlFVRkZMRmxCUVZrN1VVRkROMElzWlVGQlpTeEhRVUZITEVsQlFVa3NRMEZCUXl4bFFVRmxMRU5CUVVNN1QwRkRlRU03VFVGRFJDeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1VVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzA5QlEyNURPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUlVGQlF5eERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRWxCUVVrc1EwRkJReXhYUVVGWkxFTkJRVVVzUTBGQlFUdFBRVU53UlR0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFbEJRVU1zUlVGQlFUdFJRVU5ZTEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNWMEZCUVN4RlFVRlhMRU5CUVVNc1UwRkJRU3hGUVVGVExFTkJRVU1zWlVGQlFTeEZRVUZsTEVOQlFVTXNhVUpCUVdsQ0xFTkJRVVVzUTBGQlFUdE5RVU12UlN4RFFVRkJPMEZCUTNCQ0xFdEJRVXNzUTBGQlF6czdRVUZGVGl4SlFVRkpMRTFCUVUwc1EwRkJReXhsUVVGbExFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eERRVUZET3p0QlFVVjBSQ3hIUVVGSExFTkJRVU1zUTBGQlF6czdRVUZGVEN4RlFVRkZMRVZCUVVVc1EwRkJReXh0UlVGQmJVVXNSVUZCUlN4VlFVRlZMRWxCUVVrc1JVRkJSVHM3UVVGRk1VWXNTVUZCU1N4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUlVGQlJTeERRVUZET3p0SlFVVjJRaXhKUVVGSkxHVkJRV1VzUjBGQlJ5eEpRVUZKTEVOQlFVTTdTVUZETTBJc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeHBRa0ZCYVVJc1JVRkJSU3haUVVGWk8xRkJRemRDTEdWQlFXVXNSMEZCUnl4SlFVRkpMRU5CUVVNc1pVRkJaU3hEUVVGRE8wOUJRM2hETzAxQlEwUXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UFFVTnVRenROUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENMRTlCUVU4c2IwSkJRVUVzVDBGQlRTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hKUVVGSkxFTkJRVU1zVVVGQlVTeEZRVUZGTEVWQlFVTXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hKUVVGSkxFTkJRVU1zVjBGQldTeERRVUZGTEVOQlFVRTdUMEZEY0VVN1MwRkRSaXhEUVVGRExFTkJRVU03U1VGRFNDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTzAxQlEzSkRMRzlDUVVGRExGZEJRVmNzUlVGQlFTeERRVUZCTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1VVRkJVeXhEUVVGQkxFVkJRVUU3VVVGRGVFSXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4WFFVRkJMRVZCUVZjc1EwRkJReXhUUVVGQkxFVkJRVk1zUTBGQlF5eGxRVUZCTEVWQlFXVXNRMEZCUXl4cFFrRkJhVUlzUTBGQlJTeERRVUZCTzAxQlF5OUZMRU5CUVVFN1FVRkRjRUlzUzBGQlN5eERRVUZET3p0QlFVVk9MRWxCUVVrc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTTdPMGxCUlhoRUxFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExGZEJRVmNzUTBGQlF6dE5RVU0zUXl4TlFVRk5MRVZCUVVVc1IwRkJSenROUVVOWUxGZEJRVmNzUlVGQlJTeHJRa0ZCYTBJN1RVRkRMMElzV1VGQldTeEZRVUZGTEdkQ1FVRm5RanRCUVVOd1F5eExRVUZMTEVOQlFVTTdPMGxCUlVZc1ZVRkJWU3hEUVVGRExGbEJRVms3VFVGRGNrSXNUVUZCVFN4RFFVRkRMR1ZCUVdVc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMDFCUTNSRExFOUJRVThzUTBGQlF5eEpRVUZKTEVOQlFVTXNVMEZCVXl4RlFVRkZMRU5CUVVNN1RVRkRla0lzU1VGQlNTeEZRVUZGTEVOQlFVTTdRVUZEWWl4TFFVRkxMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03TzBGQlJWWXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeEZRVUZGTEVOQlFVTXNOa1ZCUVRaRkxFVkJRVVVzV1VGQldUczdTVUZGTlVZc1NVRkJTU3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETzBsQlEyNUNMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzYVVKQlFXbENMRVZCUVVVc1dVRkJXVHRSUVVNM1FpeFBRVUZQTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJRenRQUVVONFFqdE5RVU5FTEZkQlFWY3NSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRSUVVNMVFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdUMEZEYmtNN1RVRkRSQ3hOUVVGTkxFVkJRVVVzV1VGQldUdFJRVU5zUWl4UFFVRlBMRzlDUVVGQkxFOUJRVTBzUlVGQlFTeERRVUZCTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZETEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVVc1NVRkJTU3hEUVVGRExGZEJRVmtzUTBGQlJTeERRVUZCTzA5QlEzQkZPMHRCUTBZc1EwRkJReXhEUVVGRE8wbEJRMGdzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdE5RVU55UXl4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEVkQlFVRXNSVUZCUnl4RFFVRkRMRkZCUVZNc1EwRkJRU3hGUVVGQk8xRkJRM2hDTEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNWMEZCUVN4RlFVRlhMRU5CUVVNc1UwRkJVeXhEUVVGRkxFTkJRVUU3VFVGRE4wTXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNUVUZCVFN4RFFVRkRMRTlCUVU4c1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMGxCUXpsQ0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMR0ZCUVdFc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU4yUlN4SlFVRkpMRTFCUVUwc1EwRkJReXhQUVVGUExFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenM3UVVGRmFrTXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeEZRVUZGTEVOQlFVTXNPRVpCUVRoR0xFVkJRVVVzV1VGQldUczdTVUZGTjBjc1NVRkJTU3hYUVVGWExFZEJRVWNzUlVGQlJTeERRVUZETzBsQlEzSkNMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzYVVKQlFXbENMRVZCUVVVc1dVRkJXVHRSUVVNM1FpeFhRVUZYTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF6dFBRVU51UXp0TlFVTkVMRmRCUVZjc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdFJRVU0xUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1QwRkRia003VFVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0UlFVTnNRaXhQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkRMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZkQlFWa3NRMEZCUlN4RFFVRkJPMDlCUTNCRk8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0TlFVTnlReXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWRCUVVFc1JVRkJSeXhEUVVGRExGRkJRVk1zUTBGQlFTeEZRVUZCTzFGQlEzaENMRzlDUVVGRExGTkJRVk1zUlVGQlFTeERRVUZCTEVOQlFVTXNTVUZCUVN4RlFVRkpMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkZMRU5CUVVFc1JVRkJRVHRSUVVOdVF5eHZRa0ZCUXl4VFFVRlRMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEZGQlFVRXNSVUZCUVN4RFFVRkZMRU5CUVVFN1RVRkRlRUlzUTBGQlFUdEJRVU53UWl4TFFVRkxMRU5CUVVNN08wbEJSVVlzVFVGQlRTeERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMEZCUTNwRExFbEJRVWtzVFVGQlRTeERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPenRCUVVWNFF5eEhRVUZITEVOQlFVTXNRMEZCUXpzN1FVRkZUQ3hGUVVGRkxFVkJRVVVzUTBGQlF5eDFTRUZCZFVnc1JVRkJSU3haUVVGWk96dEpRVVYwU1N4SlFVRkpMR0ZCUVdFc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRGRrSXNTVUZCU1N3clFrRkJLMElzZVVKQlFVRTdUVUZEYWtNc1RVRkJUU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXp0TlFVTjBRaXhwUWtGQmFVSXNSVUZCUlN4WlFVRlpPMUZCUXpkQ0xHRkJRV0VzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJReXhEUVVGRE8wOUJRM1pETzAxQlEwUXNWMEZCVnl4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UFFVTnVRenROUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENMRTlCUVU4c2IwSkJRVUVzVDBGQlRTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hKUVVGSkxFTkJRVU1zVVVGQlVTeEZRVUZGTEVWQlFVTXNRMEZCUXl4UlFVRkJMRVZCUVZFc1EwRkJSU3hKUVVGSkxFTkJRVU1zVjBGQldTeERRVUZGTEVOQlFVRTdUMEZEY0VVN1MwRkRSaXhEUVVGRExFTkJRVU03U1VGRFNDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTzAxQlEzSkRMRzlDUVVGRExGZEJRVmNzUlVGQlFTeERRVUZCTEVOQlFVTXNSMEZCUVN4RlFVRkhMRU5CUVVNc1VVRkJVeXhEUVVGQkxFVkJRVUU3VVVGRGVFSXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4SFFVRkJMRVZCUVVjc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZMTEVOQlFVVXNRMEZCUVN4RlFVRkJPMUZCUTJwRExHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1JVRkJRU3hGUVVGRkxFTkJRVU1zVVVGQlFTeEZRVUZCTEVOQlFVVXNRMEZCUVN4RlFVRkJPMUZCUXk5Q0xHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1JVRkJSU3hEUVVGRkxFTkJRVUU3VFVGRGJFSXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNUVUZCVFN4RFFVRkRMR0ZCUVdFc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8wbEJRM1pETEUxQlFVMHNRMEZCUXl4aFFVRmhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRCUVVNeFF5eEpRVUZKTEUxQlFVMHNRMEZCUXl4aFFVRmhMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenM3UVVGRk0wTXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeEZRVUZGTEVOQlFVTXNNRWhCUVRCSUxFVkJRVVVzVlVGQlZTeEpRVUZKTEVWQlFVVTdPMGxCUlRkSkxFbEJRVWtzVTBGQlV5eEhRVUZITEVsQlFVa3NRMEZCUXp0SlFVTnlRaXhKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHROUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8wMUJRM1JDTEdsQ1FVRnBRaXhGUVVGRkxGbEJRVms3VVVGRE4wSXNVMEZCVXl4SFFVRkhMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU03VDBGRE5VSTdUVUZEUkN4WFFVRlhMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3VVVGRE5VSXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMDlCUTI1RE8wMUJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdVVUZEYkVJc1QwRkJUeXh2UWtGQlFTeFBRVUZOTEVWQlFVRXNRMEZCUVN4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVVXNSVUZCUXl4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eFhRVUZaTEVOQlFVVXNRMEZCUVR0UFFVTndSVHRMUVVOR0xFTkJRVU1zUTBGQlF6dEpRVU5JTEVsQlFVa3NTVUZCU1N4SFFVRkhMRk5CUVZNc1EwRkJReXhyUWtGQmEwSTdUVUZEY2tNc2IwSkJRVU1zVjBGQlZ5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SFFVRkJMRVZCUVVjc1EwRkJReXhSUVVGVExFTkJRVUVzUlVGQlFUdFJRVU40UWl4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRmRCUVVFc1JVRkJWeXhEUVVGRExGTkJRVUVzUlVGQlV5eERRVUZETEdWQlFVRXNSVUZCWlN4RFFVRkRMSE5DUVVGelFpeERRVUZGTEVOQlFVRTdUVUZEY0VZc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMEZCUlU0c1NVRkJTU3hOUVVGTkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03TzBsQlJTOUNMRWxCUVVrc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEY2tVc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUzBGQlN5eEZRVUZGTEdGQlFXRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOMlJTeEpRVUZKTEUxQlFVMHNRMEZCUXl4VFFVRlRMRVZCUVVVc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXpzN1NVRkZhRU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRVZCUVVVc1EwRkJRenRKUVVOMlFpeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNRMEZCUXp0SlFVTTNReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhYUVVGWExFTkJRVU03VFVGRE4wTXNUVUZCVFN4RlFVRkZMRWRCUVVjN1RVRkRXQ3haUVVGWkxFVkJRVVVzYTBKQlFXdENPMDFCUTJoRExGbEJRVmtzUlVGQlJTeHBRMEZCYVVNN1MwRkRhRVFzUTBGQlF5eERRVUZETzBsQlEwZ3NWVUZCVlN4RFFVRkRMRmxCUVZrN1RVRkRja0lzVFVGQlRTeERRVUZETEZOQlFWTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzAxQlF5OUNMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVOQlFVTTdUVUZEZWtJc1NVRkJTU3hGUVVGRkxFTkJRVU03UzBGRFVpeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUTFZc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2IwZEJRVzlITEVWQlFVVXNXVUZCV1RzN1NVRkZia2dzU1VGQlNTeFZRVUZWTEVkQlFVY3NTVUZCU1N4RFFVRkRPMGxCUTNSQ0xFbEJRVWtzSzBKQlFTdENMSGxDUVVGQk8wMUJRMnBETEUxQlFVMHNSVUZCUlN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU03VFVGRGRFSXNhVUpCUVdsQ0xFVkJRVVVzV1VGQldUdFJRVU0zUWl4VlFVRlZMRWRCUVVjc1NVRkJTU3hEUVVGRExGVkJRVlVzUTBGQlF6dFBRVU01UWp0TlFVTkVMRmRCUVZjc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdFJRVU0xUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1QwRkRia003VFVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0UlFVTnNRaXhQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkRMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZkQlFWa3NRMEZCUlN4RFFVRkJPMDlCUTNCRk8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0TlFVTnlReXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWRCUVVFc1JVRkJSeXhEUVVGRExGRkJRVk1zUTBGQlFTeEZRVUZCTzFGQlEzaENMRzlDUVVGRExGTkJRVk1zUlVGQlFTeERRVUZCTEVOQlFVTXNTVUZCUVN4RlFVRkpMRU5CUVVNc1IwRkJRU3hGUVVGSExFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkZMRU5CUVVFN1RVRkRja0lzUTBGQlFUdEJRVU53UWl4TFFVRkxMRU5CUVVNN08wbEJSVVlzVFVGQlRTeERRVUZETEZWQlFWVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBsQlEyaERMRWxCUVVrc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEY2tVc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUzBGQlN5eEZRVUZGTEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVNdlJDeEpRVUZKTEUxQlFVMHNRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXpzN1FVRkZja01zUjBGQlJ5eERRVUZETEVOQlFVTTdPMEZCUlV3c1JVRkJSU3hEUVVGRExEQkVRVUV3UkN4RlFVRkZMRlZCUVZVc1NVRkJTU3hGUVVGRk8wbEJRek5GTEVsQlFVa3NLMEpCUVN0Q0xIbENRVUZCTzAxQlEycERMRTFCUVUwc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTTdUVUZEZEVJc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVWNzUTBGQlJTeERRVUZCTzA5QlEzaERPMHRCUTBZc1EwRkJReXhEUVVGRE8wbEJRMGdzU1VGQlNTdzRRa0ZCT0VJc2QwSkJRVUU3VFVGRGFFTXNaVUZCWlN4RlFVRkZMRmxCUVZrN1VVRkRNMElzVDBGQlR5eERRVUZETEV0QlFVc3NSVUZCUlN4VFFVRlRMRU5CUVVNc1EwRkJRenRQUVVNelFqdE5RVU5FTEZkQlFWY3NSVUZCUlN4WlFVRlpPMUZCUTNaQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTTdWVUZEV2l4TFFVRkxMRVZCUVVVc1MwRkJTenRUUVVOaUxFTkJRVU1zUTBGQlF6dFBRVU5LTzAxQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1VVRkRiRUk3VlVGRFJTeHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFZEJRVUVzUlVGQlJ5eERRVUZETEZGQlFWTXNRMEZCUVN4RlFVRkJPMWxCUTNoQ0xHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVVc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eExRVUZOTEVOQlFVVXNRMEZCUVR0VlFVTnNReXhEUVVGQk8xVkJRMlE3VDBGRFNEdExRVU5HTEVOQlFVTXNRMEZCUXp0SlFVTklMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1RVRkRja01zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRWxCUVVVc1EwRkJRVHRCUVVOcVFpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1NVRkJTU3hEUVVGRExGZEJRVmNzUlVGQlJTeERRVUZETzBsQlEyNUNMRWxCUVVrc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEY2tVc1ZVRkJWU3hEUVVGRExGbEJRVms3VFVGRGNrSXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VFVGRE4wTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1MwRkRVaXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBGQlExWXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeEZRVUZGTEVOQlFVTXNhMFJCUVd0RUxFVkJRVVVzVlVGQlZTeEpRVUZKTEVWQlFVVTdPMGxCUlhKRkxFbEJRVWtzVTBGQlV5eEhRVUZITEV0QlFVc3NRMEZCUXp0SlFVTjBRaXhKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHROUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8wMUJRM1JDTEUxQlFVMHNSVUZCUlN4WlFVRlpPMUZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkhMRU5CUVVVc1EwRkJRVHRQUVVONFF6dExRVU5HTEVOQlFVTXNRMEZCUXp0SlFVTklMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMDFCUTJoRExHVkJRV1VzUlVGQlJTeFpRVUZaTzFGQlF6TkNMRTlCUVU4c1EwRkJReXhMUVVGTExFVkJRVVVzWVVGQllTeEZRVUZGTEZkQlFWY3NSVUZCUlN4VFFVRlRMRU5CUVVNc1EwRkJRenRQUVVOMlJEdE5RVU5FTEdsQ1FVRnBRaXhGUVVGRkxGbEJRVms3VVVGRE4wSXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJRenRWUVVOYUxGZEJRVmNzUlVGQlJTeFpRVUZaTzFOQlF6RkNMRU5CUVVNc1EwRkJRenRQUVVOS08wMUJRMFFzVlVGQlZTeEZRVUZGTEZsQlFWazdVVUZEZEVJc1QwRkJUeXhEUVVGRExFZEJRVWNzUTBGQlF5eGhRVUZoTEVOQlFVTXNRMEZCUXp0UlFVTXpRaXhUUVVGVExFZEJRVWNzU1VGQlNTeERRVUZETzA5QlEyeENPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSTdWVUZEUlN4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEVkQlFVRXNSVUZCUnl4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRExGTkJRVUVzUlVGQlV5eERRVUZGTEVsQlFVa3NRMEZCUXl4VlFVRlpMRU5CUVVFc1JVRkJRVHRaUVVOd1JDeHZRa0ZCUXl4VFFVRlRMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEVkQlFVRXNSVUZCUnl4RFFVRkRMRmRCUVVFc1JVRkJWeXhEUVVGRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNWMEZCVnl4RlFVRkRMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TFFVRk5MRU5CUVVVc1EwRkJRVHRWUVVOMlJTeERRVUZCTzFWQlEyUTdUMEZEU0R0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFbEJRVVVzUTBGQlFUdEJRVU5xUWl4TFFVRkxMRU5CUVVNN08wbEJSVVlzU1VGQlNTeERRVUZETEdsQ1FVRnBRaXhGUVVGRkxFTkJRVU03U1VGRGVrSXNWVUZCVlN4RFFVRkRMRmxCUVZrN1RVRkRja0lzVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU0zUWl4SlFVRkpMRVZCUVVVc1EwRkJRenRMUVVOU0xFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZEVml4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl3d1EwRkJNRU1zUlVGQlJTeFpRVUZaT3p0SlFVVjZSQ3hKUVVGSkxGTkJRVk1zUjBGQlJ5eExRVUZMTEVOQlFVTTdTVUZEZEVJc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeE5RVUZOTEVWQlFVVXNXVUZCV1R0UlFVTnNRaXhQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUnl4RFFVRkZMRU5CUVVFN1QwRkRlRU03UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRGhDUVVFNFFpeDNRa0ZCUVR0TlFVTm9ReXhOUVVGTkxFVkJRVVVzV1VGQldUdFJRVU5zUWp0VlFVTkZMRzlDUVVGRExGZEJRVmNzUlVGQlFTeEpRVUZETEVWQlFVRTdXVUZEV0N4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRWRCUVVFc1JVRkJSeXhEUVVGRExGZEJRVUVzUlVGQlZ5eERRVUZETEZOQlFWTXNRMEZCUlN4RFFVRkJPMVZCUXk5Q0xFTkJRVUU3VlVGRFpEdFBRVU5JTzB0QlEwWXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4UlFVRlJMRVZCUVVFc1NVRkJSU3hEUVVGQk8wRkJRMnBDTEV0QlFVc3NRMEZCUXpzN1NVRkZSaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNOa0pCUVRaQ0xFTkJRVU1zU1VGQlNTeEZRVUZGTEZOQlFWTXNRMEZCUXl4RFFVRkRPMGxCUTNKRkxFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNXVUZCV1N4RFFVRkRMR0ZCUVdFc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTNwRUxFbEJRVWtzVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4WlFVRlpMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wRkJSWFJFTEVkQlFVY3NRMEZCUXl4RFFVRkRPenREUVVWS0xFTkJRVU1zUTBGQlF5SXNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJblpoY2lCR2IzSnRjM2tnUFNCeVpYRjFhWEpsS0NjdUx5NHVMM055WXk5dFlXbHVMbXB6SnlrN1hHNWNibVJsYzJOeWFXSmxLQ2RGYkdWdFpXNTBKeXdnWm5WdVkzUnBiMjRvS1NCN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCeVpYUjFjbTRnY0dGemMyVmtJR0Z1WkNCelpYUldZV3gxWlNncElIWmhiSFZsSUhkb1pXNGdkWE5wYm1jZ1oyVjBWbUZzZFdVb0tTY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0JjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJSFZ3WkdGMFpWWmhiSFZsT2lCbWRXNWpkR2x2YmlBb1pYWmxiblFwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSV1lXeDFaU2hsZG1WdWRDNTBZWEpuWlhRdWRtRnNkV1VwTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxuVndaR0YwWlZaaGJIVmxmUzgrWEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEVadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNBZ0lDQThWR1Z6ZEVsdWNIVjBJRzVoYldVOVhDSm1iMjljSWlCMllXeDFaVDFjSW1admIxd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lHVjRjR1ZqZENocGJuQjFkQzVuWlhSRVQwMU9iMlJsS0NrdWRtRnNkV1VwTG5SdlFtVW9KMlp2YnljcE8xeHVJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1amFHRnVaMlVvYVc1d2RYUXNJSHQwWVhKblpYUTZJSHQyWVd4MVpUb2dKMlp2YjJKaGNpZDlmU2s3WEc0Z0lDQWdaWGh3WldOMEtHbHVjSFYwTG1kbGRFUlBUVTV2WkdVb0tTNTJZV3gxWlNrdWRHOUNaU2duWm05dlltRnlKeWs3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0J6WlhRZ1ltRmpheUIwYnlCd2NtbHpkR2x1WlNCMllXeDFaU0IzYUdWdUlISjFibTVwYm1jZ2NtVnpaWFFuTENCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ1hHNGdJQ0FnZG1GeUlISmxjMlYwSUQwZ2JuVnNiRHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJR052YlhCdmJtVnVkRVJwWkUxdmRXNTBPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lISmxjMlYwSUQwZ2RHaHBjeTV5WlhObGRGWmhiSFZsTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhWd1pHRjBaVlpoYkhWbE9pQm1kVzVqZEdsdmJpQW9aWFpsYm5RcElIdGNiaUFnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMblZ3WkdGMFpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDQWdJQ0E4VkdWemRFbHVjSFYwSUc1aGJXVTlYQ0ptYjI5Y0lpQjJZV3gxWlQxY0ltWnZiMXdpTHo1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNibHh1SUNBZ0lIWmhjaUJwYm5CMWRDQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRVQwMURiMjF3YjI1bGJuUlhhWFJvVkdGbktHWnZjbTBzSUNkSlRsQlZWQ2NwTzF4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzVqYUdGdVoyVW9hVzV3ZFhRc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oyWnZiMkpoY2lkOWZTazdYRzRnSUNBZ2NtVnpaWFFvS1R0Y2JpQWdJQ0JsZUhCbFkzUW9hVzV3ZFhRdVoyVjBSRTlOVG05a1pTZ3BMblpoYkhWbEtTNTBiMEpsS0NkbWIyOG5LVHRjYmx4dUlDQjlLVHRjYmx4dUlDQnBkQ2duYzJodmRXeGtJSEpsZEhWeWJpQmxjbkp2Y2lCdFpYTnpZV2RsSUhCaGMzTmxaQ0IzYUdWdUlHTmhiR3hwYm1jZ1oyVjBSWEp5YjNKTlpYTnpZV2RsS0NrbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdYRzRnSUNBZ2RtRnlJR2RsZEVWeWNtOXlUV1Z6YzJGblpTQTlJRzUxYkd3N1hHNGdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJRzFwZUdsdWN6b2dXMFp2Y20xemVTNU5hWGhwYmwwc1hHNGdJQ0FnSUNCamIyMXdiMjVsYm5SRWFXUk5iM1Z1ZERvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0JuWlhSRmNuSnZjazFsYzNOaFoyVWdQU0IwYUdsekxtZGxkRVZ5Y205eVRXVnpjMkZuWlR0Y2JpQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCMWNHUmhkR1ZXWVd4MVpUb2dablZ1WTNScGIyNGdLR1YyWlc1MEtTQjdYRzRnSUNBZ0lDQWdJSFJvYVhNdWMyVjBWbUZzZFdVb1pYWmxiblF1ZEdGeVoyVjBMblpoYkhWbEtUdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRHhwYm5CMWRDQjJZV3gxWlQxN2RHaHBjeTVuWlhSV1lXeDFaU2dwZlNCdmJrTm9ZVzVuWlQxN2RHaHBjeTUxY0dSaGRHVldZV3gxWlgwdlBseHVJQ0FnSUNBZ2ZWeHVJQ0FnSUgwcE8xeHVJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDaGNiaUFnSUNBZ0lEeEdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpWm05dlhDSWdkbUZzZFdVOVhDSm1iMjljSWlCMllXeHBaR0YwYVc5dWN6MWNJbWx6UlcxaGFXeGNJaUIyWVd4cFpHRjBhVzl1UlhKeWIzSTlYQ0pJWVhNZ2RHOGdZbVVnWlcxaGFXeGNJaTgrWEc0Z0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNrN1hHNWNiaUFnSUNCbGVIQmxZM1FvWjJWMFJYSnliM0pOWlhOellXZGxLQ2twTG5SdlFtVW9KMGhoY3lCMGJ5QmlaU0JsYldGcGJDY3BPMXh1WEc0Z0lIMHBPMXh1WEc0Z0lHbDBLQ2R6YUc5MWJHUWdjbVYwZFhKdUlITmxjblpsY2lCbGNuSnZjaUJ0WlhOellXZGxJSGRvWlc0Z1kyRnNiR2x1WnlCblpYUkZjbkp2Y2sxbGMzTmhaMlVvS1Njc0lHWjFibU4wYVc5dUlDaGtiMjVsS1NCN1hHNGdJQ0FnWEc0Z0lDQWdhbUZ6YldsdVpTNUJhbUY0TG1sdWMzUmhiR3dvS1R0Y2JseHVJQ0FnSUhaaGNpQm5aWFJGY25KdmNrMWxjM05oWjJVZ1BTQnVkV3hzTzF4dUlDQWdJSFpoY2lCVVpYTjBTVzV3ZFhRZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnWTI5dGNHOXVaVzUwUkdsa1RXOTFiblE2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdaMlYwUlhKeWIzSk5aWE56WVdkbElEMGdkR2hwY3k1blpYUkZjbkp2Y2sxbGMzTmhaMlU3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnZFhCa1lYUmxWbUZzZFdVNklHWjFibU4wYVc5dUlDaGxkbVZ1ZENrZ2UxeHVJQ0FnSUNBZ0lDQjBhR2x6TG5ObGRGWmhiSFZsS0dWMlpXNTBMblJoY21kbGRDNTJZV3gxWlNrN1hHNGdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQThhVzV3ZFhRZ2RtRnNkV1U5ZTNSb2FYTXVaMlYwVm1Gc2RXVW9LWDBnYjI1RGFHRnVaMlU5ZTNSb2FYTXVkWEJrWVhSbFZtRnNkV1Y5THo1Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5S1R0Y2JpQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb1hHNGdJQ0FnSUNBOFJtOXliWE41TGtadmNtMGdkWEpzUFZ3aUwzVnpaWEp6WENJK1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJIVmxQVndpWm05dlhDSWdkbUZzYVdSaGRHbHZibk05WENKcGMwVnRZV2xzWENJZ2RtRnNhV1JoZEdsdmJrVnljbTl5UFZ3aVNHRnpJSFJ2SUdKbElHVnRZV2xzWENJdlBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1YzNWaWJXbDBLR1p2Y20wdVoyVjBSRTlOVG05a1pTZ3BLVHRjYmx4dUlDQWdJR3BoYzIxcGJtVXVRV3BoZUM1eVpYRjFaWE4wY3k1dGIzTjBVbVZqWlc1MEtDa3VjbVZ6Y0c5dVpGZHBkR2dvZTF4dUlDQWdJQ0FnYzNSaGRIVnpPaUExTURBc1hHNGdJQ0FnSUNCamIyNTBaVzUwVkhsd1pUb2dKMkZ3Y0d4cFkyRjBhVzl1TDJwemIyNG5MRnh1SUNBZ0lDQWdjbVZ6Y0c5dWMyVlVaWGgwT2lBbmUxd2labTl2WENJNklGd2lZbUZ5WENKOUoxeHVJQ0FnSUgwcFhHNWNiaUFnSUNCelpYUlVhVzFsYjNWMEtHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJR1Y0Y0dWamRDaG5aWFJGY25KdmNrMWxjM05oWjJVb0tTa3VkRzlDWlNnblltRnlKeWs3WEc0Z0lDQWdJQ0JxWVhOdGFXNWxMa0ZxWVhndWRXNXBibk4wWVd4c0tDazdYRzRnSUNBZ0lDQmtiMjVsS0NrN1hHNGdJQ0FnZlN3Z01DazdYRzVjYmlBZ2ZTazdYRzVjYmlBZ2FYUW9KM05vYjNWc1pDQnlaWFIxY200Z2RISjFaU0J2Y2lCbVlXeHpaU0IzYUdWdUlHTmhiR3hwYm1jZ2FYTldZV3hwWkNncElHUmxjR1Z1WkdsdVp5QnZiaUIyWVd4cFpDQnpkR0YwWlNjc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQmNiaUFnSUNCMllYSWdhWE5XWVd4cFpDQTlJRzUxYkd3N1hHNGdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJRzFwZUdsdWN6b2dXMFp2Y20xemVTNU5hWGhwYmwwc1hHNGdJQ0FnSUNCamIyMXdiMjVsYm5SRWFXUk5iM1Z1ZERvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0JwYzFaaGJHbGtJRDBnZEdocGN5NXBjMVpoYkdsa08xeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lIVndaR0YwWlZaaGJIVmxPaUJtZFc1amRHbHZiaUFvWlhabGJuUXBJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXpaWFJXWVd4MVpTaGxkbVZ1ZEM1MFlYSm5aWFF1ZG1Gc2RXVXBPMXh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG5Wd1pHRjBaVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUhWeWJEMWNJaTkxYzJWeWMxd2lQbHh1SUNBZ0lDQWdJQ0E4VkdWemRFbHVjSFYwSUc1aGJXVTlYQ0ptYjI5Y0lpQjJZV3gxWlQxY0ltWnZiMXdpSUhaaGJHbGtZWFJwYjI1elBWd2lhWE5GYldGcGJGd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUdWNGNHVmpkQ2hwYzFaaGJHbGtLQ2twTG5SdlFtVW9abUZzYzJVcE8xeHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSjJadmIwQm1iMjh1WTI5dEozMTlLVHRjYmlBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNncEtTNTBiMEpsS0hSeWRXVXBPMXh1WEc0Z0lIMHBPMXh1WEc0Z0lHbDBLQ2R6YUc5MWJHUWdjbVYwZFhKdUlIUnlkV1VnYjNJZ1ptRnNjMlVnZDJobGJpQmpZV3hzYVc1bklHbHpVbVZ4ZFdseVpXUW9LU0JrWlhCbGJtUnBibWNnYjI0Z2NHRnpjMlZrSUhKbGNYVnBjbVZrSUdGMGRISnBZblYwWlNjc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQmNiaUFnSUNCMllYSWdhWE5TWlhGMWFYSmxaSE1nUFNCYlhUdGNiaUFnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lHTnZiWEJ2Ym1WdWRFUnBaRTF2ZFc1ME9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUdselVtVnhkV2x5WldSekxuQjFjMmdvZEdocGN5NXBjMUpsY1hWcGNtVmtLVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0IxY0dSaGRHVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvWlhabGJuUXVkR0Z5WjJWMExuWmhiSFZsS1R0Y2JpQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmU0J2YmtOb1lXNW5aVDE3ZEdocGN5NTFjR1JoZEdWV1lXeDFaWDB2UGx4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBwTzF4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQjFjbXc5WENJdmRYTmxjbk5jSWo1Y2JpQWdJQ0FnSUNBZ1BGUmxjM1JKYm5CMWRDQnVZVzFsUFZ3aVptOXZYQ0lnZG1Gc2RXVTlYQ0ptYjI5Y0lpOCtYRzRnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMWNJbVp2YjF3aUlIWmhiSFZsUFZ3aVptOXZYQ0lnY21WeGRXbHlaV1F2UGx4dUlDQWdJQ0FnUEM5R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBcE8xeHVYRzRnSUNBZ1pYaHdaV04wS0dselVtVnhkV2x5WldSeld6QmRLQ2twTG5SdlFtVW9abUZzYzJVcE8xeHVJQ0FnSUdWNGNHVmpkQ2hwYzFKbGNYVnBjbVZrYzFzeFhTZ3BLUzUwYjBKbEtIUnlkV1VwTzF4dVhHNGdJSDBwTzF4dVhHNGdJR2wwS0NkemFHOTFiR1FnY21WMGRYSnVJSFJ5ZFdVZ2IzSWdabUZzYzJVZ2QyaGxiaUJqWVd4c2FXNW5JSE5vYjNkU1pYRjFhWEpsWkNncElHUmxjR1Z1WkdsdVp5QnZiaUJwYm5CMWRDQmlaV2x1WnlCbGJYQjBlU0JoYm1RZ2NtVnhkV2x5WldRZ2FYTWdjR0Z6YzJWa0xDQnZjaUJ1YjNRbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdYRzRnSUNBZ2RtRnlJSE5vYjNkU1pYRjFhWEpsWkhNZ1BTQmJYVHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJR052YlhCdmJtVnVkRVJwWkUxdmRXNTBPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lITm9iM2RTWlhGMWFYSmxaSE11Y0hWemFDaDBhR2x6TG5Ob2IzZFNaWEYxYVhKbFpDazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdkWEJrWVhSbFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNobGRtVnVkQ2tnZTF4dUlDQWdJQ0FnSUNCMGFHbHpMbk5sZEZaaGJIVmxLR1YyWlc1MExuUmhjbWRsZEM1MllXeDFaU2s3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBOGFXNXdkWFFnZG1Gc2RXVTllM1JvYVhNdVoyVjBWbUZzZFdVb0tYMGdiMjVEYUdGdVoyVTllM1JvYVhNdWRYQmtZWFJsVm1Gc2RXVjlMejVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvWEc0Z0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wZ2RYSnNQVndpTDNWelpYSnpYQ0krWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSWtGY0lpQjJZV3gxWlQxY0ltWnZiMXdpTHo1Y2JpQWdJQ0FnSUNBZ1BGUmxjM1JKYm5CMWRDQnVZVzFsUFZ3aVFsd2lJSFpoYkhWbFBWd2lYQ0lnY21WeGRXbHlaV1F2UGx4dUlDQWdJQ0FnSUNBOFZHVnpkRWx1Y0hWMElHNWhiV1U5WENKRFhDSWdkbUZzZFdVOVhDSmNJaTgrWEc0Z0lDQWdJQ0E4TDBadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNrN1hHNWNiaUFnSUNCbGVIQmxZM1FvYzJodmQxSmxjWFZwY21Wa2Mxc3dYU2dwS1M1MGIwSmxLR1poYkhObEtUdGNiaUFnSUNCbGVIQmxZM1FvYzJodmQxSmxjWFZwY21Wa2Mxc3hYU2dwS1M1MGIwSmxLSFJ5ZFdVcE8xeHVJQ0FnSUdWNGNHVmpkQ2h6YUc5M1VtVnhkV2x5WldSeld6SmRLQ2twTG5SdlFtVW9abUZzYzJVcE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2NtVjBkWEp1SUhSeWRXVWdiM0lnWm1Gc2MyVWdkMmhsYmlCallXeHNhVzVuSUhOb2IzZEZjbkp2Y2lncElHUmxjR1Z1WkdsdVp5QnZiaUIyWVd4MVpTQnBjeUJwYm5aaGJHbGtJRzl5SUdFZ2MyVnlkbVZ5SUdWeWNtOXlJR2hoY3lCaGNuSnBkbVZrTENCdmNpQnViM1FuTENCbWRXNWpkR2x2YmlBb1pHOXVaU2tnZTF4dVhHNGdJQ0FnZG1GeUlITm9iM2RGY25KdmNpQTlJRzUxYkd3N1hHNGdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJRzFwZUdsdWN6b2dXMFp2Y20xemVTNU5hWGhwYmwwc1hHNGdJQ0FnSUNCamIyMXdiMjVsYm5SRWFXUk5iM1Z1ZERvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J6YUc5M1JYSnliM0lnUFNCMGFHbHpMbk5vYjNkRmNuSnZjanRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0IxY0dSaGRHVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvWlhabGJuUXVkR0Z5WjJWMExuWmhiSFZsS1R0Y2JpQWdJQ0FnSUgwc1hHNGdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmU0J2YmtOb1lXNW5aVDE3ZEdocGN5NTFjR1JoZEdWV1lXeDFaWDB2UGx4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBwTzF4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQjFjbXc5WENJdmRYTmxjbk5jSWo1Y2JpQWdJQ0FnSUNBZ1BGUmxjM1JKYm5CMWRDQnVZVzFsUFZ3aVptOXZYQ0lnZG1Gc2RXVTlYQ0ptYjI5Y0lpQjJZV3hwWkdGMGFXOXVjejFjSW1selJXMWhhV3hjSWlCMllXeHBaR0YwYVc5dVJYSnliM0k5WENKVWFHbHpJR2x6SUc1dmRDQmhiaUJsYldGcGJGd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUdWNGNHVmpkQ2h6YUc5M1JYSnliM0lvS1NrdWRHOUNaU2gwY25WbEtUdGNibHh1SUNBZ0lIWmhjaUJwYm5CMWRDQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRVQwMURiMjF3YjI1bGJuUlhhWFJvVkdGbktHWnZjbTBzSUNkSlRsQlZWQ2NwTzF4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzVqYUdGdVoyVW9hVzV3ZFhRc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oyWnZiMEJtYjI4dVkyOXRKMzE5S1R0Y2JpQWdJQ0JsZUhCbFkzUW9jMmh2ZDBWeWNtOXlLQ2twTG5SdlFtVW9abUZzYzJVcE8xeHVYRzRnSUNBZ2FtRnpiV2x1WlM1QmFtRjRMbWx1YzNSaGJHd29LVHRjYmlBZ0lDQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVjM1ZpYldsMEtHWnZjbTB1WjJWMFJFOU5UbTlrWlNncEtUc2dJQ0FnWEc0Z0lDQWdhbUZ6YldsdVpTNUJhbUY0TG5KbGNYVmxjM1J6TG0xdmMzUlNaV05sYm5Rb0tTNXlaWE53YjI1a1YybDBhQ2g3WEc0Z0lDQWdJQ0J6ZEdGMGRYTTZJRFV3TUN4Y2JpQWdJQ0FnSUhKbGMzQnZibk5sVkhsd1pUb2dKMkZ3Y0d4cFkyRjBhVzl1TDJwemIyNG5MRnh1SUNBZ0lDQWdjbVZ6Y0c5dWMyVlVaWGgwT2lBbmUxd2labTl2WENJNklGd2lSVzFoYVd3Z1lXeHlaV0ZrZVNCbGVHbHpkSE5jSW4wblhHNGdJQ0FnZlNrN1hHNGdJQ0FnYzJWMFZHbHRaVzkxZENobWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQmxlSEJsWTNRb2MyaHZkMFZ5Y205eUtDa3BMblJ2UW1Vb2RISjFaU2s3WEc0Z0lDQWdJQ0JxWVhOdGFXNWxMa0ZxWVhndWRXNXBibk4wWVd4c0tDazdYRzRnSUNBZ0lDQmtiMjVsS0NrN1hHNGdJQ0FnZlN3Z01DazdYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2NtVjBkWEp1SUhSeWRXVWdiM0lnWm1Gc2MyVWdkMmhsYmlCallXeHNhVzVuSUdselVISnBjM1JwYm1Vb0tTQmtaWEJsYm1ScGJtY2diMjRnYVc1d2RYUWdhR0Z6SUdKbFpXNGdYQ0owYjNWamFHVmtYQ0lnYjNJZ2JtOTBKeXdnWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUZ4dUlDQWdJSFpoY2lCcGMxQnlhWE4wYVc1bElEMGdiblZzYkR0Y2JpQWdJQ0IyWVhJZ1ZHVnpkRWx1Y0hWMElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdiV2w0YVc1ek9pQmJSbTl5YlhONUxrMXBlR2x1WFN4Y2JpQWdJQ0FnSUdOdmJYQnZibVZ1ZEVScFpFMXZkVzUwT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR2x6VUhKcGMzUnBibVVnUFNCMGFHbHpMbWx6VUhKcGMzUnBibVU3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnZFhCa1lYUmxWbUZzZFdVNklHWjFibU4wYVc5dUlDaGxkbVZ1ZENrZ2UxeHVJQ0FnSUNBZ0lDQjBhR2x6TG5ObGRGWmhiSFZsS0dWMlpXNTBMblJoY21kbGRDNTJZV3gxWlNrN1hHNGdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJSEpsZEhWeWJpQThhVzV3ZFhRZ2RtRnNkV1U5ZTNSb2FYTXVaMlYwVm1Gc2RXVW9LWDBnYjI1RGFHRnVaMlU5ZTNSb2FYTXVkWEJrWVhSbFZtRnNkV1Y5THo1Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5S1R0Y2JpQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb1hHNGdJQ0FnSUNBOFJtOXliWE41TGtadmNtMGdkWEpzUFZ3aUwzVnpaWEp6WENJK1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0lrRmNJaUIyWVd4MVpUMWNJbVp2YjF3aUx6NWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmx4dUlDQWdJR1Y0Y0dWamRDaHBjMUJ5YVhOMGFXNWxLQ2twTG5SdlFtVW9kSEoxWlNrN1hHNGdJQ0FnZG1GeUlHbHVjSFYwSUQwZ1ZHVnpkRlYwYVd4ekxtWnBibVJTWlc1a1pYSmxaRVJQVFVOdmJYQnZibVZ1ZEZkcGRHaFVZV2NvWm05eWJTd2dKMGxPVUZWVUp5azdYRzRnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExtTm9ZVzVuWlNocGJuQjFkQ3dnZTNSaGNtZGxkRG9nZTNaaGJIVmxPaUFuWm05dkozMTlLVHRjYmlBZ0lDQmxlSEJsWTNRb2FYTlFjbWx6ZEdsdVpTZ3BLUzUwYjBKbEtHWmhiSE5sS1R0Y2JpQWdJQ0JjYmlBZ2ZTazdYRzVjYm1sMEtDZHphRzkxYkdRZ1lXeHNiM2NnWVc0Z2RXNWtaV1pwYm1Wa0lIWmhiSFZsSUhSdklHSmxJSFZ3WkdGMFpXUWdkRzhnWVNCMllXeDFaU2NzSUdaMWJtTjBhVzl1SUNoa2IyNWxLU0I3WEc0Z0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTOCtYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJRlJsYzNSR2IzSnRJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnWjJWMFNXNXBkR2xoYkZOMFlYUmxPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlCN2RtRnNkV1U2SUhWdVpHVm1hVzVsWkgwN1hHNGdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ1kyaGhibWRsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0FnSUNBZ2RtRnNkV1U2SUNkbWIyOG5YRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z0tGeHVJQ0FnSUNBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCMWNtdzlYQ0l2ZFhObGNuTmNJajVjYmlBZ0lDQWdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0lrRmNJaUIyWVd4MVpUMTdkR2hwY3k1emRHRjBaUzUyWVd4MVpYMHZQbHh1SUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEZSbGMzUkdiM0p0THo1Y2JpQWdJQ0FwTzF4dVhHNGdJQ0FnWm05eWJTNWphR0Z1WjJWV1lXeDFaU2dwTzF4dUlDQWdJSFpoY2lCcGJuQjFkQ0E5SUZSbGMzUlZkR2xzY3k1bWFXNWtVbVZ1WkdWeVpXUkVUMDFEYjIxd2IyNWxiblJYYVhSb1ZHRm5LR1p2Y20wc0lDZEpUbEJWVkNjcE8xeHVJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdaWGh3WldOMEtHbHVjSFYwTG1kbGRFUlBUVTV2WkdVb0tTNTJZV3gxWlNrdWRHOUNaU2duWm05dkp5azdYRzRnSUNBZ0lDQmtiMjVsS0NrN1hHNGdJQ0FnZlN3Z01DazdYRzRnSUgwcE95QWdYRzVjYmlBZ2FYUW9KM05vYjNWc1pDQmlaU0JoWW14bElIUnZJR1I1Ym1GdGFXTmhiR3g1SUdOb1lXNW5aU0IyWVd4cFpHRjBhVzl1Y3ljc0lHWjFibU4wYVc5dUlDaGtiMjVsS1NCN1hHNWNiaUFnSUNCMllYSWdhWE5KYm5aaGJHbGtJRDBnWm1Gc2MyVTdYRzRnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUcxcGVHbHVjem9nVzBadmNtMXplUzVOYVhocGJsMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJRHhwYm5CMWRDQjJZV3gxWlQxN2RHaHBjeTVuWlhSV1lXeDFaU2dwZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlGUmxjM1JHYjNKdElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdaMlYwU1c1cGRHbGhiRk4wWVhSbE9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUI3ZG1Gc2RXVTZJQ2RtYjI5QVltRnlMbU52YlNjc0lIWmhiR2xrWVhScGIyNXpPaUFuYVhORmJXRnBiQ2Q5TzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUdOb1lXNW5aVlpoYkdsa1lYUnBiMjV6T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJSFJvYVhNdWMyVjBVM1JoZEdVb2UxeHVJQ0FnSUNBZ0lDQWdJSFpoYkdsa1lYUnBiMjV6T2lBblpYRjFZV3h6T21admJ5ZGNiaUFnSUNBZ0lDQWdmU2s3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnYzJWMFNXNTJZV3hwWkRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emIyeGxMbXh2WnlnblVuVnVibWx1WnlCcGRDRW5LVHRjYmlBZ0lDQWdJQ0FnYVhOSmJuWmhiR2xrSUQwZ2RISjFaVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUNoY2JpQWdJQ0FnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTBnZFhKc1BWd2lMM1Z6WlhKelhDSWdiMjVKYm5aaGJHbGtQWHQwYUdsekxuTmxkRWx1ZG1Gc2FXUjlQbHh1SUNBZ0lDQWdJQ0FnSUNBZ1BGUmxjM1JKYm5CMWRDQnVZVzFsUFZ3aVFWd2lJSFpoYkdsa1lYUnBiMjV6UFh0MGFHbHpMbk4wWVhSbExuWmhiR2xrWVhScGIyNXpmU0IyWVd4MVpUMTdkR2hwY3k1emRHRjBaUzUyWVd4MVpYMHZQbHh1SUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEZSbGMzUkdiM0p0THo1Y2JpQWdJQ0FwTzF4dVhHNGdJQ0FnWm05eWJTNWphR0Z1WjJWV1lXeHBaR0YwYVc5dWN5Z3BPMXh1SUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnWlhod1pXTjBLR2x6U1c1MllXeHBaQ2t1ZEc5Q1pTaDBjblZsS1R0Y2JpQWdJQ0FnSUdSdmJtVW9LVHRjYmlBZ0lDQjlMQ0F3S1R0Y2JpQWdmU2s3SUNCY2JseHVJQ0JwZENnbmMyaHZkV3hrSUdKbElHRmliR1VnZEc4Z2RHVnpkQ0JoSUhaaGJIVmxjeUIyWVd4cFpHbDBlU2NzSUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lIWmhjaUJwYzBsdWRtRnNhV1FnUFNCbVlXeHpaVHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUx6NWNiaUFnSUNBZ0lIMWNiaUFnSUNCOUtUdGNiaUFnSUNCMllYSWdWR1Z6ZEVadmNtMGdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUNoY2JpQWdJQ0FnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdJQ0FnSUNBZ0lDQThWR1Z6ZEVsdWNIVjBJRzVoYldVOVhDSkJYQ0lnZG1Gc2FXUmhkR2x2Ym5NOVhDSnBjMFZ0WVdsc1hDSXZQbHh1SUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEZSbGMzUkdiM0p0THo1Y2JpQWdJQ0FwTzF4dVhHNGdJQ0FnZG1GeUlHbHVjSFYwSUQwZ1ZHVnpkRlYwYVd4ekxtWnBibVJTWlc1a1pYSmxaRU52YlhCdmJtVnVkRmRwZEdoVWVYQmxLR1p2Y20wc0lGUmxjM1JKYm5CMWRDazdYRzRnSUNBZ1pYaHdaV04wS0dsdWNIVjBMbWx6Vm1Gc2FXUldZV3gxWlNnblptOXZRR0poY2k1amIyMG5LU2t1ZEc5Q1pTaDBjblZsS1R0Y2JpQWdJQ0JsZUhCbFkzUW9hVzV3ZFhRdWFYTldZV3hwWkZaaGJIVmxLQ2RtYjI5QVltRnlKeWtwTG5SdlFtVW9abUZzYzJVcE8xeHVYRzRnSUgwcE95QmNibHh1ZlNrN1hHNGlYWDA9IiwidmFyIEZvcm1zeSA9IHJlcXVpcmUoJy4vLi4vc3JjL21haW4uanMnKTtcblxuZGVzY3JpYmUoJ0Zvcm1zeScsIGZ1bmN0aW9uICgpIHtcblxuICBkZXNjcmliZSgnU2V0dGluZyB1cCBhIGZvcm0nLCBmdW5jdGlvbiAoKSB7XG5cbiAgICBpdCgnc2hvdWxkIHJlbmRlciBhIGZvcm0gaW50byB0aGUgZG9jdW1lbnQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIG51bGwpKTtcbiAgICAgIGV4cGVjdChmb3JtLmdldERPTU5vZGUoKS50YWdOYW1lKS50b0VxdWFsKCdGT1JNJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHNldCBhIGNsYXNzIG5hbWUgaWYgcGFzc2VkJywgZnVuY3Rpb24gKCkge1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KCBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7Y2xhc3NOYW1lOiBcImZvb1wifSkpO1xuICAgICAgZXhwZWN0KGZvcm0uZ2V0RE9NTm9kZSgpLmNsYXNzTmFtZSkudG9FcXVhbCgnZm9vJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGFsbG93IGZvciBudWxsL3VuZGVmaW5lZCBjaGlsZHJlbicsIGZ1bmN0aW9uIChkb25lKSB7XG4gICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICBjaGFuZ2VWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy5jaGFuZ2VWYWx1ZX0pXG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICB2YXIgbW9kZWwgPSBudWxsO1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIG9uU3VibWl0OiBmdW5jdGlvbiAoZm9ybU1vZGVsKSB7XG4gICAgICAgICAgbW9kZWwgPSBmb3JtTW9kZWw7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25TdWJtaXQ6ICB0aGlzLm9uU3VibWl0fSwgXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJoMVwiLCBudWxsLCBcIlRlc3RcIiksIFxuICAgICAgICAgICAgICAgbnVsbCwgXG4gICAgICAgICAgICAgICB1bmRlZmluZWQsIFxuICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwibmFtZVwiLCB2YWx1ZTogICdmb28nIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSk7XG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG4gICAgICAgIGV4cGVjdChtb2RlbCkudG9FcXVhbCh7bmFtZTogJ2Zvbyd9KTtcbiAgICAgICAgZG9uZSgpO1xuICAgICAgfSwgMTApO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBhbGxvdyBmb3IgaW5wdXRzIGJlaW5nIGFkZGVkIGR5bmFtaWNhbGx5JywgZnVuY3Rpb24gKGRvbmUpIHtcblxuICAgICAgdmFyIGlucHV0cyA9IFtdO1xuICAgICAgdmFyIGZvcmNlVXBkYXRlID0gbnVsbDtcbiAgICAgIHZhciBtb2RlbCA9IG51bGw7XG4gICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCBudWxsKVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBjb21wb25lbnRXaWxsTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBmb3JjZVVwZGF0ZSA9IHRoaXMuZm9yY2VVcGRhdGUuYmluZCh0aGlzKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25TdWJtaXQ6IGZ1bmN0aW9uIChmb3JtTW9kZWwpIHtcbiAgICAgICAgICBtb2RlbCA9IGZvcm1Nb2RlbDtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuICggXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25TdWJtaXQ6IHRoaXMub25TdWJtaXR9LCBcbiAgICAgICAgICAgICAgaW5wdXRzXG4gICAgICAgICAgICApKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSBcbiAgICAgICk7XG5cbiAgICAgIC8vIFdhaXQgYmVmb3JlIGFkZGluZyB0aGUgaW5wdXRcbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXG4gICAgICAgIGlucHV0cy5wdXNoKFRlc3RJbnB1dCh7XG4gICAgICAgICAgbmFtZTogJ3Rlc3QnXG4gICAgICAgIH0pKTtcblxuICAgICAgICBmb3JjZVVwZGF0ZShmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgICAvLyBXYWl0IGZvciBuZXh0IGV2ZW50IGxvb3AsIGFzIHRoYXQgZG9lcyB0aGUgZm9ybVxuICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG4gICAgICAgICAgICBleHBlY3QobW9kZWwudGVzdCkudG9CZURlZmluZWQoKTtcbiAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICB9LCAwKTtcblxuICAgICAgICB9KTtcblxuICAgICAgfSwgMTApO1xuXG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGFsbG93IGR5bmFtaWNhbGx5IGFkZGVkIGlucHV0cyB0byB1cGRhdGUgdGhlIGZvcm0tbW9kZWwnLCBmdW5jdGlvbiAoZG9uZSkge1xuXG4gICAgICB2YXIgaW5wdXRzID0gW107XG4gICAgICB2YXIgZm9yY2VVcGRhdGUgPSBudWxsO1xuICAgICAgdmFyIG1vZGVsID0gbnVsbDtcbiAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICAgIGNoYW5nZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLmNoYW5nZVZhbHVlfSlcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgY29tcG9uZW50V2lsbE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgZm9yY2VVcGRhdGUgPSB0aGlzLmZvcmNlVXBkYXRlLmJpbmQodGhpcyk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uU3VibWl0OiBmdW5jdGlvbiAoZm9ybU1vZGVsKSB7XG4gICAgICAgICAgbW9kZWwgPSBmb3JtTW9kZWw7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiAoIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uU3VibWl0OiB0aGlzLm9uU3VibWl0fSwgXG4gICAgICAgICAgICAgIGlucHV0c1xuICAgICAgICAgICAgKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwgbnVsbCkgXG4gICAgICApO1xuXG4gICAgICAvLyBXYWl0IGJlZm9yZSBhZGRpbmcgdGhlIGlucHV0XG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblxuICAgICAgICBpbnB1dHMucHVzaChUZXN0SW5wdXQoe1xuICAgICAgICAgIG5hbWU6ICd0ZXN0J1xuICAgICAgICB9KSk7XG5cbiAgICAgICAgZm9yY2VVcGRhdGUoZnVuY3Rpb24gKCkge1xuXG4gICAgICAgICAgLy8gV2FpdCBmb3IgbmV4dCBldmVudCBsb29wLCBhcyB0aGF0IGRvZXMgdGhlIGZvcm1cbiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyksIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvbyd9fSk7XG4gICAgICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICAgICAgICAgIGV4cGVjdChtb2RlbC50ZXN0KS50b0JlKCdmb28nKTtcbiAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICB9LCAwKTtcblxuICAgICAgICB9KTtcblxuICAgICAgfSwgMCk7XG5cbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYWxsb3cgYSBkeW5hbWljYWxseSB1cGRhdGVkIGlucHV0IHRvIHVwZGF0ZSB0aGUgZm9ybS1tb2RlbCcsIGZ1bmN0aW9uIChkb25lKSB7XG5cbiAgICAgIHZhciBmb3JjZVVwZGF0ZSA9IG51bGw7XG4gICAgICB2YXIgbW9kZWwgPSBudWxsO1xuICAgICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgY2hhbmdlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMuY2hhbmdlVmFsdWV9KVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdmFyIGlucHV0O1xuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIGNvbXBvbmVudFdpbGxNb3VudDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGZvcmNlVXBkYXRlID0gdGhpcy5mb3JjZVVwZGF0ZS5iaW5kKHRoaXMpO1xuICAgICAgICB9LFxuICAgICAgICBvblN1Ym1pdDogZnVuY3Rpb24gKGZvcm1Nb2RlbCkge1xuICAgICAgICAgIG1vZGVsID0gZm9ybU1vZGVsO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBpbnB1dCA9IFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJ0ZXN0XCIsIHZhbHVlOiAgdGhpcy5wcm9wcy52YWx1ZX0pO1xuXG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblN1Ym1pdDogdGhpcy5vblN1Ym1pdH0sIFxuICAgICAgICAgICAgICBpbnB1dFxuICAgICAgICAgICAgKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIHt2YWx1ZTogXCJmb29cIn0pKTtcblxuICAgICAgLy8gV2FpdCBiZWZvcmUgY2hhbmdpbmcgdGhlIGlucHV0XG4gICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcbiAgICAgICAgZm9ybS5zZXRQcm9wcyh7dmFsdWU6ICdiYXInfSk7XG5cbiAgICAgICAgZm9yY2VVcGRhdGUoZnVuY3Rpb24gKCkge1xuICAgICAgICAgIC8vIFdhaXQgZm9yIG5leHQgZXZlbnQgbG9vcCwgYXMgdGhhdCBkb2VzIHRoZSBmb3JtXG4gICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICAgICAgICAgIGV4cGVjdChtb2RlbC50ZXN0KS50b0JlKCdiYXInKTtcbiAgICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgICB9LCAwKTtcblxuICAgICAgICB9KTtcblxuICAgICAgfSwgMTApO1xuXG4gICAgfSk7XG5cbiAgICBkZXNjcmliZSgndmFsaWRhdGlvbnMnLCBmdW5jdGlvbigpIHtcbiAgICAgIHZhciBDaGVja1ZhbGlkLCBvblN1Ym1pdCwgT3RoZXJDaGVja1ZhbGlkO1xuICAgICAgdmFyIGlzVmFsaWQ7XG5cbiAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICAgIGNoYW5nZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiAgdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogIHRoaXMuY2hhbmdlVmFsdWV9KVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgIGdldERlZmF1bHRQcm9wczogZnVuY3Rpb24oKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlucHV0czogW10sXG4gICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgdmFyIGJ1aWx0SW5wdXRzID0gW107XG4gICAgICAgICAgdmFyIGlucHV0cyA9IHRoaXMucHJvcHMuaW5wdXRzO1xuICAgICAgICAgIGZvciAodmFyIGk9MDsgaSA8IGlucHV0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgdmFyIGlucHV0ID0gaW5wdXRzW2ldO1xuICAgICAgICAgICAgYnVpbHRJbnB1dHMucHVzaChSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwgUmVhY3QuX19zcHJlYWQoe30sICAgaW5wdXQgLCB7a2V5OiAgaW5wdXQubmFtZX0pKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtcbiAgICAgICAgICAgIG9uU3VibWl0OiAgZnVuY3Rpb24oYXJnMSkgeyBvblN1Ym1pdChhcmcxKTsgfSwgXG4gICAgICAgICAgICBvblZhbGlkOiAgZnVuY3Rpb24oKSB7IGlzVmFsaWQgPSB0cnVlOyB9LCBcbiAgICAgICAgICAgIG9uSW52YWxpZDogIGZ1bmN0aW9uKCkgeyBpc1ZhbGlkID0gZmFsc2U7IH19LCBcbiAgICAgICAgICAgICBidWlsdElucHV0cyBcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgYmVmb3JlRWFjaChmdW5jdGlvbigpIHtcbiAgICAgICAgaXNWYWxpZCA9IHRydWU7XG4gICAgICAgIENoZWNrVmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgnQ2hlY2tWYWxpZCcpO1xuICAgICAgICBGb3Jtc3kuYWRkVmFsaWRhdGlvblJ1bGUoJ0NoZWNrVmFsaWQnLCBDaGVja1ZhbGlkKTtcbiAgICAgICAgT3RoZXJDaGVja1ZhbGlkID0gamFzbWluZS5jcmVhdGVTcHkoJ0NoZWNrVmFsaWQnKTtcbiAgICAgICAgRm9ybXN5LmFkZFZhbGlkYXRpb25SdWxlKCdPdGhlckNoZWNrVmFsaWQnLCBPdGhlckNoZWNrVmFsaWQpO1xuICAgICAgICBvblN1Ym1pdCA9IGphc21pbmUuY3JlYXRlU3B5KCdvblN1Ym1pdCcpO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdzaG91bGQgcnVuIHdoZW4gdGhlIGlucHV0IGNoYW5nZXMnLCBmdW5jdGlvbigpIHtcbiAgICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIHtpbnB1dHM6ICBbe25hbWU6ICdvbmUnLCB2YWxpZGF0aW9uczogJ0NoZWNrVmFsaWQnLCB2YWx1ZTogJ2Zvbyd9XSB9KSk7XG4gICAgICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdpbnB1dCcpO1xuICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LmdldERPTU5vZGUoKSwge3RhcmdldDoge3ZhbHVlOiAnYmFyJ319KTtcbiAgICAgICAgZXhwZWN0KENoZWNrVmFsaWQpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCdiYXInKTtcbiAgICAgICAgZXhwZWN0KE90aGVyQ2hlY2tWYWxpZCkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgnc2hvdWxkIGFsbG93IHRoZSB2YWxpZGF0aW9uIHRvIGJlIGNoYW5nZWQnLCBmdW5jdGlvbigpIHtcbiAgICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIHtpbnB1dHM6ICBbe25hbWU6ICdvbmUnLCB2YWxpZGF0aW9uczogJ0NoZWNrVmFsaWQnLCB2YWx1ZTogJ2Zvbyd9XSB9KSk7XG4gICAgICAgIGZvcm0uc2V0UHJvcHMoe2lucHV0czogW3tuYW1lOiAnb25lJywgdmFsaWRhdGlvbnM6ICdPdGhlckNoZWNrVmFsaWQnLCB2YWx1ZTogJ2Zvbyd9XSB9KTtcbiAgICAgICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ2lucHV0Jyk7XG4gICAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQuZ2V0RE9NTm9kZSgpLCB7dGFyZ2V0OiB7dmFsdWU6ICdiYXInfX0pO1xuICAgICAgICBleHBlY3QoT3RoZXJDaGVja1ZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCgnYmFyJyk7XG4gICAgICB9KTtcblxuICAgICAgaXQoJ3Nob3VsZCBpbnZhbGlkYXRlIGEgZm9ybSBpZiBkeW5hbWljYWxseSBpbnNlcnRlZCBpbnB1dCBpcyBpbnZhbGlkJywgZnVuY3Rpb24oZG9uZSkge1xuICAgICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge2lucHV0czogIFt7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnaXNFbWFpbCcsIHZhbHVlOiAnZm9vQGJhci5jb20nfV0gfSkpO1xuICAgICAgICBleHBlY3QoaXNWYWxpZCkudG9FcXVhbCh0cnVlKTtcbiAgICAgICAgZm9ybS5zZXRQcm9wcyh7aW5wdXRzOiBbXG4gICAgICAgICAge25hbWU6ICdvbmUnLCB2YWxpZGF0aW9uczogJ2lzRW1haWwnLCB2YWx1ZTogJ2Zvb0BiYXIuY29tJ30sXG4gICAgICAgICAge25hbWU6ICd0d28nLCB2YWxpZGF0aW9uczogJ2lzRW1haWwnLCB2YWx1ZTogJ2Zvb0BiYXInfSxcbiAgICAgICAgXX0sIGZ1bmN0aW9uKCkge1xuICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7XG4gICAgICAgICAgICBleHBlY3QoaXNWYWxpZCkudG9FcXVhbChmYWxzZSk7XG4gICAgICAgICAgICBkb25lKCk7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIGl0KCdzaG91bGQgdmFsaWRhdGUgYSBmb3JtIHdoZW4gcmVtb3ZpbmcgYW4gaW52YWxpZCBpbnB1dCcsIGZ1bmN0aW9uKGRvbmUpIHtcbiAgICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIHtpbnB1dHM6ICBbXG4gICAgICAgICAge25hbWU6ICdvbmUnLCB2YWxpZGF0aW9uczogJ2lzRW1haWwnLCB2YWx1ZTogJ2Zvb0BiYXIuY29tJ30sXG4gICAgICAgICAge25hbWU6ICd0d28nLCB2YWxpZGF0aW9uczogJ2lzRW1haWwnLCB2YWx1ZTogJ2Zvb0BiYXInfSxcbiAgICAgICAgXSB9KSk7XG4gICAgICAgIGV4cGVjdChpc1ZhbGlkKS50b0VxdWFsKGZhbHNlKTtcbiAgICAgICAgZm9ybS5zZXRQcm9wcyh7aW5wdXRzOiBbe25hbWU6ICdvbmUnLCB2YWxpZGF0aW9uczogJ2lzRW1haWwnLCB2YWx1ZTogJ2Zvb0BiYXIuY29tJ31dfSwgZnVuY3Rpb24oKSB7XG4gICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIGV4cGVjdChpc1ZhbGlkKS50b0VxdWFsKHRydWUpO1xuICAgICAgICAgICAgZG9uZSgpO1xuICAgICAgICAgIH0sIDApO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuXG4gICAgICBpdCgncnVucyBtdWx0aXBsZSB2YWxpZGF0aW9ucycsIGZ1bmN0aW9uKCkge1xuICAgICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwge2lucHV0czogIFt7bmFtZTogJ29uZScsIHZhbGlkYXRpb25zOiAnQ2hlY2tWYWxpZCxPdGhlckNoZWNrVmFsaWQnLCB2YWx1ZTogJ2Zvbyd9XSB9KSk7XG4gICAgICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdpbnB1dCcpO1xuICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LmdldERPTU5vZGUoKSwge3RhcmdldDoge3ZhbHVlOiAnYmFyJ319KTtcbiAgICAgICAgZXhwZWN0KENoZWNrVmFsaWQpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCdiYXInKTtcbiAgICAgICAgZXhwZWN0KE90aGVyQ2hlY2tWYWxpZCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoJ2JhcicpO1xuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIG5vdCB0cmlnZ2VyIG9uQ2hhbmdlIHdoZW4gZm9ybSBpcyBtb3VudGVkJywgZnVuY3Rpb24gKCkge1xuICAgICAgdmFyIGhhc0NoYW5nZWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgnb25DaGFuZ2UnKTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGhhc0NoYW5nZWQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvbkNoYW5nZTogdGhpcy5vbkNoYW5nZX0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSk7XG4gICAgICBleHBlY3QoaGFzQ2hhbmdlZCkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgdHJpZ2dlciBvbkNoYW5nZSB3aGVuIGZvcm0gZWxlbWVudCBpcyBjaGFuZ2VkJywgZnVuY3Rpb24gKCkge1xuICAgICAgdmFyIGhhc0NoYW5nZWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgnb25DaGFuZ2UnKTtcbiAgICAgIHZhciBNeUlucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIk15SW5wdXRcIixcbiAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgb25DaGFuZ2U6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMub25DaGFuZ2V9KVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGhhc0NoYW5nZWQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvbkNoYW5nZTogdGhpcy5vbkNoYW5nZX0sIFxuICAgICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KE15SW5wdXQsIHtuYW1lOiBcImZvb1wifSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSk7XG4gICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpLCB7dGFyZ2V0OiB7dmFsdWU6ICdiYXInfX0pO1xuICAgICAgZXhwZWN0KGhhc0NoYW5nZWQpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgdHJpZ2dlciBvbkNoYW5nZSB3aGVuIG5ldyBpbnB1dCBpcyBhZGRlZCB0byBmb3JtJywgZnVuY3Rpb24gKGRvbmUpIHtcbiAgICAgIHZhciBoYXNDaGFuZ2VkID0gamFzbWluZS5jcmVhdGVTcHkoJ29uQ2hhbmdlJyk7XG4gICAgICB2YXIgaW5wdXRzID0gW107XG4gICAgICB2YXIgZm9yY2VVcGRhdGUgPSBudWxsO1xuICAgICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgY2hhbmdlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMuY2hhbmdlVmFsdWV9KVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBjb21wb25lbnRXaWxsTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBmb3JjZVVwZGF0ZSA9IHRoaXMuZm9yY2VVcGRhdGUuYmluZCh0aGlzKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25DaGFuZ2U6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICBoYXNDaGFuZ2VkKCk7XG4gICAgICAgIH0sXG4gICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgIHJldHVybiAoIFxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uQ2hhbmdlOiB0aGlzLm9uQ2hhbmdlfSwgXG4gICAgICAgICAgICAgIGlucHV0c1xuICAgICAgICAgICAgKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwgbnVsbCkgXG4gICAgICApO1xuXG4gICAgICAvLyBXYWl0IGJlZm9yZSBhZGRpbmcgdGhlIGlucHV0XG4gICAgICBpbnB1dHMucHVzaChUZXN0SW5wdXQoe1xuICAgICAgICBuYW1lOiAndGVzdCdcbiAgICAgIH0pKTtcblxuICAgICAgZm9yY2VVcGRhdGUoZnVuY3Rpb24gKCkge1xuXG4gICAgICAgIC8vIFdhaXQgZm9yIG5leHQgZXZlbnQgbG9vcCwgYXMgdGhhdCBkb2VzIHRoZSBmb3JtXG4gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAgIGV4cGVjdChoYXNDaGFuZ2VkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgICAgICAgZG9uZSgpO1xuICAgICAgICB9LCAwKTtcblxuICAgICAgfSk7XG5cbiAgICB9KTtcblxuICB9KTtcblxuICBkZXNjcmliZSgnVXBkYXRlIGEgZm9ybScsIGZ1bmN0aW9uICgpIHtcblxuICAgIGl0KCdzaG91bGQgYWxsb3cgZWxlbWVudHMgdG8gY2hlY2sgaWYgdGhlIGZvcm0gaXMgZGlzYWJsZWQnLCBmdW5jdGlvbiAoZG9uZSkge1xuXG4gICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSlcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgZ2V0SW5pdGlhbFN0YXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIHtkaXNhYmxlZDogdHJ1ZX07XG4gICAgICAgIH0sXG4gICAgICAgIGVuYWJsZUZvcm06IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgICAgIGRpc2FibGVkOiBmYWxzZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gKCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvbkNoYW5nZTogdGhpcy5vbkNoYW5nZSwgZGlzYWJsZWQ6IHRoaXMuc3RhdGUuZGlzYWJsZWR9LCBcbiAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wifSlcbiAgICAgICAgICAgICkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudCggXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIG51bGwpIFxuICAgICAgKTtcblxuICAgICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZENvbXBvbmVudFdpdGhUeXBlKGZvcm0sIFRlc3RJbnB1dCk7XG4gICAgICBleHBlY3QoaW5wdXQuaXNGb3JtRGlzYWJsZWQoKSkudG9CZSh0cnVlKTtcbiAgICAgIGZvcm0uZW5hYmxlRm9ybSgpO1xuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIGV4cGVjdChpbnB1dC5pc0Zvcm1EaXNhYmxlZCgpKS50b0JlKGZhbHNlKTtcbiAgICAgICAgZG9uZSgpO1xuICAgICAgfSwgMCk7XG5cbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYmUgcG9zc2libGUgdG8gcGFzcyBlcnJvciBzdGF0ZSBvZiBlbGVtZW50cyBieSBjaGFuZ2luZyBhbiBlcnJvcnMgYXR0cmlidXRlJywgZnVuY3Rpb24gKGRvbmUpIHtcblxuICAgICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKX0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHZhciBUZXN0Rm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0Rm9ybVwiLFxuICAgICAgICBnZXRJbml0aWFsU3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsaWRhdGlvbkVycm9yczoge1xuICAgICAgICAgICAgICBmb286ICdiYXInXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICAgICAgb25DaGFuZ2U6IGZ1bmN0aW9uICh2YWx1ZXMpIHtcbiAgICAgICAgICBpZiAodmFsdWVzLmZvbykge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAgIHZhbGlkYXRpb25FcnJvcnM6IHt9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgICAgIHZhbGlkYXRpb25FcnJvcnM6IHtmb286ICdiYXInfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICByZXR1cm4gKCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvbkNoYW5nZTogdGhpcy5vbkNoYW5nZSwgdmFsaWRhdGlvbkVycm9yczogdGhpcy5zdGF0ZS52YWxpZGF0aW9uRXJyb3JzfSwgXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIn0pXG4gICAgICAgICAgICApKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSBcbiAgICAgICk7XG5cbiAgICAgIC8vIFdhaXQgZm9yIHVwZGF0ZVxuICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRDb21wb25lbnRXaXRoVHlwZShmb3JtLCBUZXN0SW5wdXQpO1xuICAgICAgICBleHBlY3QoaW5wdXQuZ2V0RXJyb3JNZXNzYWdlKCkpLnRvQmUoJ2JhcicpO1xuICAgICAgICBpbnB1dC5zZXRWYWx1ZSgnZ290VmFsdWUnKTtcblxuICAgICAgICAvLyBXYWl0IGZvciB1cGRhdGVcbiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgZXhwZWN0KGlucHV0LmdldEVycm9yTWVzc2FnZSgpKS50b0JlKG51bGwpO1xuICAgICAgICAgIGRvbmUoKTtcbiAgICAgICAgfSwgMCk7XG4gICAgICB9LCAwKTtcblxuICAgIH0pO1xuXG5cbiAgICBpdCgnc2hvdWxkIHRyaWdnZXIgYW4gb25WYWxpZFN1Ym1pdCB3aGVuIHN1Ym1pdHRpbmcgYSB2YWxpZCBmb3JtJywgZnVuY3Rpb24gKCkge1xuXG4gICAgICAgIHZhciBpc0NhbGxlZCA9IGZhbHNlO1xuICAgICAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdmFyIFRlc3RGb3JtID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RGb3JtXCIsXG4gICAgICAgICAgb25WYWxpZFN1Ym1pdDogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgaXNDYWxsZWQgPSB0cnVlO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICByZXR1cm4gKCBcbiAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge29uVmFsaWRTdWJtaXQ6IHRoaXMub25WYWxpZFN1Ym1pdH0sIFxuICAgICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsaWRhdGlvbnM6IFwiaXNFbWFpbFwiLCB2YWx1ZTogXCJmb29AYmFyLmNvbVwifSlcbiAgICAgICAgICAgICAgKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KCBcbiAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RGb3JtLCBudWxsKSBcbiAgICAgICAgKTtcblxuICAgICAgICB2YXIgVGVzdEZvcm0gPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkQ29tcG9uZW50V2l0aFR5cGUoZm9ybSwgVGVzdEZvcm0pO1xuICAgICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KFRlc3RGb3JtLmdldERPTU5vZGUoKSk7ICBcbiAgICAgICAgZXhwZWN0KGlzQ2FsbGVkKS50b0JlKHRydWUpO1xuXG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIHRyaWdnZXIgYW4gb25JbnZhbGlkU3VibWl0IHdoZW4gc3VibWl0dGluZyBhbiBpbnZhbGlkIGZvcm0nLCBmdW5jdGlvbiAoKSB7XG5cbiAgICAgICAgdmFyIGlzQ2FsbGVkID0gZmFsc2U7XG4gICAgICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCl9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgICAgICBvbkludmFsaWRTdWJtaXQ6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIGlzQ2FsbGVkID0gdHJ1ZTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuICggXG4gICAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvbkludmFsaWRTdWJtaXQ6IHRoaXMub25JbnZhbGlkU3VibWl0fSwgXG4gICAgICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWxpZGF0aW9uczogXCJpc0VtYWlsXCIsIHZhbHVlOiBcImZvb0BiYXJcIn0pXG4gICAgICAgICAgICAgICkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudCggXG4gICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0Rm9ybSwgbnVsbCkgXG4gICAgICAgICk7XG5cbiAgICAgICAgdmFyIFRlc3RGb3JtID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZENvbXBvbmVudFdpdGhUeXBlKGZvcm0sIFRlc3RGb3JtKTtcbiAgICAgICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChUZXN0Rm9ybS5nZXRET01Ob2RlKCkpOyAgXG4gICAgICAgIGV4cGVjdChpc0NhbGxlZCkudG9CZSh0cnVlKTtcblxuICAgIH0pO1xuXG4gIH0pO1xuXG4gIGRlc2NyaWJlKFwidmFsdWUgPT09IGZhbHNlXCIsIGZ1bmN0aW9uKCkge1xuICAgIHZhciBvblN1Ym1pdDtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIGdldERlZmF1bHRQcm9wczogZnVuY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHlwZTogXCJ0ZXh0XCIsXG4gICAgICAgIH07XG4gICAgICB9LFxuICAgICAgY2hhbmdlVmFsdWU6IGZ1bmN0aW9uKCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGUudGFyZ2V0W3RoaXMucHJvcHMudHlwZSA9PT0gXCJjaGVja2JveFwiID8gXCJjaGVja2VkXCIgOiBcInZhbHVlXCJdKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dHlwZTogIHRoaXMucHJvcHMudHlwZSwgdmFsdWU6ICB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiAgdGhpcy5jaGFuZ2VWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB2YXIgVGVzdEZvcm0gPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdEZvcm1cIixcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHtvblN1Ym1pdDogIGZ1bmN0aW9uKGFyZzEpIHsgb25TdWJtaXQoYXJnMSk7IH19LCBcbiAgICAgICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6ICB0aGlzLnByb3BzLnZhbHVlLCB0eXBlOiBcImNoZWNrYm94XCJ9KSwgXG4gICAgICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFwiYnV0dG9uXCIsIHt0eXBlOiBcInN1Ym1pdFwifSwgXCJTYXZlXCIpXG4gICAgICAgICAgKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgYmVmb3JlRWFjaChmdW5jdGlvbigpIHtcbiAgICAgIG9uU3VibWl0ID0gamFzbWluZS5jcmVhdGVTcHkoXCJvblN1Ym1pdFwiKTtcbiAgICB9KTtcblxuICAgIGl0KFwic2hvdWxkIGNhbGwgb25TdWJtaXQgY29ycmVjdGx5XCIsIGZ1bmN0aW9uKCkge1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIHt2YWx1ZTogIGZhbHNlIH0pKTtcbiAgICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuICAgICAgZXhwZWN0KG9uU3VibWl0KS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7Zm9vOiBmYWxzZX0pO1xuICAgIH0pO1xuXG4gICAgaXQoXCJzaG91bGQgYWxsb3cgZHluYW1pYyBjaGFuZ2VzIHRvIGZhbHNlXCIsIGZ1bmN0aW9uKCkge1xuICAgICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdEZvcm0sIHt2YWx1ZTogIHRydWUgfSkpO1xuICAgICAgZm9ybS5zZXRQcm9wcyh7dmFsdWU6IGZhbHNlfSk7XG4gICAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICAgIGV4cGVjdChvblN1Ym1pdCkudG9IYXZlQmVlbkNhbGxlZFdpdGgoe2ZvbzogZmFsc2V9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjR1ZqY3k5R2IzSnRjM2t0YzNCbFl5NXFjeUlzSW5OdmRYSmpaWE1pT2xzaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y0dWamN5OUdiM0p0YzNrdGMzQmxZeTVxY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFTeEpRVUZKTEUxQlFVMHNSMEZCUnl4UFFVRlBMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNRMEZCUXpzN1FVRkZla01zVVVGQlVTeERRVUZETEZGQlFWRXNSVUZCUlN4WlFVRlpPenRCUVVVdlFpeEZRVUZGTEZGQlFWRXNRMEZCUXl4dFFrRkJiVUlzUlVGQlJTeFpRVUZaT3p0SlFVVjRReXhGUVVGRkxFTkJRVU1zZDBOQlFYZERMRVZCUVVVc1dVRkJXVHROUVVOMlJDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTEVWQlFVVXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFbEJRV1VzUTBGQlFTeERRVUZETEVOQlFVTTdUVUZEZEVVc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTTdRVUZEZUVRc1MwRkJTeXhEUVVGRExFTkJRVU03TzBsQlJVZ3NSVUZCUlN4RFFVRkRMRzFEUVVGdFF5eEZRVUZGTEZsQlFWazdUVUZEYkVRc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRaXhGUVVGRkxHOUNRVUZETEZkQlFWY3NSVUZCUVN4RFFVRkJMRU5CUVVNc1UwRkJRU3hGUVVGVExFTkJRVU1zUzBGQlRTeERRVUZqTEVOQlFVRXNRMEZCUXl4RFFVRkRPMDFCUTNSR0xFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRU5CUVVNc1UwRkJVeXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMEZCUTNwRUxFdEJRVXNzUTBGQlF5eERRVUZET3p0SlFVVklMRVZCUVVVc1EwRkJReXd3UTBGQk1FTXNSVUZCUlN4VlFVRlZMRWxCUVVrc1JVRkJSVHROUVVNM1JDeEpRVUZKTEN0Q1FVRXJRaXg1UWtGQlFUdFJRVU5xUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETzFGQlEzUkNMRmRCUVZjc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdFZRVU0xUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1UwRkRia003VVVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0VlFVTnNRaXhQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkRMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZkQlFWa3NRMEZCUlN4RFFVRkJPMU5CUTNCRk8wRkJRMVFzVDBGQlR5eERRVUZETEVOQlFVTTdPMDFCUlVnc1NVRkJTU3hMUVVGTExFZEJRVWNzU1VGQlNTeERRVUZETzAxQlEycENMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMUZCUTJoRExGRkJRVkVzUlVGQlJTeFZRVUZWTEZOQlFWTXNSVUZCUlR0VlFVTTNRaXhMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETzFOQlEyNUNPMUZCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VlVGRGJFSTdXVUZEUlN4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlJ5eERRVUZCTEVWQlFVRTdZMEZEZEVNc2IwSkJRVUVzU1VGQlJ5eEZRVUZCTEVsQlFVTXNSVUZCUVN4TlFVRlRMRU5CUVVFc1JVRkJRVHRqUVVOYUxFTkJRVU1zU1VGQlNTeEZRVUZCTEVOQlFVVTdZMEZEVUN4RFFVRkRMRk5CUVZNc1JVRkJRU3hEUVVGRk8yTkJRMklzYjBKQlFVTXNVMEZCVXl4RlFVRkJMRU5CUVVFc1EwRkJReXhKUVVGQkxFVkJRVWtzUTBGQlF5eE5RVUZCTEVWQlFVMHNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hEUVVGRExFMUJRVThzUTBGQlFTeERRVUZITEVOQlFVRTdXVUZETjBJc1EwRkJRVHRaUVVOa08xTkJRMGc3UVVGRFZDeFBRVUZQTEVOQlFVTXNRMEZCUXpzN1RVRkZTQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRWxCUVVVc1EwRkJRU3hEUVVGRExFTkJRVU03VFVGRGNrUXNWVUZCVlN4RFFVRkRMRmxCUVZrN1VVRkRja0lzVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExGVkJRVlVzUlVGQlJTeERRVUZETEVOQlFVTTdVVUZETjBNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEzSkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8wOUJRMUlzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTmlMRXRCUVVzc1EwRkJReXhEUVVGRE96dEJRVVZRTEVsQlFVa3NSVUZCUlN4RFFVRkRMR2xFUVVGcFJDeEZRVUZGTEZWQlFWVXNTVUZCU1N4RlFVRkZPenROUVVWd1JTeEpRVUZKTEUxQlFVMHNSMEZCUnl4RlFVRkZMRU5CUVVNN1RVRkRhRUlzU1VGQlNTeFhRVUZYTEVkQlFVY3NTVUZCU1N4RFFVRkRPMDFCUTNaQ0xFbEJRVWtzUzBGQlN5eEhRVUZITEVsQlFVa3NRMEZCUXp0TlFVTnFRaXhKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHRSUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8xRkJRM1JDTEUxQlFVMHNSVUZCUlN4WlFVRlpPMVZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNTMEZCU1N4RlFVRkJMRWxCUVVVc1EwRkJRVHRUUVVOa08wOUJRMFlzUTBGQlF5eERRVUZETzAxQlEwZ3NTVUZCU1N3NFFrRkJPRUlzZDBKQlFVRTdVVUZEYUVNc2EwSkJRV3RDTEVWQlFVVXNXVUZCV1R0VlFVTTVRaXhYUVVGWExFZEJRVWNzU1VGQlNTeERRVUZETEZkQlFWY3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03VTBGRE0wTTdVVUZEUkN4UlFVRlJMRVZCUVVVc1ZVRkJWU3hUUVVGVExFVkJRVVU3VlVGRE4wSXNTMEZCU3l4SFFVRkhMRk5CUVZNc1EwRkJRenRUUVVOdVFqdFJRVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMVZCUTJ4Q08xbEJRMFVzYjBKQlFVTXNWMEZCVnl4RlFVRkJMRU5CUVVFc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVlN4RFFVRkJMRVZCUVVFN1kwRkRia01zVFVGQlR6dFpRVU5KTEVOQlFVRXNSVUZCUlR0VFFVTnVRanRQUVVOR0xFTkJRVU1zUTBGQlF6dE5RVU5JTEVsQlFVa3NTVUZCU1N4SFFVRkhMRk5CUVZNc1EwRkJReXhyUWtGQmEwSTdVVUZEY2tNc2IwSkJRVU1zVVVGQlVTeEZRVUZCTEVsQlFVVXNRMEZCUVR0QlFVTnVRaXhQUVVGUExFTkJRVU03UVVGRFVqczdRVUZGUVN4TlFVRk5MRlZCUVZVc1EwRkJReXhaUVVGWk96dFJRVVZ5UWl4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF6dFZRVU53UWl4SlFVRkpMRVZCUVVVc1RVRkJUVHRCUVVOMFFpeFRRVUZUTEVOQlFVTXNRMEZCUXl4RFFVRkRPenRCUVVWYUxGRkJRVkVzVjBGQlZ5eERRVUZETEZsQlFWazdRVUZEYUVNN08xVkJSVlVzVlVGQlZTeERRVUZETEZsQlFWazdXVUZEY2tJc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExFTkJRVU03V1VGRE4wTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eFhRVUZYTEVWQlFVVXNRMEZCUXp0WlFVTnFReXhKUVVGSkxFVkJRVVVzUTBGQlF6dEJRVU51UWl4WFFVRlhMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03TzBGQlJXaENMRk5CUVZNc1EwRkJReXhEUVVGRE96dEJRVVZZTEU5QlFVOHNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJRenM3UVVGRllpeExRVUZMTEVOQlFVTXNRMEZCUXpzN1FVRkZVQ3hKUVVGSkxFVkJRVVVzUTBGQlF5eG5SVUZCWjBVc1JVRkJSU3hWUVVGVkxFbEJRVWtzUlVGQlJUczdUVUZGYmtZc1NVRkJTU3hOUVVGTkxFZEJRVWNzUlVGQlJTeERRVUZETzAxQlEyaENMRWxCUVVrc1YwRkJWeXhIUVVGSExFbEJRVWtzUTBGQlF6dE5RVU4yUWl4SlFVRkpMRXRCUVVzc1IwRkJSeXhKUVVGSkxFTkJRVU03VFVGRGFrSXNTVUZCU1N3clFrRkJLMElzZVVKQlFVRTdVVUZEYWtNc1RVRkJUU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXp0UlFVTjBRaXhYUVVGWExFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdWVUZETlVJc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8xTkJRMjVETzFGQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1ZVRkRiRUlzVDBGQlR5eHZRa0ZCUVN4UFFVRk5MRVZCUVVFc1EwRkJRU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlJMRVZCUVVVc1JVRkJReXhEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4WFFVRlpMRU5CUVVVc1EwRkJRVHRUUVVOd1JUdFBRVU5HTEVOQlFVTXNRMEZCUXp0TlFVTklMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMUZCUTJoRExHdENRVUZyUWl4RlFVRkZMRmxCUVZrN1ZVRkRPVUlzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXl4WFFVRlhMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzFOQlF6TkRPMUZCUTBRc1VVRkJVU3hGUVVGRkxGVkJRVlVzVTBGQlV5eEZRVUZGTzFWQlF6ZENMRXRCUVVzc1IwRkJSeXhUUVVGVExFTkJRVU03VTBGRGJrSTdVVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRWUVVOc1FqdFpRVU5GTEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZVc1EwRkJRU3hGUVVGQk8yTkJRMjVETEUxQlFVODdXVUZEU1N4RFFVRkJMRVZCUVVVN1UwRkRia0k3VDBGRFJpeERRVUZETEVOQlFVTTdUVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMUZCUTNKRExHOUNRVUZETEZGQlFWRXNSVUZCUVN4SlFVRkZMRU5CUVVFN1FVRkRia0lzVDBGQlR5eERRVUZETzBGQlExSTdPMEZCUlVFc1RVRkJUU3hWUVVGVkxFTkJRVU1zV1VGQldUczdVVUZGY2tJc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTTdWVUZEY0VJc1NVRkJTU3hGUVVGRkxFMUJRVTA3UVVGRGRFSXNVMEZCVXl4RFFVRkRMRU5CUVVNc1EwRkJRenM3UVVGRldpeFJRVUZSTEZkQlFWY3NRMEZCUXl4WlFVRlpPMEZCUTJoRE96dFZRVVZWTEZWQlFWVXNRMEZCUXl4WlFVRlpPMWxCUTNKQ0xGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRk5CUVZNc1EwRkJReXdyUWtGQkswSXNRMEZCUXl4SlFVRkpMRVZCUVVVc1QwRkJUeXhEUVVGRExFVkJRVVVzUTBGQlF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TFFVRkxMRVZCUVVVc1MwRkJTeXhEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlF6bEhMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhEUVVGRE8xbEJRemRETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMWxCUXk5Q0xFbEJRVWtzUlVGQlJTeERRVUZETzBGQlEyNUNMRmRCUVZjc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF6czdRVUZGYUVJc1UwRkJVeXhEUVVGRExFTkJRVU03TzBGQlJWZ3NUMEZCVHl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE96dEJRVVZhTEV0QlFVc3NRMEZCUXl4RFFVRkRPenRCUVVWUUxFbEJRVWtzUlVGQlJTeERRVUZETEcxRlFVRnRSU3hGUVVGRkxGVkJRVlVzU1VGQlNTeEZRVUZGT3p0TlFVVjBSaXhKUVVGSkxGZEJRVmNzUjBGQlJ5eEpRVUZKTEVOQlFVTTdUVUZEZGtJc1NVRkJTU3hMUVVGTExFZEJRVWNzU1VGQlNTeERRVUZETzAxQlEycENMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMUZCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1VVRkRkRUlzVjBGQlZ5eEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMVZCUXpWQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFRRVU51UXp0UlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xVkJRMnhDTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGRkxFVkJRVU1zUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4SlFVRkpMRU5CUVVNc1YwRkJXU3hEUVVGRkxFTkJRVUU3VTBGRGNFVTdRVUZEVkN4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEpRVUZKTEV0QlFVc3NRMEZCUXp0TlFVTldMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMUZCUTJoRExHdENRVUZyUWl4RlFVRkZMRmxCUVZrN1ZVRkRPVUlzVjBGQlZ5eEhRVUZITEVsQlFVa3NRMEZCUXl4WFFVRlhMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzFOQlF6TkRPMUZCUTBRc1VVRkJVU3hGUVVGRkxGVkJRVlVzVTBGQlV5eEZRVUZGTzFWQlF6ZENMRXRCUVVzc1IwRkJSeXhUUVVGVExFTkJRVU03VTBGRGJrSTdVVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRCUVVNMVFpeFZRVUZWTEV0QlFVc3NSMEZCUnl4dlFrRkJReXhUUVVGVExFVkJRVUVzUTBGQlFTeERRVUZETEVsQlFVRXNSVUZCU1N4RFFVRkRMRTFCUVVFc1JVRkJUU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZGTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVVVzUTBGQlFTeERRVUZITEVOQlFVRXNRMEZCUXpzN1ZVRkZOMFE3V1VGRFJTeHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlZMRU5CUVVFc1JVRkJRVHRqUVVOdVF5eExRVUZOTzFsQlEwc3NRMEZCUVN4RlFVRkZPMU5CUTI1Q08wOUJRMFlzUTBGQlF5eERRVUZETzBGQlExUXNUVUZCVFN4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc2IwSkJRVU1zVVVGQlVTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhMUVVGTExFTkJRVVVzUTBGQlFTeERRVUZETEVOQlFVTTdRVUZEZGtVN08wMUJSVTBzVlVGQlZTeERRVUZETEZsQlFWazdRVUZETjBJc1VVRkJVU3hKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU03TzBGQlJYUkRMRkZCUVZFc1YwRkJWeXhEUVVGRExGbEJRVms3TzFWQlJYUkNMRlZCUVZVc1EwRkJReXhaUVVGWk8xbEJRM0pDTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4RFFVRkRPMWxCUXpkRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzFsQlF5OUNMRWxCUVVrc1JVRkJSU3hEUVVGRE8wRkJRMjVDTEZkQlFWY3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenM3UVVGRmFFSXNVMEZCVXl4RFFVRkRMRU5CUVVNN08wRkJSVmdzVDBGQlR5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRPenRCUVVWaUxFdEJRVXNzUTBGQlF5eERRVUZET3p0SlFVVklMRkZCUVZFc1EwRkJReXhoUVVGaExFVkJRVVVzVjBGQlZ6dE5RVU5xUXl4SlFVRkpMRlZCUVZVc1JVRkJSU3hSUVVGUkxFVkJRVVVzWlVGQlpTeERRVUZETzBGQlEyaEVMRTFCUVUwc1NVRkJTU3hQUVVGUExFTkJRVU03TzAxQlJWb3NTVUZCU1N3clFrRkJLMElzZVVKQlFVRTdVVUZEYWtNc1RVRkJUU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXp0UlFVTjBRaXhYUVVGWExFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdWVUZETlVJc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8xTkJRMjVETzFGQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1ZVRkRiRUlzVDBGQlR5eHZRa0ZCUVN4UFFVRk5MRVZCUVVFc1EwRkJRU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZGTEVOQlFVTXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGQkxFTkJRVVVzUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4RFFVRkRMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVVVzUTBGQlFTeERRVUZITEVOQlFVRTdVMEZEZWtVN1FVRkRWQ3hQUVVGUExFTkJRVU1zUTBGQlF6czdUVUZGU0N4SlFVRkpMRGhDUVVFNFFpeDNRa0ZCUVR0UlFVTm9ReXhsUVVGbExFVkJRVVVzVjBGQlZ6dFZRVU14UWl4UFFVRlBPMWxCUTB3c1RVRkJUU3hGUVVGRkxFVkJRVVU3VjBGRFdDeERRVUZETzFOQlEwZzdVVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRWUVVOc1FpeEpRVUZKTEZkQlFWY3NSMEZCUnl4RlFVRkZMRU5CUVVNN1ZVRkRja0lzU1VGQlNTeE5RVUZOTEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03VlVGREwwSXNTMEZCU3l4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eEhRVUZITEUxQlFVMHNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhGUVVGRkxFVkJRVVU3V1VGRGNFTXNTVUZCU1N4TFFVRkxMRWRCUVVjc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETzFsQlEzUkNMRmRCUVZjc1EwRkJReXhKUVVGSkxFTkJRVU1zYjBKQlFVTXNVMEZCVXl4RlFVRkJMR2RDUVVGQkxFZEJRVUVzUTBGQlJTeEpRVUZKTEV0QlFVc3NRMEZCUXl4RlFVRkRMRU5CUVVNc1EwRkJRU3hIUVVGQkxFVkJRVWNzUTBGQlJTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVVc1EwRkJRU3hEUVVGQkxFTkJRVWNzUTBGQlFTeERRVUZETEVOQlFVTTdWMEZEYWtVN1ZVRkRSQ3hKUVVGSkxFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTTdWVUZEYWtJc1QwRkJUeXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVR0WlFVTnFRaXhSUVVGQkxFVkJRVkVzU1VGQlN5eERRVUZETEZOQlFWTXNTVUZCU1N4RlFVRkZMRVZCUVVVc1VVRkJVU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUVN4RFFVRkZPMWxCUTJ4RUxFOUJRVUVzUlVGQlR5eExRVUZOTEVOQlFVTXNWMEZCVnl4RlFVRkZMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU1zUlVGQlJTeEZRVUZCTEVOQlFVVTdXVUZET1VNc1UwRkJRU3hGUVVGVExFZEJRVWtzUTBGQlF5eFhRVUZYTEVWQlFVVXNUMEZCVHl4SFFVRkhMRXRCUVVzc1EwRkJReXhGUVVGRkxFTkJRVVVzUTBGQlJTeERRVUZCTEVWQlFVRTdXVUZEYUVRc1EwRkJReXhaUVVGaE8xVkJRMGdzUTBGQlFTeERRVUZETzFOQlEyaENPMEZCUTFRc1QwRkJUeXhEUVVGRExFTkJRVU03TzAxQlJVZ3NWVUZCVlN4RFFVRkRMRmRCUVZjN1VVRkRjRUlzVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXp0UlFVTm1MRlZCUVZVc1IwRkJSeXhQUVVGUExFTkJRVU1zVTBGQlV5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPMUZCUXpkRExFMUJRVTBzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhaUVVGWkxFVkJRVVVzVlVGQlZTeERRVUZETEVOQlFVTTdVVUZEYmtRc1pVRkJaU3hIUVVGSExFOUJRVThzUTBGQlF5eFRRVUZUTEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNN1VVRkRiRVFzVFVGQlRTeERRVUZETEdsQ1FVRnBRaXhEUVVGRExHbENRVUZwUWl4RlFVRkZMR1ZCUVdVc1EwRkJReXhEUVVGRE8xRkJRemRFTEZGQlFWRXNSMEZCUnl4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETzBGQlEycEVMRTlCUVU4c1EwRkJReXhEUVVGRE96dE5RVVZJTEVWQlFVVXNRMEZCUXl4dFEwRkJiVU1zUlVGQlJTeFhRVUZYTzFGQlEycEVMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJc1EwRkJReXh2UWtGQlF5eFJRVUZSTEVWQlFVRXNRMEZCUVN4RFFVRkRMRTFCUVVFc1JVRkJUU3hEUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NSVUZCUlN4TFFVRkxMRVZCUVVVc1YwRkJWeXhGUVVGRkxGbEJRVmtzUlVGQlJTeExRVUZMTEVWQlFVVXNTMEZCU3l4RFFVRkRMRVZCUVVjc1EwRkJSU3hEUVVGQkxFTkJRVU1zUTBGQlF6dFJRVU42U0N4SlFVRkpMRXRCUVVzc1IwRkJSeXhUUVVGVExFTkJRVU1zSzBKQlFTdENMRU5CUVVNc1NVRkJTU3hGUVVGRkxFOUJRVThzUTBGQlF5eERRVUZETzFGQlEzSkZMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4VlFVRlZMRVZCUVVVc1JVRkJSU3hEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEV0QlFVc3NSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VVVGRGVFVXNUVUZCVFN4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8xRkJReTlETEUxQlFVMHNRMEZCUXl4bFFVRmxMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zWjBKQlFXZENMRVZCUVVVc1EwRkJRenRCUVVOMlJDeFBRVUZQTEVOQlFVTXNRMEZCUXpzN1RVRkZTQ3hGUVVGRkxFTkJRVU1zTWtOQlFUSkRMRVZCUVVVc1YwRkJWenRSUVVONlJDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFTkJRVUVzUTBGQlF5eE5RVUZCTEVWQlFVMHNRMEZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhKUVVGSkxFVkJRVVVzUzBGQlN5eEZRVUZGTEZkQlFWY3NSVUZCUlN4WlFVRlpMRVZCUVVVc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eEZRVUZITEVOQlFVVXNRMEZCUVN4RFFVRkRMRU5CUVVNN1VVRkRla2dzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeEZRVUZGTEV0QlFVc3NSVUZCUlN4WFFVRlhMRVZCUVVVc2FVSkJRV2xDTEVWQlFVVXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzFGQlEzaEdMRWxCUVVrc1MwRkJTeXhIUVVGSExGTkJRVk1zUTBGQlF5d3JRa0ZCSzBJc1EwRkJReXhKUVVGSkxFVkJRVVVzVDBGQlR5eERRVUZETEVOQlFVTTdVVUZEY2tVc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMRlZCUVZVc1JVRkJSU3hGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU40UlN4TlFVRk5MRU5CUVVNc1pVRkJaU3hEUVVGRExFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03UVVGRE5VUXNUMEZCVHl4RFFVRkRMRU5CUVVNN08wMUJSVWdzUlVGQlJTeERRVUZETEcxRlFVRnRSU3hGUVVGRkxGTkJRVk1zU1VGQlNTeEZRVUZGTzFGQlEzSkdMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJc1EwRkJReXh2UWtGQlF5eFJRVUZSTEVWQlFVRXNRMEZCUVN4RFFVRkRMRTFCUVVFc1JVRkJUU3hEUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NSVUZCUlN4TFFVRkxMRVZCUVVVc1YwRkJWeXhGUVVGRkxGTkJRVk1zUlVGQlJTeExRVUZMTEVWQlFVVXNZVUZCWVN4RFFVRkRMRVZCUVVjc1EwRkJSU3hEUVVGQkxFTkJRVU1zUTBGQlF6dFJRVU01U0N4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMUZCUXpsQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNRMEZCUXl4TlFVRk5MRVZCUVVVN1ZVRkRja0lzUTBGQlF5eEpRVUZKTEVWQlFVVXNTMEZCU3l4RlFVRkZMRmRCUVZjc1JVRkJSU3hUUVVGVExFVkJRVVVzUzBGQlN5eEZRVUZGTEdGQlFXRXNRMEZCUXp0VlFVTXpSQ3hEUVVGRExFbEJRVWtzUlVGQlJTeExRVUZMTEVWQlFVVXNWMEZCVnl4RlFVRkZMRk5CUVZNc1JVRkJSU3hMUVVGTExFVkJRVVVzVTBGQlV5eERRVUZETzFOQlEzaEVMRU5CUVVNc1JVRkJSU3hYUVVGWE8xVkJRMklzVlVGQlZTeERRVUZETEZkQlFWYzdXVUZEY0VJc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRaUVVNdlFpeEpRVUZKTEVWQlFVVXNRMEZCUXp0WFFVTlNMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU03VTBGRFVDeERRVUZETEVOQlFVTTdRVUZEV0N4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEZRVUZGTEVOQlFVTXNkVVJCUVhWRUxFVkJRVVVzVTBGQlV5eEpRVUZKTEVWQlFVVTdVVUZEZWtVc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRaXhEUVVGRExHOUNRVUZETEZGQlFWRXNSVUZCUVN4RFFVRkJMRU5CUVVNc1RVRkJRU3hGUVVGTkxFTkJRVVVzUTBGQlF6dFZRVU42UkN4RFFVRkRMRWxCUVVrc1JVRkJSU3hMUVVGTExFVkJRVVVzVjBGQlZ5eEZRVUZGTEZOQlFWTXNSVUZCUlN4TFFVRkxMRVZCUVVVc1lVRkJZU3hEUVVGRE8xVkJRek5FTEVOQlFVTXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSU3hYUVVGWExFVkJRVVVzVTBGQlV5eEZRVUZGTEV0QlFVc3NSVUZCUlN4VFFVRlRMRU5CUVVNN1ZVRkRkRVFzUTBGQlFTeERRVUZITEVOQlFVRXNRMEZCUXl4RFFVRkRPMUZCUTFJc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEU5QlFVOHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRSUVVNdlFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1RVRkJUU3hGUVVGRkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVWQlFVVXNTMEZCU3l4RlFVRkZMRmRCUVZjc1JVRkJSU3hUUVVGVExFVkJRVVVzUzBGQlN5eEZRVUZGTEdGQlFXRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hYUVVGWE8xVkJRMmhITEZWQlFWVXNRMEZCUXl4WFFVRlhPMWxCUTNCQ0xFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03V1VGRE9VSXNTVUZCU1N4RlFVRkZMRU5CUVVNN1YwRkRVaXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzFOQlExQXNRMEZCUXl4RFFVRkRPMEZCUTFnc1QwRkJUeXhEUVVGRExFTkJRVU03TzAxQlJVZ3NSVUZCUlN4RFFVRkRMREpDUVVFeVFpeEZRVUZGTEZkQlFWYzdVVUZEZWtNc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRaXhEUVVGRExHOUNRVUZETEZGQlFWRXNSVUZCUVN4RFFVRkJMRU5CUVVNc1RVRkJRU3hGUVVGTkxFTkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSU3hYUVVGWExFVkJRVVVzTkVKQlFUUkNMRVZCUVVVc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eEZRVUZITEVOQlFVVXNRMEZCUVN4RFFVRkRMRU5CUVVNN1VVRkRla2tzU1VGQlNTeExRVUZMTEVkQlFVY3NVMEZCVXl4RFFVRkRMQ3RDUVVFclFpeERRVUZETEVsQlFVa3NSVUZCUlN4UFFVRlBMRU5CUVVNc1EwRkJRenRSUVVOeVJTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zVlVGQlZTeEZRVUZGTEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhMUVVGTExFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMUZCUTNoRkxFMUJRVTBzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0UlFVTXZReXhOUVVGTkxFTkJRVU1zWlVGQlpTeERRVUZETEVOQlFVTXNiMEpCUVc5Q0xFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdUMEZEY2tRc1EwRkJReXhEUVVGRE8wRkJRMVFzUzBGQlN5eERRVUZETEVOQlFVTTdPMGxCUlVnc1JVRkJSU3hEUVVGRExHdEVRVUZyUkN4RlFVRkZMRmxCUVZrN1RVRkRha1VzU1VGQlNTeFZRVUZWTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF6dE5RVU12UXl4SlFVRkpMRGhDUVVFNFFpeDNRa0ZCUVR0UlFVTm9ReXhSUVVGUkxFVkJRVVVzV1VGQldUdFZRVU53UWl4VlFVRlZMRVZCUVVVc1EwRkJRenRUUVVOa08xRkJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdWVUZEYkVJc1QwRkJUeXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZWTEVOQlFXTXNRMEZCUVN4RFFVRkRPMU5CUXpkRU8wOUJRMFlzUTBGQlF5eERRVUZETzAxQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWl4RFFVRkRMRzlDUVVGRExGRkJRVkVzUlVGQlFTeEpRVUZGTEVOQlFVRXNRMEZCUXl4RFFVRkRPMDFCUTNKRUxFMUJRVTBzUTBGQlF5eFZRVUZWTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1owSkJRV2RDTEVWQlFVVXNRMEZCUXp0QlFVTm9SQ3hMUVVGTExFTkJRVU1zUTBGQlF6czdTVUZGU0N4RlFVRkZMRU5CUVVNc2MwUkJRWE5FTEVWQlFVVXNXVUZCV1R0TlFVTnlSU3hKUVVGSkxGVkJRVlVzUjBGQlJ5eFBRVUZQTEVOQlFVTXNVMEZCVXl4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRE8wMUJReTlETEVsQlFVa3NOa0pCUVRaQ0xIVkNRVUZCTzFGQlF5OUNMRTFCUVUwc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTTdVVUZEZEVJc1VVRkJVU3hGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzFWQlEzcENMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRUUVVOdVF6dFJRVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMVZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVXl4RFFVRkZMRU5CUVVFN1UwRkRha1U3VDBGRFJpeERRVUZETEVOQlFVTTdUVUZEU0N4SlFVRkpMRGhDUVVFNFFpeDNRa0ZCUVR0UlFVTm9ReXhSUVVGUkxFVkJRVVVzV1VGQldUdFZRVU53UWl4VlFVRlZMRVZCUVVVc1EwRkJRenRUUVVOa08xRkJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdWVUZEYkVJN1dVRkRSU3h2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZWTEVOQlFVRXNSVUZCUVR0alFVTndReXh2UWtGQlF5eFBRVUZQTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlJTeERRVUZCTzFsQlExUXNRMEZCUVR0WlFVTmtPMU5CUTBnN1QwRkRSaXhEUVVGRExFTkJRVU03VFVGRFNDeEpRVUZKTEVsQlFVa3NSMEZCUnl4VFFVRlRMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNiMEpCUVVNc1VVRkJVU3hGUVVGQkxFbEJRVVVzUTBGQlFTeERRVUZETEVOQlFVTTdUVUZEY2tRc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNVMEZCVXl4RFFVRkRMQ3RDUVVFclFpeERRVUZETEVsQlFVa3NSVUZCUlN4UFFVRlBMRU5CUVVNc1JVRkJSU3hEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEV0QlFVc3NSVUZCUlN4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03VFVGRE9VY3NUVUZCVFN4RFFVRkRMRlZCUVZVc1EwRkJReXhEUVVGRExHZENRVUZuUWl4RlFVRkZMRU5CUVVNN1FVRkROVU1zUzBGQlN5eERRVUZETEVOQlFVTTdPMGxCUlVnc1JVRkJSU3hEUVVGRExIbEVRVUY1UkN4RlFVRkZMRlZCUVZVc1NVRkJTU3hGUVVGRk8wMUJRelZGTEVsQlFVa3NWVUZCVlN4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTTdUVUZETDBNc1NVRkJTU3hOUVVGTkxFZEJRVWNzUlVGQlJTeERRVUZETzAxQlEyaENMRWxCUVVrc1YwRkJWeXhIUVVGSExFbEJRVWtzUTBGQlF6dE5RVU4yUWl4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0UlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMUZCUTNSQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0VlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VTBGRGJrTTdVVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRWUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8xTkJRM0JGTzA5QlEwWXNRMEZCUXl4RFFVRkRPMDFCUTBnc1NVRkJTU3c0UWtGQk9FSXNkMEpCUVVFN1VVRkRhRU1zYTBKQlFXdENMRVZCUVVVc1dVRkJXVHRWUVVNNVFpeFhRVUZYTEVkQlFVY3NTVUZCU1N4RFFVRkRMRmRCUVZjc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdVMEZETTBNN1VVRkRSQ3hSUVVGUkxFVkJRVVVzV1VGQldUdFZRVU53UWl4VlFVRlZMRVZCUVVVc1EwRkJRenRUUVVOa08xRkJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdWVUZEYkVJN1dVRkRSU3h2UWtGQlF5eFhRVUZYTEVWQlFVRXNRMEZCUVN4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZWTEVOQlFVRXNSVUZCUVR0alFVTnVReXhOUVVGUE8xbEJRMGtzUTBGQlFTeEZRVUZGTzFOQlEyNUNPMDlCUTBZc1EwRkJReXhEUVVGRE8wMUJRMGdzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdFJRVU55UXl4dlFrRkJReXhSUVVGUkxFVkJRVUVzU1VGQlJTeERRVUZCTzBGQlEyNUNMRTlCUVU4c1EwRkJRenRCUVVOU096dE5RVVZOTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRE8xRkJRM0JDTEVsQlFVa3NSVUZCUlN4TlFVRk5PMEZCUTNCQ0xFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUlZZc1RVRkJUU3hYUVVGWExFTkJRVU1zV1VGQldUdEJRVU01UWpzN1VVRkZVU3hWUVVGVkxFTkJRVU1zV1VGQldUdFZRVU55UWl4TlFVRk5MRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU1zWjBKQlFXZENMRVZCUVVVc1EwRkJRenRWUVVOMFF5eEpRVUZKTEVWQlFVVXNRMEZCUXp0QlFVTnFRaXhUUVVGVExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUldRc1QwRkJUeXhEUVVGRExFTkJRVU03TzBGQlJWUXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wRkJSVkFzUjBGQlJ5eERRVUZETEVOQlFVTTdPMEZCUlV3c1JVRkJSU3hSUVVGUkxFTkJRVU1zWlVGQlpTeEZRVUZGTEZsQlFWazdPMEZCUlhoRExFbEJRVWtzUlVGQlJTeERRVUZETEhkRVFVRjNSQ3hGUVVGRkxGVkJRVlVzU1VGQlNTeEZRVUZGT3p0TlFVVXpSU3hKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHRSUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8xRkJRM1JDTEUxQlFVMHNSVUZCUlN4WlFVRlpPMVZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkhMRU5CUVVVc1EwRkJRVHRUUVVONFF6dFBRVU5HTEVOQlFVTXNRMEZCUXp0TlFVTklMRWxCUVVrc09FSkJRVGhDTEhkQ1FVRkJPMUZCUTJoRExHVkJRV1VzUlVGQlJTeFpRVUZaTzFWQlF6TkNMRTlCUVU4c1EwRkJReXhSUVVGUkxFVkJRVVVzU1VGQlNTeERRVUZETEVOQlFVTTdVMEZEZWtJN1VVRkRSQ3hWUVVGVkxFVkJRVVVzV1VGQldUdFZRVU4wUWl4SlFVRkpMRU5CUVVNc1VVRkJVU3hEUVVGRE8xbEJRMW9zVVVGQlVTeEZRVUZGTEV0QlFVczdWMEZEYUVJc1EwRkJReXhEUVVGRE8xTkJRMG83VVVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0VlFVTnNRanRaUVVORkxHOUNRVUZETEZkQlFWY3NSVUZCUVN4RFFVRkJMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUXl4RFFVRkRMRkZCUVVFc1JVRkJVU3hEUVVGRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVlN4RFFVRkJMRVZCUVVFN1kwRkRia1VzYjBKQlFVTXNVMEZCVXl4RlFVRkJMRU5CUVVFc1EwRkJReXhKUVVGQkxFVkJRVWtzUTBGQlF5eExRVUZMTEVOQlFVVXNRMEZCUVR0WlFVTllMRU5CUVVFc1JVRkJSVHRUUVVOdVFqdFBRVU5HTEVOQlFVTXNRMEZCUXp0TlFVTklMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1VVRkRja01zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRWxCUVVVc1EwRkJRVHRCUVVOdVFpeFBRVUZQTEVOQlFVTTdPMDFCUlVZc1NVRkJTU3hMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETERaQ1FVRTJRaXhEUVVGRExFbEJRVWtzUlVGQlJTeFRRVUZUTEVOQlFVTXNRMEZCUXp0TlFVTnlSU3hOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEdOQlFXTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzAxQlF6RkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF6dE5RVU5zUWl4VlFVRlZMRU5CUVVNc1dVRkJXVHRSUVVOeVFpeE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRMR05CUVdNc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMUZCUXpORExFbEJRVWtzUlVGQlJTeERRVUZETzBGQlEyWXNUMEZCVHl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE96dEJRVVZhTEV0QlFVc3NRMEZCUXl4RFFVRkRPenRCUVVWUUxFbEJRVWtzUlVGQlJTeERRVUZETEc5R1FVRnZSaXhGUVVGRkxGVkJRVlVzU1VGQlNTeEZRVUZGT3p0TlFVVjJSeXhKUVVGSkxDdENRVUVyUWl4NVFrRkJRVHRSUVVOcVF5eE5RVUZOTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRE8xRkJRM1JDTEUxQlFVMHNSVUZCUlN4WlFVRlpPMVZCUTJ4Q0xFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkhMRU5CUVVVc1EwRkJRU3hEUVVGRE8xTkJRM3BETzA5QlEwWXNRMEZCUXl4RFFVRkRPMDFCUTBnc1NVRkJTU3c0UWtGQk9FSXNkMEpCUVVFN1VVRkRhRU1zWlVGQlpTeEZRVUZGTEZsQlFWazdWVUZETTBJc1QwRkJUenRaUVVOTUxHZENRVUZuUWl4RlFVRkZPMk5CUTJoQ0xFZEJRVWNzUlVGQlJTeExRVUZMTzJGQlExZzdWMEZEUml4RFFVRkRPMU5CUTBnN1VVRkRSQ3hSUVVGUkxFVkJRVVVzVlVGQlZTeE5RVUZOTEVWQlFVVTdWVUZETVVJc1NVRkJTU3hOUVVGTkxFTkJRVU1zUjBGQlJ5eEZRVUZGTzFsQlEyUXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJRenRqUVVOYUxHZENRVUZuUWl4RlFVRkZMRVZCUVVVN1lVRkRja0lzUTBGQlF5eERRVUZETzFkQlEwb3NUVUZCVFR0WlFVTk1MRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU03WTBGRFdpeG5Ra0ZCWjBJc1JVRkJSU3hEUVVGRExFZEJRVWNzUlVGQlJTeExRVUZMTEVOQlFVTTdZVUZETDBJc1EwRkJReXhEUVVGRE8xZEJRMG83VTBGRFJqdFJRVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMVZCUTJ4Q08xbEJRMFVzYjBKQlFVTXNWMEZCVnl4RlFVRkJMRU5CUVVFc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkRMRU5CUVVNc1owSkJRVUVzUlVGQlowSXNRMEZCUlN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExHZENRVUZyUWl4RFFVRkJMRVZCUVVFN1kwRkRia1lzYjBKQlFVTXNVMEZCVXl4RlFVRkJMRU5CUVVFc1EwRkJReXhKUVVGQkxFVkJRVWtzUTBGQlF5eExRVUZMTEVOQlFVVXNRMEZCUVR0WlFVTllMRU5CUVVFc1JVRkJSVHRUUVVOdVFqdFBRVU5HTEVOQlFVTXNRMEZCUXp0TlFVTklMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1VVRkRja01zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRWxCUVVVc1EwRkJRVHRCUVVOdVFpeFBRVUZQTEVOQlFVTTdRVUZEVWpzN1RVRkZUU3hWUVVGVkxFTkJRVU1zV1VGQldUdFJRVU55UWl4SlFVRkpMRXRCUVVzc1IwRkJSeXhUUVVGVExFTkJRVU1zTmtKQlFUWkNMRU5CUVVNc1NVRkJTU3hGUVVGRkxGTkJRVk1zUTBGQlF5eERRVUZETzFGQlEzSkZMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zWlVGQlpTeEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03UVVGRGNFUXNVVUZCVVN4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRExGVkJRVlVzUTBGQlF5eERRVUZETzBGQlEyNURPenRSUVVWUkxGVkJRVlVzUTBGQlF5eFpRVUZaTzFWQlEzSkNMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zWlVGQlpTeEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU03VlVGRE0wTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1UwRkRVaXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETzBGQlEyUXNUMEZCVHl4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE96dEJRVVZhTEV0QlFVc3NRMEZCUXl4RFFVRkRPMEZCUTFBN08wRkJSVUVzU1VGQlNTeEZRVUZGTEVOQlFVTXNPRVJCUVRoRUxFVkJRVVVzV1VGQldUczdVVUZGTTBVc1NVRkJTU3hSUVVGUkxFZEJRVWNzUzBGQlN5eERRVUZETzFGQlEzSkNMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMVZCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1ZVRkRkRUlzVFVGQlRTeEZRVUZGTEZsQlFWazdXVUZEYkVJc1QwRkJUeXh2UWtGQlFTeFBRVUZOTEVWQlFVRXNRMEZCUVN4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRkxFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVY3NRMEZCUlN4RFFVRkJMRU5CUVVNN1YwRkRla003VTBGRFJpeERRVUZETEVOQlFVTTdVVUZEU0N4SlFVRkpMRGhDUVVFNFFpeDNRa0ZCUVR0VlFVTm9ReXhoUVVGaExFVkJRVVVzV1VGQldUdFpRVU42UWl4UlFVRlJMRWRCUVVjc1NVRkJTU3hEUVVGRE8xZEJRMnBDTzFWQlEwUXNUVUZCVFN4RlFVRkZMRmxCUVZrN1dVRkRiRUk3WTBGRFJTeHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExHRkJRVUVzUlVGQllTeERRVUZGTEVsQlFVa3NRMEZCUXl4aFFVRmxMRU5CUVVFc1JVRkJRVHRuUWtGRE9VTXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhYUVVGQkxFVkJRVmNzUTBGQlF5eFRRVUZCTEVWQlFWTXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhoUVVGaExFTkJRVVVzUTBGQlFUdGpRVU55UkN4RFFVRkJMRVZCUVVVN1YwRkRia0k3VTBGRFJpeERRVUZETEVOQlFVTTdVVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMVZCUTNKRExHOUNRVUZETEZGQlFWRXNSVUZCUVN4SlFVRkZMRU5CUVVFN1FVRkRja0lzVTBGQlV5eERRVUZET3p0UlFVVkdMRWxCUVVrc1VVRkJVU3hIUVVGSExGTkJRVk1zUTBGQlF5dzJRa0ZCTmtJc1EwRkJReXhKUVVGSkxFVkJRVVVzVVVGQlVTeERRVUZETEVOQlFVTTdVVUZEZGtVc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNVVUZCVVN4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExFTkJRVU03UVVGRGVrUXNVVUZCVVN4TlFVRk5MRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPenRCUVVWd1F5eExRVUZMTEVOQlFVTXNRMEZCUXpzN1FVRkZVQ3hKUVVGSkxFVkJRVVVzUTBGQlF5eHRSVUZCYlVVc1JVRkJSU3haUVVGWk96dFJRVVZvUml4SlFVRkpMRkZCUVZFc1IwRkJSeXhMUVVGTExFTkJRVU03VVVGRGNrSXNTVUZCU1N3clFrRkJLMElzZVVKQlFVRTdWVUZEYWtNc1RVRkJUU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXp0VlFVTjBRaXhOUVVGTkxFVkJRVVVzV1VGQldUdFpRVU5zUWl4UFFVRlBMRzlDUVVGQkxFOUJRVTBzUlVGQlFTeERRVUZCTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJ5eERRVUZGTEVOQlFVRXNRMEZCUXp0WFFVTjZRenRUUVVOR0xFTkJRVU1zUTBGQlF6dFJRVU5JTEVsQlFVa3NPRUpCUVRoQ0xIZENRVUZCTzFWQlEyaERMR1ZCUVdVc1JVRkJSU3haUVVGWk8xbEJRek5DTEZGQlFWRXNSMEZCUnl4SlFVRkpMRU5CUVVNN1YwRkRha0k3VlVGRFJDeE5RVUZOTEVWQlFVVXNXVUZCV1R0WlFVTnNRanRqUVVORkxHOUNRVUZETEZkQlFWY3NSVUZCUVN4RFFVRkJMRU5CUVVNc1pVRkJRU3hGUVVGbExFTkJRVVVzU1VGQlNTeERRVUZETEdWQlFXbENMRU5CUVVFc1JVRkJRVHRuUWtGRGJFUXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhYUVVGQkxFVkJRVmNzUTBGQlF5eFRRVUZCTEVWQlFWTXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhUUVVGVExFTkJRVVVzUTBGQlFUdGpRVU5xUkN4RFFVRkJMRVZCUVVVN1YwRkRia0k3VTBGRFJpeERRVUZETEVOQlFVTTdVVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMVZCUTNKRExHOUNRVUZETEZGQlFWRXNSVUZCUVN4SlFVRkZMRU5CUVVFN1FVRkRja0lzVTBGQlV5eERRVUZET3p0UlFVVkdMRWxCUVVrc1VVRkJVU3hIUVVGSExGTkJRVk1zUTBGQlF5dzJRa0ZCTmtJc1EwRkJReXhKUVVGSkxFVkJRVVVzVVVGQlVTeERRVUZETEVOQlFVTTdVVUZEZGtVc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNVVUZCVVN4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExFTkJRVU03UVVGRGVrUXNVVUZCVVN4TlFVRk5MRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPenRCUVVWd1F5eExRVUZMTEVOQlFVTXNRMEZCUXpzN1FVRkZVQ3hIUVVGSExFTkJRVU1zUTBGQlF6czdSVUZGU0N4UlFVRlJMRU5CUVVNc2FVSkJRV2xDTEVWQlFVVXNWMEZCVnp0SlFVTnlReXhKUVVGSkxGRkJRVkVzUTBGQlF6dEpRVU5pTEVsQlFVa3NLMEpCUVN0Q0xIbENRVUZCTzAxQlEycERMRTFCUVUwc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTTdUVUZEZEVJc1pVRkJaU3hGUVVGRkxGZEJRVmM3VVVGRE1VSXNUMEZCVHp0VlFVTk1MRWxCUVVrc1JVRkJSU3hOUVVGTk8xTkJRMklzUTBGQlF6dFBRVU5JTzAxQlEwUXNWMEZCVnl4RlFVRkZMRmRCUVZjN1VVRkRkRUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4TFFVRkxMRlZCUVZVc1IwRkJSeXhUUVVGVExFZEJRVWNzVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXp0UFFVTXZSVHROUVVORUxFMUJRVTBzUlVGQlJTeFpRVUZaTzFGQlEyeENMRTlCUVU4c2IwSkJRVUVzVDBGQlRTeEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJSU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RlFVRkJMRU5CUVVVc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4UlFVRlJMRVZCUVVVc1JVRkJRU3hEUVVGRkxFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNRMEZCUXl4SlFVRkpMRU5CUVVNc1YwRkJWeXhEUVVGRkxFTkJRVVVzUTBGQlFUdFBRVU5xUnp0QlFVTlFMRXRCUVVzc1EwRkJReXhEUVVGRE96dEpRVVZJTEVsQlFVa3NPRUpCUVRoQ0xIZENRVUZCTzAxQlEyaERMRTFCUVUwc1JVRkJSU3haUVVGWk8xRkJRMnhDTzFWQlEwVXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4RFFVRkRMRk5CUVZNc1NVRkJTU3hGUVVGRkxFVkJRVVVzVVVGQlVTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRVZCUVVVc1EwRkJSeXhEUVVGQkxFVkJRVUU3V1VGRE0wUXNiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1MwRkJTeXhGUVVGQkxFTkJRVVVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4VlFVRlZMRU5CUVVFc1EwRkJSeXhEUVVGQkxFVkJRVUU3V1VGRGJrVXNiMEpCUVVFc1VVRkJUeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4UlFVRlRMRU5CUVVFc1JVRkJRU3hOUVVGaExFTkJRVUU3VlVGRGRrSXNRMEZCUVR0VlFVTmtPMDlCUTBnN1FVRkRVQ3hMUVVGTExFTkJRVU1zUTBGQlF6czdTVUZGU0N4VlFVRlZMRU5CUVVNc1YwRkJWenROUVVOd1FpeFJRVUZSTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF6dEJRVU12UXl4TFFVRkxMRU5CUVVNc1EwRkJRenM3U1VGRlNDeEZRVUZGTEVOQlFVTXNaME5CUVdkRExFVkJRVVVzVjBGQlZ6dE5RVU01UXl4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc2IwSkJRVU1zVVVGQlVTeEZRVUZCTEVOQlFVRXNRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJSU3hEUVVGRExFMUJRVThzUTBGQlJTeERRVUZCTEVOQlFVTXNRMEZCUXp0TlFVTnlSU3hUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zUTBGQlF6dE5RVU0zUXl4TlFVRk5MRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU1zYjBKQlFXOUNMRU5CUVVNc1EwRkJReXhIUVVGSExFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTXhSQ3hMUVVGTExFTkJRVU1zUTBGQlF6czdTVUZGU0N4RlFVRkZMRU5CUVVNc2RVTkJRWFZETEVWQlFVVXNWMEZCVnp0TlFVTnlSQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zYjBKQlFVTXNVVUZCVVN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeERRVUZETEV0QlFVMHNRMEZCUlN4RFFVRkJMRU5CUVVNc1EwRkJRenROUVVOd1JTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTTdUVUZET1VJc1UwRkJVeXhEUVVGRExGRkJRVkVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRlZCUVZVc1JVRkJSU3hEUVVGRExFTkJRVU03VFVGRE4wTXNUVUZCVFN4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRU5CUVVNc1IwRkJSeXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTTdTMEZEY2tRc1EwRkJReXhEUVVGRE8wZEJRMG9zUTBGQlF5eERRVUZETzBOQlEwb3NRMEZCUXl4RFFVRkRJaXdpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpZG1GeUlFWnZjbTF6ZVNBOUlISmxjWFZwY21Vb0p5NHZMaTR2YzNKakwyMWhhVzR1YW5NbktUdGNibHh1WkdWelkzSnBZbVVvSjBadmNtMXplU2NzSUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNCa1pYTmpjbWxpWlNnblUyVjBkR2x1WnlCMWNDQmhJR1p2Y20wbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0JwZENnbmMyaHZkV3hrSUhKbGJtUmxjaUJoSUdadmNtMGdhVzUwYnlCMGFHVWdaRzlqZFcxbGJuUW5MQ0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9JRHhHYjNKdGMza3VSbTl5YlQ0OEwwWnZjbTF6ZVM1R2IzSnRQaWs3WEc0Z0lDQWdJQ0JsZUhCbFkzUW9abTl5YlM1blpYUkVUMDFPYjJSbEtDa3VkR0ZuVG1GdFpTa3VkRzlGY1hWaGJDZ25SazlTVFNjcE8xeHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2FYUW9KM05vYjNWc1pDQnpaWFFnWVNCamJHRnpjeUJ1WVcxbElHbG1JSEJoYzNObFpDY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZ2dQRVp2Y20xemVTNUdiM0p0SUdOc1lYTnpUbUZ0WlQxY0ltWnZiMXdpUGp3dlJtOXliWE41TGtadmNtMCtLVHRjYmlBZ0lDQWdJR1Y0Y0dWamRDaG1iM0p0TG1kbGRFUlBUVTV2WkdVb0tTNWpiR0Z6YzA1aGJXVXBMblJ2UlhGMVlXd29KMlp2YnljcE8xeHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2FYUW9KM05vYjNWc1pDQmhiR3h2ZHlCbWIzSWdiblZzYkM5MWJtUmxabWx1WldRZ1kyaHBiR1J5Wlc0bkxDQm1kVzVqZEdsdmJpQW9aRzl1WlNrZ2UxeHVJQ0FnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJQ0FnWTJoaGJtZGxWbUZzZFdVNklHWjFibU4wYVc5dUlDaGxkbVZ1ZENrZ2UxeHVJQ0FnSUNBZ0lDQWdJSFJvYVhNdWMyVjBWbUZzZFdVb1pYWmxiblF1ZEdGeVoyVjBMblpoYkhWbEtUdGNiaUFnSUNBZ0lDQWdmU3hjYmlBZ0lDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmU0J2YmtOb1lXNW5aVDE3ZEdocGN5NWphR0Z1WjJWV1lXeDFaWDB2UGx4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOUtUdGNibHh1SUNBZ0lDQWdkbUZ5SUcxdlpHVnNJRDBnYm5Wc2JEdGNiaUFnSUNBZ0lIWmhjaUJVWlhOMFJtOXliU0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUNBZ2IyNVRkV0p0YVhRNklHWjFibU4wYVc5dUlDaG1iM0p0VFc5a1pXd3BJSHRjYmlBZ0lDQWdJQ0FnSUNCdGIyUmxiQ0E5SUdadmNtMU5iMlJsYkR0Y2JpQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUNoY2JpQWdJQ0FnSUNBZ0lDQWdJRHhHYjNKdGMza3VSbTl5YlNCdmJsTjFZbTFwZEQxN0lIUm9hWE11YjI1VGRXSnRhWFFnZlQ1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnUEdneFBsUmxjM1E4TDJneFBseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCN0lHNTFiR3dnZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0I3SUhWdVpHVm1hVzVsWkNCOVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDBuYm1GdFpTY2dkbUZzZFdVOWV5QW5abTl2SnlCOUlDOCtYRzRnSUNBZ0lDQWdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMHBPMXh1WEc0Z0lDQWdJQ0IyWVhJZ1ptOXliU0E5SUZSbGMzUlZkR2xzY3k1eVpXNWtaWEpKYm5SdlJHOWpkVzFsYm5Rb1BGUmxjM1JHYjNKdEx6NHBPMXh1SUNBZ0lDQWdjMlYwVkdsdFpXOTFkQ2htZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNXpkV0p0YVhRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrcE8xeHVJQ0FnSUNBZ0lDQmxlSEJsWTNRb2JXOWtaV3dwTG5SdlJYRjFZV3dvZTI1aGJXVTZJQ2RtYjI4bmZTazdYRzRnSUNBZ0lDQWdJR1J2Ym1Vb0tUdGNiaUFnSUNBZ0lIMHNJREV3S1R0Y2JpQWdJQ0I5S1R0Y2JseHVJQ0FnSUdsMEtDZHphRzkxYkdRZ1lXeHNiM2NnWm05eUlHbHVjSFYwY3lCaVpXbHVaeUJoWkdSbFpDQmtlVzVoYldsallXeHNlU2NzSUdaMWJtTjBhVzl1SUNoa2IyNWxLU0I3WEc1Y2JpQWdJQ0FnSUhaaGNpQnBibkIxZEhNZ1BTQmJYVHRjYmlBZ0lDQWdJSFpoY2lCbWIzSmpaVlZ3WkdGMFpTQTlJRzUxYkd3N1hHNGdJQ0FnSUNCMllYSWdiVzlrWld3Z1BTQnVkV3hzTzF4dUlDQWdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4a2FYWXZQbHh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUhaaGNpQlVaWE4wUm05eWJTQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJQ0FnWTI5dGNHOXVaVzUwVjJsc2JFMXZkVzUwT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnWm05eVkyVlZjR1JoZEdVZ1BTQjBhR2x6TG1admNtTmxWWEJrWVhSbExtSnBibVFvZEdocGN5azdYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUc5dVUzVmliV2wwT2lCbWRXNWpkR2x2YmlBb1ptOXliVTF2WkdWc0tTQjdYRzRnSUNBZ0lDQWdJQ0FnYlc5a1pXd2dQU0JtYjNKdFRXOWtaV3c3WEc0Z0lDQWdJQ0FnSUgwc1hHNGdJQ0FnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUFvSUZ4dUlDQWdJQ0FnSUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUc5dVUzVmliV2wwUFh0MGFHbHpMbTl1VTNWaWJXbDBmVDRnWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSHRwYm5CMWRITjlYRzRnSUNBZ0lDQWdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQaWs3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLQ0JjYmlBZ0lDQWdJQ0FnUEZSbGMzUkdiM0p0THo0Z1hHNGdJQ0FnSUNBcE8xeHVYRzRnSUNBZ0lDQXZMeUJYWVdsMElHSmxabTl5WlNCaFpHUnBibWNnZEdobElHbHVjSFYwWEc0Z0lDQWdJQ0J6WlhSVWFXMWxiM1YwS0daMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lDQWdJQ0JwYm5CMWRITXVjSFZ6YUNoVVpYTjBTVzV3ZFhRb2UxeHVJQ0FnSUNBZ0lDQWdJRzVoYldVNklDZDBaWE4wSjF4dUlDQWdJQ0FnSUNCOUtTazdYRzVjYmlBZ0lDQWdJQ0FnWm05eVkyVlZjR1JoZEdVb1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdJQ0FnSUNBZ0x5OGdWMkZwZENCbWIzSWdibVY0ZENCbGRtVnVkQ0JzYjI5d0xDQmhjeUIwYUdGMElHUnZaWE1nZEdobElHWnZjbTFjYmlBZ0lDQWdJQ0FnSUNCelpYUlVhVzFsYjNWMEtHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNXpkV0p0YVhRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWlhod1pXTjBLRzF2WkdWc0xuUmxjM1FwTG5SdlFtVkVaV1pwYm1Wa0tDazdYRzRnSUNBZ0lDQWdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ2ZTd2dNQ2s3WEc1Y2JpQWdJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJSDBzSURFd0tUdGNibHh1SUNBZ0lIMHBPMXh1WEc0Z0lDQWdhWFFvSjNOb2IzVnNaQ0JoYkd4dmR5QmtlVzVoYldsallXeHNlU0JoWkdSbFpDQnBibkIxZEhNZ2RHOGdkWEJrWVhSbElIUm9aU0JtYjNKdExXMXZaR1ZzSnl3Z1puVnVZM1JwYjI0Z0tHUnZibVVwSUh0Y2JseHVJQ0FnSUNBZ2RtRnlJR2x1Y0hWMGN5QTlJRnRkTzF4dUlDQWdJQ0FnZG1GeUlHWnZjbU5sVlhCa1lYUmxJRDBnYm5Wc2JEdGNiaUFnSUNBZ0lIWmhjaUJ0YjJSbGJDQTlJRzUxYkd3N1hHNGdJQ0FnSUNCMllYSWdWR1Z6ZEVsdWNIVjBJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdJQ0JqYUdGdVoyVldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tHVjJaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxtTm9ZVzVuWlZaaGJIVmxmUzgrWEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2RtRnlJRlJsYzNSR2IzSnRJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCamIyMXdiMjVsYm5SWGFXeHNUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCbWIzSmpaVlZ3WkdGMFpTQTlJSFJvYVhNdVptOXlZMlZWY0dSaGRHVXVZbWx1WkNoMGFHbHpLVHRjYmlBZ0lDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUNBZ2IyNVRkV0p0YVhRNklHWjFibU4wYVc5dUlDaG1iM0p0VFc5a1pXd3BJSHRjYmlBZ0lDQWdJQ0FnSUNCdGIyUmxiQ0E5SUdadmNtMU5iMlJsYkR0Y2JpQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUNnZ1hHNGdJQ0FnSUNBZ0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wZ2IyNVRkV0p0YVhROWUzUm9hWE11YjI1VGRXSnRhWFI5UGlCY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnZTJsdWNIVjBjMzFjYmlBZ0lDQWdJQ0FnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArS1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvSUZ4dUlDQWdJQ0FnSUNBOFZHVnpkRVp2Y20wdlBpQmNiaUFnSUNBZ0lDazdYRzVjYmlBZ0lDQWdJQzh2SUZkaGFYUWdZbVZtYjNKbElHRmtaR2x1WnlCMGFHVWdhVzV3ZFhSY2JpQWdJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdJQ0FnSUdsdWNIVjBjeTV3ZFhOb0tGUmxjM1JKYm5CMWRDaDdYRzRnSUNBZ0lDQWdJQ0FnYm1GdFpUb2dKM1JsYzNRblhHNGdJQ0FnSUNBZ0lIMHBLVHRjYmx4dUlDQWdJQ0FnSUNCbWIzSmpaVlZ3WkdGMFpTaG1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0FnSUNBZ0lDQXZMeUJYWVdsMElHWnZjaUJ1WlhoMElHVjJaVzUwSUd4dmIzQXNJR0Z6SUhSb1lYUWdaRzlsY3lCMGFHVWdabTl5YlZ4dUlDQWdJQ0FnSUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdWR1Z6ZEZWMGFXeHpMbE5wYlhWc1lYUmxMbU5vWVc1blpTaFVaWE4wVlhScGJITXVabWx1WkZKbGJtUmxjbVZrUkU5TlEyOXRjRzl1Wlc1MFYybDBhRlJoWnlobWIzSnRMQ0FuU1U1UVZWUW5LU3dnZTNSaGNtZGxkRG9nZTNaaGJIVmxPaUFuWm05dkozMTlLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNXpkV0p0YVhRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWlhod1pXTjBLRzF2WkdWc0xuUmxjM1FwTG5SdlFtVW9KMlp2YnljcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWkc5dVpTZ3BPMXh1SUNBZ0lDQWdJQ0FnSUgwc0lEQXBPMXh1WEc0Z0lDQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ0lDQjlMQ0F3S1R0Y2JseHVJQ0FnSUgwcE8xeHVYRzRnSUNBZ2FYUW9KM05vYjNWc1pDQmhiR3h2ZHlCaElHUjVibUZ0YVdOaGJHeDVJSFZ3WkdGMFpXUWdhVzV3ZFhRZ2RHOGdkWEJrWVhSbElIUm9aU0JtYjNKdExXMXZaR1ZzSnl3Z1puVnVZM1JwYjI0Z0tHUnZibVVwSUh0Y2JseHVJQ0FnSUNBZ2RtRnlJR1p2Y21ObFZYQmtZWFJsSUQwZ2JuVnNiRHRjYmlBZ0lDQWdJSFpoY2lCdGIyUmxiQ0E5SUc1MWJHdzdYRzRnSUNBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnSUNCamFHRnVaMlZXWVd4MVpUb2dablZ1WTNScGIyNGdLR1YyWlc1MEtTQjdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXpaWFJXWVd4MVpTaGxkbVZ1ZEM1MFlYSm5aWFF1ZG1Gc2RXVXBPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMbU5vWVc1blpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMHBPMXh1WEc0Z0lDQWdJQ0IyWVhJZ2FXNXdkWFE3WEc0Z0lDQWdJQ0IyWVhJZ1ZHVnpkRVp2Y20wZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQWdJR052YlhCdmJtVnVkRmRwYkd4TmIzVnVkRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR1p2Y21ObFZYQmtZWFJsSUQwZ2RHaHBjeTVtYjNKalpWVndaR0YwWlM1aWFXNWtLSFJvYVhNcE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdJQ0J2YmxOMVltMXBkRG9nWm5WdVkzUnBiMjRnS0dadmNtMU5iMlJsYkNrZ2UxeHVJQ0FnSUNBZ0lDQWdJRzF2WkdWc0lEMGdabTl5YlUxdlpHVnNPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0JwYm5CMWRDQTlJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMG5kR1Z6ZENjZ2RtRnNkV1U5ZXlCMGFHbHpMbkJ5YjNCekxuWmhiSFZsSUgwZ0x6NDdYRzVjYmlBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnS0Z4dUlDQWdJQ0FnSUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUc5dVUzVmliV2wwUFh0MGFHbHpMbTl1VTNWaWJXbDBmVDVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdlMmx1Y0hWMGZWeHVJQ0FnSUNBZ0lDQWdJQ0FnUEM5R2IzSnRjM2t1Um05eWJUNHBPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZzhWR1Z6ZEVadmNtMGdkbUZzZFdVOUoyWnZieWN2UGlrN1hHNWNiaUFnSUNBZ0lDOHZJRmRoYVhRZ1ltVm1iM0psSUdOb1lXNW5hVzVuSUhSb1pTQnBibkIxZEZ4dUlDQWdJQ0FnYzJWMFZHbHRaVzkxZENobWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR1p2Y20wdWMyVjBVSEp2Y0hNb2UzWmhiSFZsT2lBblltRnlKMzBwTzF4dVhHNGdJQ0FnSUNBZ0lHWnZjbU5sVlhCa1lYUmxLR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQXZMeUJYWVdsMElHWnZjaUJ1WlhoMElHVjJaVzUwSUd4dmIzQXNJR0Z6SUhSb1lYUWdaRzlsY3lCMGFHVWdabTl5YlZ4dUlDQWdJQ0FnSUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdWR1Z6ZEZWMGFXeHpMbE5wYlhWc1lYUmxMbk4xWW0xcGRDaG1iM0p0TG1kbGRFUlBUVTV2WkdVb0tTazdYRzRnSUNBZ0lDQWdJQ0FnSUNCbGVIQmxZM1FvYlc5a1pXd3VkR1Z6ZENrdWRHOUNaU2duWW1GeUp5azdYRzRnSUNBZ0lDQWdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ2ZTd2dNQ2s3WEc1Y2JpQWdJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJSDBzSURFd0tUdGNibHh1SUNBZ0lIMHBPMXh1WEc0Z0lDQWdaR1Z6WTNKcFltVW9KM1poYkdsa1lYUnBiMjV6Snl3Z1puVnVZM1JwYjI0b0tTQjdYRzRnSUNBZ0lDQjJZWElnUTJobFkydFdZV3hwWkN3Z2IyNVRkV0p0YVhRc0lFOTBhR1Z5UTJobFkydFdZV3hwWkR0Y2JpQWdJQ0FnSUhaaGNpQnBjMVpoYkdsa08xeHVYRzRnSUNBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnSUNCamFHRnVaMlZXWVd4MVpUb2dablZ1WTNScGIyNGdLR1YyWlc1MEtTQjdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXpaWFJXWVd4MVpTaGxkbVZ1ZEM1MFlYSm5aWFF1ZG1Gc2RXVXBPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFhzZ2RHaHBjeTVuWlhSV1lXeDFaU2dwSUgwZ2IyNURhR0Z1WjJVOWV5QjBhR2x6TG1Ob1lXNW5aVlpoYkhWbElIMGdMejVjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lIWmhjaUJVWlhOMFJtOXliU0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUNBZ1oyVjBSR1ZtWVhWc2RGQnliM0J6T2lCbWRXNWpkR2x2YmlncElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXNXdkWFJ6T2lCYlhTeGNiaUFnSUNBZ0lDQWdJQ0I5TzF4dUlDQWdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCMllYSWdZblZwYkhSSmJuQjFkSE1nUFNCYlhUdGNiaUFnSUNBZ0lDQWdJQ0IyWVhJZ2FXNXdkWFJ6SUQwZ2RHaHBjeTV3Y205d2N5NXBibkIxZEhNN1hHNGdJQ0FnSUNBZ0lDQWdabTl5SUNoMllYSWdhVDB3T3lCcElEd2dhVzV3ZFhSekxteGxibWQwYURzZ2FTc3JLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjJZWElnYVc1d2RYUWdQU0JwYm5CMWRITmJhVjA3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmlkV2xzZEVsdWNIVjBjeTV3ZFhOb0tEeFVaWE4wU1c1d2RYUWdleUF1TGk1cGJuQjFkQ0I5SUd0bGVUMTdJR2x1Y0hWMExtNWhiV1VnZlNBdlBpazdYRzRnSUNBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNBZ0lIWmhjaUJmZEdocGN5QTlJSFJvYVhNN1hHNGdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlEeEdiM0p0YzNrdVJtOXliVnh1SUNBZ0lDQWdJQ0FnSUNBZ2IyNVRkV0p0YVhRZ0lEMGdleUJtZFc1amRHbHZiaWhoY21jeEtTQjdJRzl1VTNWaWJXbDBLR0Z5WnpFcE95QjlJSDFjYmlBZ0lDQWdJQ0FnSUNBZ0lHOXVWbUZzYVdRZ0lDQTlJSHNnWm5WdVkzUnBiMjRvS1NCN0lHbHpWbUZzYVdRZ1BTQjBjblZsT3lCOUlIMWNiaUFnSUNBZ0lDQWdJQ0FnSUc5dVNXNTJZV3hwWkNBOUlIc2dablZ1WTNScGIyNG9LU0I3SUdselZtRnNhV1FnUFNCbVlXeHpaVHNnZlNCOUlENWNiaUFnSUNBZ0lDQWdJQ0FnSUhzZ1luVnBiSFJKYm5CMWRITWdmVnh1SUNBZ0lDQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5S1R0Y2JseHVJQ0FnSUNBZ1ltVm1iM0psUldGamFDaG1kVzVqZEdsdmJpZ3BJSHRjYmlBZ0lDQWdJQ0FnYVhOV1lXeHBaQ0E5SUhSeWRXVTdYRzRnSUNBZ0lDQWdJRU5vWldOclZtRnNhV1FnUFNCcVlYTnRhVzVsTG1OeVpXRjBaVk53ZVNnblEyaGxZMnRXWVd4cFpDY3BPMXh1SUNBZ0lDQWdJQ0JHYjNKdGMza3VZV1JrVm1Gc2FXUmhkR2x2YmxKMWJHVW9KME5vWldOclZtRnNhV1FuTENCRGFHVmphMVpoYkdsa0tUdGNiaUFnSUNBZ0lDQWdUM1JvWlhKRGFHVmphMVpoYkdsa0lEMGdhbUZ6YldsdVpTNWpjbVZoZEdWVGNIa29KME5vWldOclZtRnNhV1FuS1R0Y2JpQWdJQ0FnSUNBZ1JtOXliWE41TG1Ga1pGWmhiR2xrWVhScGIyNVNkV3hsS0NkUGRHaGxja05vWldOclZtRnNhV1FuTENCUGRHaGxja05vWldOclZtRnNhV1FwTzF4dUlDQWdJQ0FnSUNCdmJsTjFZbTFwZENBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZHZibE4xWW0xcGRDY3BPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUdsMEtDZHphRzkxYkdRZ2NuVnVJSGRvWlc0Z2RHaGxJR2x1Y0hWMElHTm9ZVzVuWlhNbkxDQm1kVzVqZEdsdmJpZ3BJSHRjYmlBZ0lDQWdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtEeFVaWE4wUm05eWJTQnBibkIxZEhNOWV5QmJlMjVoYldVNklDZHZibVVuTENCMllXeHBaR0YwYVc5dWN6b2dKME5vWldOclZtRnNhV1FuTENCMllXeDFaVG9nSjJadmJ5ZDlYU0I5THo0cE8xeHVJQ0FnSUNBZ0lDQjJZWElnYVc1d2RYUWdQU0JVWlhOMFZYUnBiSE11Wm1sdVpGSmxibVJsY21Wa1JFOU5RMjl0Y0c5dVpXNTBWMmwwYUZSaFp5aG1iM0p0TENBbmFXNXdkWFFuS1R0Y2JpQWdJQ0FnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExtTm9ZVzVuWlNocGJuQjFkQzVuWlhSRVQwMU9iMlJsS0Nrc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oySmhjaWQ5ZlNrN1hHNGdJQ0FnSUNBZ0lHVjRjR1ZqZENoRGFHVmphMVpoYkdsa0tTNTBiMGhoZG1WQ1pXVnVRMkZzYkdWa1YybDBhQ2duWW1GeUp5azdYRzRnSUNBZ0lDQWdJR1Y0Y0dWamRDaFBkR2hsY2tOb1pXTnJWbUZzYVdRcExtNXZkQzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc0Z0lDQWdJQ0I5S1R0Y2JseHVJQ0FnSUNBZ2FYUW9KM05vYjNWc1pDQmhiR3h2ZHlCMGFHVWdkbUZzYVdSaGRHbHZiaUIwYnlCaVpTQmphR0Z1WjJWa0p5d2dablZ1WTNScGIyNG9LU0I3WEc0Z0lDQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZzhWR1Z6ZEVadmNtMGdhVzV3ZFhSelBYc2dXM3R1WVcxbE9pQW5iMjVsSnl3Z2RtRnNhV1JoZEdsdmJuTTZJQ2REYUdWamExWmhiR2xrSnl3Z2RtRnNkV1U2SUNkbWIyOG5mVjBnZlM4K0tUdGNiaUFnSUNBZ0lDQWdabTl5YlM1elpYUlFjbTl3Y3loN2FXNXdkWFJ6T2lCYmUyNWhiV1U2SUNkdmJtVW5MQ0IyWVd4cFpHRjBhVzl1Y3pvZ0owOTBhR1Z5UTJobFkydFdZV3hwWkNjc0lIWmhiSFZsT2lBblptOXZKMzFkSUgwcE8xeHVJQ0FnSUNBZ0lDQjJZWElnYVc1d2RYUWdQU0JVWlhOMFZYUnBiSE11Wm1sdVpGSmxibVJsY21Wa1JFOU5RMjl0Y0c5dVpXNTBWMmwwYUZSaFp5aG1iM0p0TENBbmFXNXdkWFFuS1R0Y2JpQWdJQ0FnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExtTm9ZVzVuWlNocGJuQjFkQzVuWlhSRVQwMU9iMlJsS0Nrc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oySmhjaWQ5ZlNrN1hHNGdJQ0FnSUNBZ0lHVjRjR1ZqZENoUGRHaGxja05vWldOclZtRnNhV1FwTG5SdlNHRjJaVUpsWlc1RFlXeHNaV1JYYVhSb0tDZGlZWEluS1R0Y2JpQWdJQ0FnSUgwcE8xeHVYRzRnSUNBZ0lDQnBkQ2duYzJodmRXeGtJR2x1ZG1Gc2FXUmhkR1VnWVNCbWIzSnRJR2xtSUdSNWJtRnRhV05oYkd4NUlHbHVjMlZ5ZEdWa0lHbHVjSFYwSUdseklHbHVkbUZzYVdRbkxDQm1kVzVqZEdsdmJpaGtiMjVsS1NCN1hHNGdJQ0FnSUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2c4VkdWemRFWnZjbTBnYVc1d2RYUnpQWHNnVzN0dVlXMWxPaUFuYjI1bEp5d2dkbUZzYVdSaGRHbHZibk02SUNkcGMwVnRZV2xzSnl3Z2RtRnNkV1U2SUNkbWIyOUFZbUZ5TG1OdmJTZDlYU0I5THo0cE8xeHVJQ0FnSUNBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNrdWRHOUZjWFZoYkNoMGNuVmxLVHRjYmlBZ0lDQWdJQ0FnWm05eWJTNXpaWFJRY205d2N5aDdhVzV3ZFhSek9pQmJYRzRnSUNBZ0lDQWdJQ0FnZTI1aGJXVTZJQ2R2Ym1VbkxDQjJZV3hwWkdGMGFXOXVjem9nSjJselJXMWhhV3duTENCMllXeDFaVG9nSjJadmIwQmlZWEl1WTI5dEozMHNYRzRnSUNBZ0lDQWdJQ0FnZTI1aGJXVTZJQ2QwZDI4bkxDQjJZV3hwWkdGMGFXOXVjem9nSjJselJXMWhhV3duTENCMllXeDFaVG9nSjJadmIwQmlZWEluZlN4Y2JpQWdJQ0FnSUNBZ1hYMHNJR1oxYm1OMGFXOXVLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNG9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNrdWRHOUZjWFZoYkNobVlXeHpaU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmtiMjVsS0NrN1hHNGdJQ0FnSUNBZ0lDQWdmU3dnTUNrN1hHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdmU2s3WEc1Y2JpQWdJQ0FnSUdsMEtDZHphRzkxYkdRZ2RtRnNhV1JoZEdVZ1lTQm1iM0p0SUhkb1pXNGdjbVZ0YjNacGJtY2dZVzRnYVc1MllXeHBaQ0JwYm5CMWRDY3NJR1oxYm1OMGFXOXVLR1J2Ym1VcElIdGNiaUFnSUNBZ0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0R4VVpYTjBSbTl5YlNCcGJuQjFkSE05ZXlCYlhHNGdJQ0FnSUNBZ0lDQWdlMjVoYldVNklDZHZibVVuTENCMllXeHBaR0YwYVc5dWN6b2dKMmx6UlcxaGFXd25MQ0IyWVd4MVpUb2dKMlp2YjBCaVlYSXVZMjl0SjMwc1hHNGdJQ0FnSUNBZ0lDQWdlMjVoYldVNklDZDBkMjhuTENCMllXeHBaR0YwYVc5dWN6b2dKMmx6UlcxaGFXd25MQ0IyWVd4MVpUb2dKMlp2YjBCaVlYSW5mU3hjYmlBZ0lDQWdJQ0FnWFNCOUlDOCtLVHRjYmlBZ0lDQWdJQ0FnWlhod1pXTjBLR2x6Vm1Gc2FXUXBMblJ2UlhGMVlXd29abUZzYzJVcE8xeHVJQ0FnSUNBZ0lDQm1iM0p0TG5ObGRGQnliM0J6S0h0cGJuQjFkSE02SUZ0N2JtRnRaVG9nSjI5dVpTY3NJSFpoYkdsa1lYUnBiMjV6T2lBbmFYTkZiV0ZwYkNjc0lIWmhiSFZsT2lBblptOXZRR0poY2k1amIyMG5mVjE5TENCbWRXNWpkR2x2YmlncElIdGNiaUFnSUNBZ0lDQWdJQ0J6WlhSVWFXMWxiM1YwS0daMWJtTjBhVzl1S0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWlhod1pXTjBLR2x6Vm1Gc2FXUXBMblJ2UlhGMVlXd29kSEoxWlNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JrYjI1bEtDazdYRzRnSUNBZ0lDQWdJQ0FnZlN3Z01DazdYRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnZlNrN1hHNWNiaUFnSUNBZ0lHbDBLQ2R5ZFc1eklHMTFiSFJwY0d4bElIWmhiR2xrWVhScGIyNXpKeXdnWm5WdVkzUnBiMjRvS1NCN1hHNGdJQ0FnSUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2c4VkdWemRFWnZjbTBnYVc1d2RYUnpQWHNnVzN0dVlXMWxPaUFuYjI1bEp5d2dkbUZzYVdSaGRHbHZibk02SUNkRGFHVmphMVpoYkdsa0xFOTBhR1Z5UTJobFkydFdZV3hwWkNjc0lIWmhiSFZsT2lBblptOXZKMzFkSUgwdlBpazdYRzRnSUNBZ0lDQWdJSFpoY2lCcGJuQjFkQ0E5SUZSbGMzUlZkR2xzY3k1bWFXNWtVbVZ1WkdWeVpXUkVUMDFEYjIxd2IyNWxiblJYYVhSb1ZHRm5LR1p2Y20wc0lDZHBibkIxZENjcE8xeHVJQ0FnSUNBZ0lDQlVaWE4wVlhScGJITXVVMmx0ZFd4aGRHVXVZMmhoYm1kbEtHbHVjSFYwTG1kbGRFUlBUVTV2WkdVb0tTd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5ZbUZ5SjMxOUtUdGNiaUFnSUNBZ0lDQWdaWGh3WldOMEtFTm9aV05yVm1Gc2FXUXBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUlhhWFJvS0NkaVlYSW5LVHRjYmlBZ0lDQWdJQ0FnWlhod1pXTjBLRTkwYUdWeVEyaGxZMnRXWVd4cFpDa3VkRzlJWVhabFFtVmxia05oYkd4bFpGZHBkR2dvSjJKaGNpY3BPMXh1SUNBZ0lDQWdmU2s3WEc0Z0lDQWdmU2s3WEc1Y2JpQWdJQ0JwZENnbmMyaHZkV3hrSUc1dmRDQjBjbWxuWjJWeUlHOXVRMmhoYm1kbElIZG9aVzRnWm05eWJTQnBjeUJ0YjNWdWRHVmtKeXdnWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ2RtRnlJR2hoYzBOb1lXNW5aV1FnUFNCcVlYTnRhVzVsTG1OeVpXRjBaVk53ZVNnbmIyNURhR0Z1WjJVbktUdGNiaUFnSUNBZ0lIWmhjaUJVWlhOMFJtOXliU0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUNBZ2IyNURhR0Z1WjJVNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCb1lYTkRhR0Z1WjJWa0tDazdYRzRnSUNBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQThSbTl5YlhONUxrWnZjbTBnYjI1RGFHRnVaMlU5ZTNSb2FYTXViMjVEYUdGdVoyVjlQand2Um05eWJYTjVMa1p2Y20wK08xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENnOFZHVnpkRVp2Y20wdlBpazdYRzRnSUNBZ0lDQmxlSEJsWTNRb2FHRnpRMmhoYm1kbFpDa3VibTkwTG5SdlNHRjJaVUpsWlc1RFlXeHNaV1FvS1R0Y2JpQWdJQ0I5S1R0Y2JseHVJQ0FnSUdsMEtDZHphRzkxYkdRZ2RISnBaMmRsY2lCdmJrTm9ZVzVuWlNCM2FHVnVJR1p2Y20wZ1pXeGxiV1Z1ZENCcGN5QmphR0Z1WjJWa0p5d2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnZG1GeUlHaGhjME5vWVc1blpXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duYjI1RGFHRnVaMlVuS1R0Y2JpQWdJQ0FnSUhaaGNpQk5lVWx1Y0hWMElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ0lDQnZia05vWVc1blpUb2dablZ1WTNScGIyNGdLR1YyWlc1MEtTQjdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXpaWFJXWVd4MVpTaGxkbVZ1ZEM1MFlYSm5aWFF1ZG1Gc2RXVXBPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMbTl1UTJoaGJtZGxmUzgrWEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2RtRnlJRlJsYzNSR2IzSnRJRDBnVW1WaFkzUXVZM0psWVhSbFEyeGhjM01vZTF4dUlDQWdJQ0FnSUNCdmJrTm9ZVzVuWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUdoaGMwTm9ZVzVuWldRb0tUdGNiaUFnSUNBZ0lDQWdmU3hjYmlBZ0lDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlDaGNiaUFnSUNBZ0lDQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQnZia05vWVc1blpUMTdkR2hwY3k1dmJrTm9ZVzVuWlgwK1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUR4TmVVbHVjSFYwSUc1aGJXVTlYQ0ptYjI5Y0lpOCtYRzRnSUNBZ0lDQWdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0R4VVpYTjBSbTl5YlM4K0tUdGNiaUFnSUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb1ZHVnpkRlYwYVd4ekxtWnBibVJTWlc1a1pYSmxaRVJQVFVOdmJYQnZibVZ1ZEZkcGRHaFVZV2NvWm05eWJTd2dKMGxPVUZWVUp5a3NJSHQwWVhKblpYUTZJSHQyWVd4MVpUb2dKMkpoY2lkOWZTazdYRzRnSUNBZ0lDQmxlSEJsWTNRb2FHRnpRMmhoYm1kbFpDa3VkRzlJWVhabFFtVmxia05oYkd4bFpDZ3BPMXh1SUNBZ0lIMHBPMXh1WEc0Z0lDQWdhWFFvSjNOb2IzVnNaQ0IwY21sbloyVnlJRzl1UTJoaGJtZGxJSGRvWlc0Z2JtVjNJR2x1Y0hWMElHbHpJR0ZrWkdWa0lIUnZJR1p2Y20wbkxDQm1kVzVqZEdsdmJpQW9aRzl1WlNrZ2UxeHVJQ0FnSUNBZ2RtRnlJR2hoYzBOb1lXNW5aV1FnUFNCcVlYTnRhVzVsTG1OeVpXRjBaVk53ZVNnbmIyNURhR0Z1WjJVbktUdGNiaUFnSUNBZ0lIWmhjaUJwYm5CMWRITWdQU0JiWFR0Y2JpQWdJQ0FnSUhaaGNpQm1iM0pqWlZWd1pHRjBaU0E5SUc1MWJHdzdYRzRnSUNBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnSUNCamFHRnVaMlZXWVd4MVpUb2dablZ1WTNScGIyNGdLR1YyWlc1MEtTQjdYRzRnSUNBZ0lDQWdJQ0FnZEdocGN5NXpaWFJXWVd4MVpTaGxkbVZ1ZEM1MFlYSm5aWFF1ZG1Gc2RXVXBPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMbU5vWVc1blpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdkbUZ5SUZSbGMzUkdiM0p0SUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ0lDQmpiMjF3YjI1bGJuUlhhV3hzVFc5MWJuUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQm1iM0pqWlZWd1pHRjBaU0E5SUhSb2FYTXVabTl5WTJWVmNHUmhkR1V1WW1sdVpDaDBhR2x6S1R0Y2JpQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lDQWdiMjVEYUdGdVoyVTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQm9ZWE5EYUdGdVoyVmtLQ2s3WEc0Z0lDQWdJQ0FnSUgwc1hHNGdJQ0FnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUFvSUZ4dUlDQWdJQ0FnSUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUc5dVEyaGhibWRsUFh0MGFHbHpMbTl1UTJoaGJtZGxmVDRnWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSHRwYm5CMWRITjlYRzRnSUNBZ0lDQWdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQaWs3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLQ0JjYmlBZ0lDQWdJQ0FnUEZSbGMzUkdiM0p0THo0Z1hHNGdJQ0FnSUNBcE8xeHVYRzRnSUNBZ0lDQXZMeUJYWVdsMElHSmxabTl5WlNCaFpHUnBibWNnZEdobElHbHVjSFYwWEc0Z0lDQWdJQ0JwYm5CMWRITXVjSFZ6YUNoVVpYTjBTVzV3ZFhRb2UxeHVJQ0FnSUNBZ0lDQnVZVzFsT2lBbmRHVnpkQ2RjYmlBZ0lDQWdJSDBwS1R0Y2JseHVJQ0FnSUNBZ1ptOXlZMlZWY0dSaGRHVW9ablZ1WTNScGIyNGdLQ2tnZTF4dVhHNGdJQ0FnSUNBZ0lDOHZJRmRoYVhRZ1ptOXlJRzVsZUhRZ1pYWmxiblFnYkc5dmNDd2dZWE1nZEdoaGRDQmtiMlZ6SUhSb1pTQm1iM0p0WEc0Z0lDQWdJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUdWNGNHVmpkQ2hvWVhORGFHRnVaMlZrS1M1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNGdJQ0FnSUNBZ0lDQWdaRzl1WlNncE8xeHVJQ0FnSUNBZ0lDQjlMQ0F3S1R0Y2JseHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQjlLVHRjYmx4dUlDQjlLVHRjYmx4dUlDQmtaWE5qY21saVpTZ25WWEJrWVhSbElHRWdabTl5YlNjc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJR2wwS0NkemFHOTFiR1FnWVd4c2IzY2daV3hsYldWdWRITWdkRzhnWTJobFkyc2dhV1lnZEdobElHWnZjbTBnYVhNZ1pHbHpZV0pzWldRbkxDQm1kVzVqZEdsdmJpQW9aRzl1WlNrZ2UxeHVYRzRnSUNBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnSUNCeVpXNWtaWEk2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5THo1Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQjJZWElnVkdWemRFWnZjbTBnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNBZ0lHZGxkRWx1YVhScFlXeFRkR0YwWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUI3WkdsellXSnNaV1E2SUhSeWRXVjlPMXh1SUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNCbGJtRmliR1ZHYjNKdE9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmthWE5oWW14bFpEb2dabUZzYzJWY2JpQWdJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVJQ2dnWEc0Z0lDQWdJQ0FnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTBnYjI1RGFHRnVaMlU5ZTNSb2FYTXViMjVEYUdGdVoyVjlJR1JwYzJGaWJHVmtQWHQwYUdsekxuTjBZWFJsTG1ScGMyRmliR1ZrZlQ0Z1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSW1admIxd2lMejVjYmlBZ0lDQWdJQ0FnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArS1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvSUZ4dUlDQWdJQ0FnSUNBOFZHVnpkRVp2Y20wdlBpQmNiaUFnSUNBZ0lDazdYRzVjYmlBZ0lDQWdJSFpoY2lCcGJuQjFkQ0E5SUZSbGMzUlZkR2xzY3k1bWFXNWtVbVZ1WkdWeVpXUkRiMjF3YjI1bGJuUlhhWFJvVkhsd1pTaG1iM0p0TENCVVpYTjBTVzV3ZFhRcE8xeHVJQ0FnSUNBZ1pYaHdaV04wS0dsdWNIVjBMbWx6Um05eWJVUnBjMkZpYkdWa0tDa3BMblJ2UW1Vb2RISjFaU2s3WEc0Z0lDQWdJQ0JtYjNKdExtVnVZV0pzWlVadmNtMG9LVHRjYmlBZ0lDQWdJSE5sZEZScGJXVnZkWFFvWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQmxlSEJsWTNRb2FXNXdkWFF1YVhOR2IzSnRSR2x6WVdKc1pXUW9LU2t1ZEc5Q1pTaG1ZV3h6WlNrN1hHNGdJQ0FnSUNBZ0lHUnZibVVvS1R0Y2JpQWdJQ0FnSUgwc0lEQXBPMXh1WEc0Z0lDQWdmU2s3WEc1Y2JpQWdJQ0JwZENnbmMyaHZkV3hrSUdKbElIQnZjM05wWW14bElIUnZJSEJoYzNNZ1pYSnliM0lnYzNSaGRHVWdiMllnWld4bGJXVnVkSE1nWW5rZ1kyaGhibWRwYm1jZ1lXNGdaWEp5YjNKeklHRjBkSEpwWW5WMFpTY3NJR1oxYm1OMGFXOXVJQ2hrYjI1bEtTQjdYRzVjYmlBZ0lDQWdJSFpoY2lCVVpYTjBTVzV3ZFhRZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQWdJRzFwZUdsdWN6b2dXMFp2Y20xemVTNU5hWGhwYmwwc1hHNGdJQ0FnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUE4YVc1d2RYUWdkbUZzZFdVOWUzUm9hWE11WjJWMFZtRnNkV1VvS1gwdlBqdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdmU2s3WEc0Z0lDQWdJQ0IyWVhJZ1ZHVnpkRVp2Y20wZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQWdJR2RsZEVsdWFYUnBZV3hUZEdGMFpUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0IyWVd4cFpHRjBhVzl1UlhKeWIzSnpPaUI3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJR1p2YnpvZ0oySmhjaWRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0I5TzF4dUlDQWdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ0lDQnZia05vWVc1blpUb2dablZ1WTNScGIyNGdLSFpoYkhWbGN5a2dlMXh1SUNBZ0lDQWdJQ0FnSUdsbUlDaDJZV3gxWlhNdVptOXZLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjBhR2x6TG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnZG1Gc2FXUmhkR2x2YmtWeWNtOXljem9nZTMxY2JpQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNBZ0lIMGdaV3h6WlNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0IwYUdsekxuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2RtRnNhV1JoZEdsdmJrVnljbTl5Y3pvZ2UyWnZiem9nSjJKaGNpZDlYRzRnSUNBZ0lDQWdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUgwc1hHNGdJQ0FnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUhKbGRIVnliaUFvSUZ4dUlDQWdJQ0FnSUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUc5dVEyaGhibWRsUFh0MGFHbHpMbTl1UTJoaGJtZGxmU0IyWVd4cFpHRjBhVzl1UlhKeWIzSnpQWHQwYUdsekxuTjBZWFJsTG5aaGJHbGtZWFJwYjI1RmNuSnZjbk45UGlCY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpWm05dlhDSXZQbHh1SUNBZ0lDQWdJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDRwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNCOUtUdGNiaUFnSUNBZ0lIWmhjaUJtYjNKdElEMGdWR1Z6ZEZWMGFXeHpMbkpsYm1SbGNrbHVkRzlFYjJOMWJXVnVkQ2dnWEc0Z0lDQWdJQ0FnSUR4VVpYTjBSbTl5YlM4K0lGeHVJQ0FnSUNBZ0tUdGNibHh1SUNBZ0lDQWdMeThnVjJGcGRDQm1iM0lnZFhCa1lYUmxYRzRnSUNBZ0lDQnpaWFJVYVcxbGIzVjBLR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2RtRnlJR2x1Y0hWMElEMGdWR1Z6ZEZWMGFXeHpMbVpwYm1SU1pXNWtaWEpsWkVOdmJYQnZibVZ1ZEZkcGRHaFVlWEJsS0dadmNtMHNJRlJsYzNSSmJuQjFkQ2s3WEc0Z0lDQWdJQ0FnSUdWNGNHVmpkQ2hwYm5CMWRDNW5aWFJGY25KdmNrMWxjM05oWjJVb0tTa3VkRzlDWlNnblltRnlKeWs3WEc0Z0lDQWdJQ0FnSUdsdWNIVjBMbk5sZEZaaGJIVmxLQ2RuYjNSV1lXeDFaU2NwTzF4dVhHNGdJQ0FnSUNBZ0lDOHZJRmRoYVhRZ1ptOXlJSFZ3WkdGMFpWeHVJQ0FnSUNBZ0lDQnpaWFJVYVcxbGIzVjBLR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQmxlSEJsWTNRb2FXNXdkWFF1WjJWMFJYSnliM0pOWlhOellXZGxLQ2twTG5SdlFtVW9iblZzYkNrN1hHNGdJQ0FnSUNBZ0lDQWdaRzl1WlNncE8xeHVJQ0FnSUNBZ0lDQjlMQ0F3S1R0Y2JpQWdJQ0FnSUgwc0lEQXBPMXh1WEc0Z0lDQWdmU2s3WEc1Y2JseHVJQ0FnSUdsMEtDZHphRzkxYkdRZ2RISnBaMmRsY2lCaGJpQnZibFpoYkdsa1UzVmliV2wwSUhkb1pXNGdjM1ZpYldsMGRHbHVaeUJoSUhaaGJHbGtJR1p2Y20wbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0FnSUNBZ2RtRnlJR2x6UTJGc2JHVmtJRDBnWm1Gc2MyVTdYRzRnSUNBZ0lDQWdJSFpoY2lCVVpYTjBTVzV3ZFhRZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQWdJQ0FnYldsNGFXNXpPaUJiUm05eWJYTjVMazFwZUdsdVhTeGNiaUFnSUNBZ0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQThhVzV3ZFhRZ2RtRnNkV1U5ZTNSb2FYTXVaMlYwVm1Gc2RXVW9LWDB2UGp0Y2JpQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNCMllYSWdWR1Z6ZEVadmNtMGdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0FnSUNBZ2IyNVdZV3hwWkZOMVltMXBkRG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnYVhORFlXeHNaV1FnUFNCMGNuVmxPMXh1SUNBZ0lDQWdJQ0FnSUgwc1hHNGdJQ0FnSUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z0tDQmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1Vm1Gc2FXUlRkV0p0YVhROWUzUm9hWE11YjI1V1lXeHBaRk4xWW0xcGRIMCtJRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMWNJbVp2YjF3aUlIWmhiR2xrWVhScGIyNXpQVndpYVhORmJXRnBiRndpSUhaaGJIVmxQVndpWm05dlFHSmhjaTVqYjIxY0lpOCtYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArS1R0Y2JpQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9JRnh1SUNBZ0lDQWdJQ0FnSUR4VVpYTjBSbTl5YlM4K0lGeHVJQ0FnSUNBZ0lDQXBPMXh1WEc0Z0lDQWdJQ0FnSUhaaGNpQlVaWE4wUm05eWJTQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRGIyMXdiMjVsYm5SWGFYUm9WSGx3WlNobWIzSnRMQ0JVWlhOMFJtOXliU2s3WEc0Z0lDQWdJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvVkdWemRFWnZjbTB1WjJWMFJFOU5UbTlrWlNncEtUc2dJRnh1SUNBZ0lDQWdJQ0JsZUhCbFkzUW9hWE5EWVd4c1pXUXBMblJ2UW1Vb2RISjFaU2s3WEc1Y2JpQWdJQ0I5S1R0Y2JseHVJQ0FnSUdsMEtDZHphRzkxYkdRZ2RISnBaMmRsY2lCaGJpQnZia2x1ZG1Gc2FXUlRkV0p0YVhRZ2QyaGxiaUJ6ZFdKdGFYUjBhVzVuSUdGdUlHbHVkbUZzYVdRZ1ptOXliU2NzSUdaMWJtTjBhVzl1SUNncElIdGNibHh1SUNBZ0lDQWdJQ0IyWVhJZ2FYTkRZV3hzWldRZ1BTQm1ZV3h6WlR0Y2JpQWdJQ0FnSUNBZ2RtRnlJRlJsYzNSSmJuQjFkQ0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdJQ0FnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTOCtPMXh1SUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2ZTazdYRzRnSUNBZ0lDQWdJSFpoY2lCVVpYTjBSbTl5YlNBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lDQWdJQ0J2YmtsdWRtRnNhV1JUZFdKdGFYUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR2x6UTJGc2JHVmtJRDBnZEhKMVpUdGNiaUFnSUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUNnZ1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQnZia2x1ZG1Gc2FXUlRkV0p0YVhROWUzUm9hWE11YjI1SmJuWmhiR2xrVTNWaWJXbDBmVDRnWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEZSbGMzUkpibkIxZENCdVlXMWxQVndpWm05dlhDSWdkbUZzYVdSaGRHbHZibk05WENKcGMwVnRZV2xzWENJZ2RtRnNkV1U5WENKbWIyOUFZbUZ5WENJdlBseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQaWs3WEc0Z0lDQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtDQmNiaUFnSUNBZ0lDQWdJQ0E4VkdWemRFWnZjbTB2UGlCY2JpQWdJQ0FnSUNBZ0tUdGNibHh1SUNBZ0lDQWdJQ0IyWVhJZ1ZHVnpkRVp2Y20wZ1BTQlVaWE4wVlhScGJITXVabWx1WkZKbGJtUmxjbVZrUTI5dGNHOXVaVzUwVjJsMGFGUjVjR1VvWm05eWJTd2dWR1Z6ZEVadmNtMHBPMXh1SUNBZ0lDQWdJQ0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1YzNWaWJXbDBLRlJsYzNSR2IzSnRMbWRsZEVSUFRVNXZaR1VvS1NrN0lDQmNiaUFnSUNBZ0lDQWdaWGh3WldOMEtHbHpRMkZzYkdWa0tTNTBiMEpsS0hSeWRXVXBPMXh1WEc0Z0lDQWdmU2s3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdaR1Z6WTNKcFltVW9YQ0oyWVd4MVpTQTlQVDBnWm1Gc2MyVmNJaXdnWm5WdVkzUnBiMjRvS1NCN1hHNGdJQ0FnZG1GeUlHOXVVM1ZpYldsME8xeHVJQ0FnSUhaaGNpQlVaWE4wU1c1d2RYUWdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ1oyVjBSR1ZtWVhWc2RGQnliM0J6T2lCbWRXNWpkR2x2YmlncElIdGNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlIdGNiaUFnSUNBZ0lDQWdJQ0IwZVhCbE9pQmNJblJsZUhSY0lpeGNiaUFnSUNBZ0lDQWdmVHRjYmlBZ0lDQWdJSDBzWEc0Z0lDQWdJQ0JqYUdGdVoyVldZV3gxWlRvZ1puVnVZM1JwYjI0b0tTQjdYRzRnSUNBZ0lDQWdJSFJvYVhNdWMyVjBWbUZzZFdVb1pTNTBZWEpuWlhSYmRHaHBjeTV3Y205d2N5NTBlWEJsSUQwOVBTQmNJbU5vWldOclltOTRYQ0lnUHlCY0ltTm9aV05yWldSY0lpQTZJRndpZG1Gc2RXVmNJbDBwTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhSNWNHVTlleUIwYUdsekxuQnliM0J6TG5SNWNHVWdmU0IyWVd4MVpUMTdJSFJvYVhNdVoyVjBWbUZzZFdVb0tTQjlJRzl1UTJoaGJtZGxQWHNnZEdocGN5NWphR0Z1WjJWV1lXeDFaU0I5THo1Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5S1R0Y2JseHVJQ0FnSUhaaGNpQlVaWE4wUm05eWJTQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnS0Z4dUlDQWdJQ0FnSUNBZ0lEeEdiM0p0YzNrdVJtOXliU0J2YmxOMVltMXBkRDE3SUdaMWJtTjBhVzl1S0dGeVp6RXBJSHNnYjI1VGRXSnRhWFFvWVhKbk1TazdJSDBnZlQ1Y2JpQWdJQ0FnSUNBZ0lDQWdJRHhVWlhOMFNXNXdkWFFnYm1GdFpUMWNJbVp2YjF3aUlIWmhiSFZsUFhzZ2RHaHBjeTV3Y205d2N5NTJZV3gxWlNCOUlIUjVjR1U5WENKamFHVmphMkp2ZUZ3aUlDOCtYRzRnSUNBZ0lDQWdJQ0FnSUNBOFluVjBkRzl1SUhSNWNHVTlYQ0p6ZFdKdGFYUmNJajVUWVhabFBDOWlkWFIwYjI0K1hHNGdJQ0FnSUNBZ0lDQWdQQzlHYjNKdGMza3VSbTl5YlQ1Y2JpQWdJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lIMWNiaUFnSUNCOUtUdGNibHh1SUNBZ0lHSmxabTl5WlVWaFkyZ29ablZ1WTNScGIyNG9LU0I3WEc0Z0lDQWdJQ0J2YmxOMVltMXBkQ0E5SUdwaGMyMXBibVV1WTNKbFlYUmxVM0I1S0Z3aWIyNVRkV0p0YVhSY0lpazdYRzRnSUNBZ2ZTazdYRzVjYmlBZ0lDQnBkQ2hjSW5Ob2IzVnNaQ0JqWVd4c0lHOXVVM1ZpYldsMElHTnZjbkpsWTNSc2VWd2lMQ0JtZFc1amRHbHZiaWdwSUh0Y2JpQWdJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDZzhWR1Z6ZEVadmNtMGdkbUZzZFdVOWV5Qm1ZV3h6WlNCOUx6NHBPMXh1SUNBZ0lDQWdWR1Z6ZEZWMGFXeHpMbE5wYlhWc1lYUmxMbk4xWW0xcGRDaG1iM0p0TG1kbGRFUlBUVTV2WkdVb0tTazdYRzRnSUNBZ0lDQmxlSEJsWTNRb2IyNVRkV0p0YVhRcExuUnZTR0YyWlVKbFpXNURZV3hzWldSWGFYUm9LSHRtYjI4NklHWmhiSE5sZlNrN1hHNGdJQ0FnZlNrN1hHNWNiaUFnSUNCcGRDaGNJbk5vYjNWc1pDQmhiR3h2ZHlCa2VXNWhiV2xqSUdOb1lXNW5aWE1nZEc4Z1ptRnNjMlZjSWl3Z1puVnVZM1JwYjI0b0tTQjdYRzRnSUNBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvUEZSbGMzUkdiM0p0SUhaaGJIVmxQWHNnZEhKMVpTQjlMejRwTzF4dUlDQWdJQ0FnWm05eWJTNXpaWFJRY205d2N5aDdkbUZzZFdVNklHWmhiSE5sZlNrN1hHNGdJQ0FnSUNCVVpYTjBWWFJwYkhNdVUybHRkV3hoZEdVdWMzVmliV2wwS0dadmNtMHVaMlYwUkU5TlRtOWtaU2dwS1R0Y2JpQWdJQ0FnSUdWNGNHVmpkQ2h2YmxOMVltMXBkQ2t1ZEc5SVlYWmxRbVZsYmtOaGJHeGxaRmRwZEdnb2UyWnZiem9nWm1Gc2MyVjlLVHRjYmlBZ0lDQjlLVHRjYmlBZ2ZTazdYRzU5S1R0Y2JpSmRmUT09IiwidmFyIEZvcm1zeSA9IHJlcXVpcmUoJy4vLi4vc3JjL21haW4uanMnKTtcblxuZGVzY3JpYmUoJ0FqYXgnLCBmdW5jdGlvbigpIHtcblxuICBiZWZvcmVFYWNoKGZ1bmN0aW9uICgpIHtcbiAgICBqYXNtaW5lLkFqYXguaW5zdGFsbCgpO1xuICB9KTtcblxuICBhZnRlckVhY2goZnVuY3Rpb24gKCkge1xuICAgIGphc21pbmUuQWpheC51bmluc3RhbGwoKTtcbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBwb3N0IHRvIGEgZ2l2ZW4gdXJsIGlmIHBhc3NlZCcsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCJ9XG4gICAgICApXG4gICAgKTtcbiAgICBcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICBleHBlY3QoamFzbWluZS5BamF4LnJlcXVlc3RzLm1vc3RSZWNlbnQoKS51cmwpLnRvQmUoJy91c2VycycpO1xuICAgIGV4cGVjdChqYXNtaW5lLkFqYXgucmVxdWVzdHMubW9zdFJlY2VudCgpLm1ldGhvZCkudG9CZSgnUE9TVCcpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgcHV0IHRvIGEgZ2l2ZW4gdXJsIGlmIHBhc3NlZCBhIG1ldGhvZCBhdHRyaWJ1dGUnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wiLCBtZXRob2Q6IFwiUFVUXCJ9XG4gICAgICApXG4gICAgKTtcbiAgICBcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcbiAgICBleHBlY3QoamFzbWluZS5BamF4LnJlcXVlc3RzLm1vc3RSZWNlbnQoKS51cmwpLnRvQmUoJy91c2VycycpO1xuICAgIGV4cGVjdChqYXNtaW5lLkFqYXgucmVxdWVzdHMubW9zdFJlY2VudCgpLm1ldGhvZCkudG9CZSgnUFVUJyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBwYXNzIHgtd3d3LWZvcm0tdXJsZW5jb2RlZCBhcyBjb250ZW50VHlwZSB3aGVuIHVybGVuY29kZWQgaXMgc2V0IGFzIGNvbnRlbnRUeXBlJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIiwgY29udGVudFR5cGU6IFwidXJsZW5jb2RlZFwifVxuICAgICAgKVxuICAgICk7XG4gICAgXG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG4gICAgZXhwZWN0KGphc21pbmUuQWpheC5yZXF1ZXN0cy5tb3N0UmVjZW50KCkuY29udGVudFR5cGUoKSkudG9CZSgnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJyk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBydW4gYW4gb25TdWNjZXNzIGhhbmRsZXIsIGlmIHBhc3NlZCBhbmQgYWpheCBpcyBzdWNjZXNzZnVsbC4gRmlyc3QgYXJndW1lbnQgaXMgZGF0YSBmcm9tIHNlcnZlcicsIGZ1bmN0aW9uIChkb25lKSB7XG4gXG4gICAgdmFyIG9uU3VjY2VzcyA9IGphc21pbmUuY3JlYXRlU3B5KFwic3VjY2Vzc1wiKTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wiLCBvblN1Y2Nlc3M6IG9uU3VjY2Vzc31cbiAgICAgIClcbiAgICApO1xuICAgIFxuICAgIGphc21pbmUuQWpheC5zdHViUmVxdWVzdCgnL3VzZXJzJykuYW5kUmV0dXJuKHtcbiAgICAgIHN0YXR1czogMjAwLFxuICAgICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIHJlc3BvbnNlVGV4dDogJ3t9J1xuICAgIH0pO1xuXG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG5cbiAgICAvLyBTaW5jZSBhamF4IGlzIHJldHVybmVkIGFzIGEgcHJvbWlzZSAoYXN5bmMpLCBtb3ZlIGFzc2VydGlvblxuICAgIC8vIHRvIGVuZCBvZiBldmVudCBsb29wXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBleHBlY3Qob25TdWNjZXNzKS50b0hhdmVCZWVuQ2FsbGVkV2l0aCh7fSk7XG4gICAgICBkb25lKCk7XG4gICAgfSwgMCk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCBub3QgZG8gYWpheCByZXF1ZXN0IGlmIG9uU3VibWl0IGhhbmRsZXIgaXMgcGFzc2VkLCBidXQgcGFzcyB0aGUgbW9kZWwgYXMgZmlyc3QgYXJndW1lbnQgdG8gb25TdWJtaXQgaGFuZGxlcicsIGZ1bmN0aW9uICgpIHtcbiAgICBcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25TdWJtaXQ6IG9uU3VibWl0fSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiYmFyXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuc3VibWl0KGZvcm0uZ2V0RE9NTm9kZSgpKTtcblxuICAgIGV4cGVjdChqYXNtaW5lLkFqYXgucmVxdWVzdHMuY291bnQoKSkudG9CZSgwKTtcblxuICAgIGZ1bmN0aW9uIG9uU3VibWl0IChkYXRhKSB7XG4gICAgICBleHBlY3QoZGF0YSkudG9FcXVhbCh7XG4gICAgICAgIGZvbzogJ2JhcidcbiAgICAgIH0pO1xuICAgIH1cblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHRyaWdnZXIgYW4gb25TdWJtaXR0ZWQgaGFuZGxlciwgaWYgcGFzc2VkIGFuZCB0aGUgc3VibWl0IGhhcyByZXNwb25kZWQgd2l0aCBTVUNDRVNTJywgZnVuY3Rpb24gKGRvbmUpIHtcbiAgICBcbiAgICB2YXIgb25TdWJtaXR0ZWQgPSBqYXNtaW5lLmNyZWF0ZVNweShcInN1Ym1pdHRlZFwiKTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7dXJsOiBcIi91c2Vyc1wiLCBvblN1Ym1pdHRlZDogb25TdWJtaXR0ZWR9XG4gICAgICApXG4gICAgKTtcbiAgICBcbiAgICBqYXNtaW5lLkFqYXguc3R1YlJlcXVlc3QoJy91c2VycycpLmFuZFJldHVybih7XG4gICAgICBzdGF0dXM6IDIwMCxcbiAgICAgIGNvbnRlbnRUeXBlOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICByZXNwb25zZVRleHQ6ICd7fSdcbiAgICB9KTtcblxuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5zdWJtaXQoZm9ybS5nZXRET01Ob2RlKCkpO1xuXG4gICAgLy8gU2luY2UgYWpheCBpcyByZXR1cm5lZCBhcyBhIHByb21pc2UgKGFzeW5jKSwgbW92ZSBhc3NlcnRpb25cbiAgICAvLyB0byBlbmQgb2YgZXZlbnQgbG9vcFxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgZXhwZWN0KG9uU3VibWl0dGVkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgICBkb25lKCk7XG4gICAgfSwgMCk7XG5cbiAgfSk7XG5cbiAgaXQoJ3Nob3VsZCB0cmlnZ2VyIGFuIG9uU3VibWl0dGVkIGhhbmRsZXIsIGlmIHBhc3NlZCBhbmQgdGhlIHN1Ym1pdCBoYXMgcmVzcG9uZGVkIHdpdGggRVJST1InLCBmdW5jdGlvbiAoZG9uZSkge1xuICAgIFxuICAgIHZhciBvblN1Ym1pdHRlZCA9IGphc21pbmUuY3JlYXRlU3B5KFwic3VibWl0dGVkXCIpO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIHt1cmw6IFwiL3VzZXJzXCIsIG9uU3VibWl0dGVkOiBvblN1Ym1pdHRlZH1cbiAgICAgIClcbiAgICApO1xuICAgIFxuICAgIGphc21pbmUuQWpheC5zdHViUmVxdWVzdCgnL3VzZXJzJykuYW5kUmV0dXJuKHtcbiAgICAgIHN0YXR1czogNTAwLFxuICAgICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIHJlc3BvbnNlVGV4dDogJ3t9J1xuICAgIH0pO1xuXG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG5cbiAgICAvLyBTaW5jZSBhamF4IGlzIHJldHVybmVkIGFzIGEgcHJvbWlzZSAoYXN5bmMpLCBtb3ZlIGFzc2VydGlvblxuICAgIC8vIHRvIGVuZCBvZiBldmVudCBsb29wXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBleHBlY3Qob25TdWJtaXR0ZWQpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgIGRvbmUoKTtcbiAgICB9LCAwKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHRyaWdnZXIgYW4gb25FcnJvciBoYW5kbGVyLCBpZiBwYXNzZWQgYW5kIHRoZSBzdWJtaXQgaGFzIHJlc3BvbmRlZCB3aXRoIEVSUk9SJywgZnVuY3Rpb24gKGRvbmUpIHtcbiAgICBcbiAgICB2YXIgb25FcnJvciA9IGphc21pbmUuY3JlYXRlU3B5KFwiZXJyb3JcIik7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwge3VybDogXCIvdXNlcnNcIiwgb25FcnJvcjogb25FcnJvcn1cbiAgICAgIClcbiAgICApO1xuICAgIFxuICAgIC8vIERvIG5vdCByZXR1cm4gYW55IGVycm9yIGJlY2F1c2UgdGhlcmUgYXJlIG5vIGlucHV0c1xuICAgIGphc21pbmUuQWpheC5zdHViUmVxdWVzdCgnL3VzZXJzJykuYW5kUmV0dXJuKHtcbiAgICAgIHN0YXR1czogNTAwLFxuICAgICAgY29udGVudFR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgIHJlc3BvbnNlVGV4dDogJ3t9J1xuICAgIH0pO1xuXG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLnN1Ym1pdChmb3JtLmdldERPTU5vZGUoKSk7XG5cbiAgICAvLyBTaW5jZSBhamF4IGlzIHJldHVybmVkIGFzIGEgcHJvbWlzZSAoYXN5bmMpLCBtb3ZlIGFzc2VydGlvblxuICAgIC8vIHRvIGVuZCBvZiBldmVudCBsb29wXG4gICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG4gICAgICBleHBlY3Qob25FcnJvcikudG9IYXZlQmVlbkNhbGxlZFdpdGgoe30pO1xuICAgICAgZG9uZSgpO1xuICAgIH0sIDApO1xuXG4gIH0pO1xuXG59KTtcblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjR1ZqY3k5VGRXSnRhWFF0YzNCbFl5NXFjeUlzSW5OdmRYSmpaWE1pT2xzaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y0dWamN5OVRkV0p0YVhRdGMzQmxZeTVxY3lKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pUVVGQlFTeEpRVUZKTEUxQlFVMHNSMEZCUnl4UFFVRlBMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNRMEZCUXpzN1FVRkZla01zVVVGQlVTeERRVUZETEUxQlFVMHNSVUZCUlN4WFFVRlhPenRGUVVVeFFpeFZRVUZWTEVOQlFVTXNXVUZCV1R0SlFVTnlRaXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4RFFVRkRPMEZCUXpOQ0xFZEJRVWNzUTBGQlF5eERRVUZET3p0RlFVVklMRk5CUVZNc1EwRkJReXhaUVVGWk8wbEJRM0JDTEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhGUVVGRkxFTkJRVU03UVVGRE4wSXNSMEZCUnl4RFFVRkRMRU5CUVVNN08wRkJSVXdzUlVGQlJTeEZRVUZGTEVOQlFVTXNjME5CUVhORExFVkJRVVVzV1VGQldUczdTVUZGY2tRc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFZEJRVUVzUlVGQlJ5eERRVUZETEZGQlFWTXNRMEZCUVR0TlFVTmFMRU5CUVVFN1FVRkRjRUlzUzBGQlN5eERRVUZET3p0SlFVVkdMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhEUVVGRE8wbEJRemRETEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTTdRVUZEYkVVc1NVRkJTU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE96dEJRVVZ1UlN4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl4M1JFRkJkMFFzUlVGQlJTeFpRVUZaT3p0SlFVVjJSU3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08wMUJRM0pETEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVNc1RVRkJRU3hGUVVGTkxFTkJRVU1zUzBGQlRTeERRVUZCTzAxQlEzcENMRU5CUVVFN1FVRkRjRUlzUzBGQlN5eERRVUZET3p0SlFVVkdMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhEUVVGRE8wbEJRemRETEUxQlFVMHNRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF5eFZRVUZWTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTTdRVUZEYkVVc1NVRkJTU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE96dEJRVVZzUlN4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl4M1JrRkJkMFlzUlVGQlJTeFpRVUZaT3p0SlFVVjJSeXhKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08wMUJRM0pETEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hEUVVGQkxFTkJRVU1zUjBGQlFTeEZRVUZITEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVNc1YwRkJRU3hGUVVGWExFTkJRVU1zV1VGQllTeERRVUZCTzAxQlEzSkRMRU5CUVVFN1FVRkRjRUlzUzBGQlN5eERRVUZET3p0SlFVVkdMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1EwRkJReXhEUVVGRE8wRkJRMnBFTEVsQlFVa3NUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEZWQlFWVXNSVUZCUlN4RFFVRkRMRmRCUVZjc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEcxRFFVRnRReXhEUVVGRExFTkJRVU03TzBGQlJYWkhMRWRCUVVjc1EwRkJReXhEUVVGRE96dEJRVVZNTEVWQlFVVXNSVUZCUlN4RFFVRkRMSGRIUVVGM1J5eEZRVUZGTEZWQlFWVXNTVUZCU1N4RlFVRkZPenRKUVVVelNDeEpRVUZKTEZOQlFWTXNSMEZCUnl4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETzBsQlF6ZERMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1RVRkRja01zYjBKQlFVTXNWMEZCVnl4RlFVRkJMRU5CUVVFc1EwRkJReXhIUVVGQkxFVkJRVWNzUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUXl4VFFVRkJMRVZCUVZNc1EwRkJSU3hUUVVGWExFTkJRVUU3VFVGRGJFTXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNVMEZCVXl4RFFVRkRPMDFCUXpORExFMUJRVTBzUlVGQlJTeEhRVUZITzAxQlExZ3NWMEZCVnl4RlFVRkZMR3RDUVVGclFqdE5RVU12UWl4WlFVRlpMRVZCUVVVc1NVRkJTVHRCUVVONFFpeExRVUZMTEVOQlFVTXNRMEZCUXpzN1FVRkZVQ3hKUVVGSkxGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETzBGQlEycEVPMEZCUTBFN08wbEJSVWtzVlVGQlZTeERRVUZETEZsQlFWazdUVUZEY2tJc1RVRkJUU3hEUVVGRExGTkJRVk1zUTBGQlF5eERRVUZETEc5Q1FVRnZRaXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzAxQlF6TkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8wRkJRMklzUzBGQlN5eEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRPenRCUVVWV0xFZEJRVWNzUTBGQlF5eERRVUZET3p0QlFVVk1MRVZCUVVVc1JVRkJSU3hEUVVGRExHOUlRVUZ2U0N4RlFVRkZMRmxCUVZrN08wbEJSVzVKTEVsQlFVa3NLMEpCUVN0Q0xIbENRVUZCTzAxQlEycERMRTFCUVUwc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTTdUVUZEZEVJc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVWNzUTBGQlJTeERRVUZCTzA5QlEzaERPMHRCUTBZc1EwRkJReXhEUVVGRE8wbEJRMGdzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdE5RVU55UXl4dlFrRkJReXhYUVVGWExFVkJRVUVzUTBGQlFTeERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRkZCUVZVc1EwRkJRU3hGUVVGQk8xRkJReTlDTEc5Q1FVRkRMRk5CUVZNc1JVRkJRU3hEUVVGQkxFTkJRVU1zU1VGQlFTeEZRVUZKTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zUzBGQlN5eERRVUZGTEVOQlFVRTdUVUZEZGtJc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMEZCUlU0c1NVRkJTU3hUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zUTBGQlF6czdRVUZGYWtRc1NVRkJTU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN08wbEJSVGxETEZOQlFWTXNVVUZCVVN4RlFVRkZMRWxCUVVrc1JVRkJSVHROUVVOMlFpeE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1QwRkJUeXhEUVVGRE8xRkJRMjVDTEVkQlFVY3NSVUZCUlN4TFFVRkxPMDlCUTFnc1EwRkJReXhEUVVGRE8wRkJRMVFzUzBGQlN6czdRVUZGVEN4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl3MFJrRkJORVlzUlVGQlJTeFZRVUZWTEVsQlFVa3NSVUZCUlRzN1NVRkZMMGNzU1VGQlNTeFhRVUZYTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhYUVVGWExFTkJRVU1zUTBGQlF6dEpRVU5xUkN4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4RFFVRkJMRU5CUVVNc1IwRkJRU3hGUVVGSExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVTXNWMEZCUVN4RlFVRlhMRU5CUVVVc1YwRkJZU3hEUVVGQk8wMUJRM1JETEVOQlFVRTdRVUZEY0VJc1MwRkJTeXhEUVVGRE96dEpRVVZHTEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1YwRkJWeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETEZOQlFWTXNRMEZCUXp0TlFVTXpReXhOUVVGTkxFVkJRVVVzUjBGQlJ6dE5RVU5ZTEZkQlFWY3NSVUZCUlN4clFrRkJhMEk3VFVGREwwSXNXVUZCV1N4RlFVRkZMRWxCUVVrN1FVRkRlRUlzUzBGQlN5eERRVUZETEVOQlFVTTdPMEZCUlZBc1NVRkJTU3hUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEJRVU5xUkR0QlFVTkJPenRKUVVWSkxGVkJRVlVzUTBGQlF5eFpRVUZaTzAxQlEzSkNMRTFCUVUwc1EwRkJReXhYUVVGWExFTkJRVU1zUTBGQlF5eG5Ra0ZCWjBJc1JVRkJSU3hEUVVGRE8wMUJRM1pETEVsQlFVa3NSVUZCUlN4RFFVRkRPMEZCUTJJc1MwRkJTeXhGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZET3p0QlFVVldMRWRCUVVjc1EwRkJReXhEUVVGRE96dEJRVVZNTEVWQlFVVXNSVUZCUlN4RFFVRkRMREJHUVVFd1JpeEZRVUZGTEZWQlFWVXNTVUZCU1N4RlFVRkZPenRKUVVVM1J5eEpRVUZKTEZkQlFWY3NSMEZCUnl4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExGZEJRVmNzUTBGQlF5eERRVUZETzBsQlEycEVMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1RVRkRja01zYjBKQlFVTXNWMEZCVnl4RlFVRkJMRU5CUVVFc1EwRkJReXhIUVVGQkxFVkJRVWNzUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUXl4WFFVRkJMRVZCUVZjc1EwRkJSU3hYUVVGaExFTkJRVUU3VFVGRGRFTXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhYUVVGWExFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNVMEZCVXl4RFFVRkRPMDFCUXpORExFMUJRVTBzUlVGQlJTeEhRVUZITzAxQlExZ3NWMEZCVnl4RlFVRkZMR3RDUVVGclFqdE5RVU12UWl4WlFVRlpMRVZCUVVVc1NVRkJTVHRCUVVONFFpeExRVUZMTEVOQlFVTXNRMEZCUXpzN1FVRkZVQ3hKUVVGSkxGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhWUVVGVkxFVkJRVVVzUTBGQlF5eERRVUZETzBGQlEycEVPMEZCUTBFN08wbEJSVWtzVlVGQlZTeERRVUZETEZsQlFWazdUVUZEY2tJc1RVRkJUU3hEUVVGRExGZEJRVmNzUTBGQlF5eERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFTkJRVU03VFVGRGRrTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1FVRkRZaXhMUVVGTExFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTTdPMEZCUlZZc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2MwWkJRWE5HTEVWQlFVVXNWVUZCVlN4SlFVRkpMRVZCUVVVN08wbEJSWHBITEVsQlFVa3NUMEZCVHl4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEZWtNc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFZEJRVUVzUlVGQlJ5eERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkRMRTlCUVVFc1JVRkJUeXhEUVVGRkxFOUJRVk1zUTBGQlFUdE5RVU01UWl4RFFVRkJPMEZCUTNCQ0xFdEJRVXNzUTBGQlF6dEJRVU5PT3p0SlFVVkpMRTlCUVU4c1EwRkJReXhKUVVGSkxFTkJRVU1zVjBGQlZ5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRMRk5CUVZNc1EwRkJRenROUVVNelF5eE5RVUZOTEVWQlFVVXNSMEZCUnp0TlFVTllMRmRCUVZjc1JVRkJSU3hyUWtGQmEwSTdUVUZETDBJc1dVRkJXU3hGUVVGRkxFbEJRVWs3UVVGRGVFSXNTMEZCU3l4RFFVRkRMRU5CUVVNN08wRkJSVkFzU1VGQlNTeFRRVUZUTEVOQlFVTXNVVUZCVVN4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTnFSRHRCUVVOQk96dEpRVVZKTEZWQlFWVXNRMEZCUXl4WlFVRlpPMDFCUTNKQ0xFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4dlFrRkJiMElzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXp0TlFVTjZReXhKUVVGSkxFVkJRVVVzUTBGQlF6dEJRVU5pTEV0QlFVc3NSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenM3UVVGRlZpeEhRVUZITEVOQlFVTXNRMEZCUXpzN1EwRkZTaXhEUVVGRExFTkJRVU1pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKMllYSWdSbTl5YlhONUlEMGdjbVZ4ZFdseVpTZ25MaTh1TGk5emNtTXZiV0ZwYmk1cWN5Y3BPMXh1WEc1a1pYTmpjbWxpWlNnblFXcGhlQ2NzSUdaMWJtTjBhVzl1S0NrZ2UxeHVYRzRnSUdKbFptOXlaVVZoWTJnb1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lHcGhjMjFwYm1VdVFXcGhlQzVwYm5OMFlXeHNLQ2s3WEc0Z0lIMHBPMXh1WEc0Z0lHRm1kR1Z5UldGamFDaG1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdhbUZ6YldsdVpTNUJhbUY0TG5WdWFXNXpkR0ZzYkNncE8xeHVJQ0I5S1R0Y2JseHVJQ0JwZENnbmMyaHZkV3hrSUhCdmMzUWdkRzhnWVNCbmFYWmxiaUIxY213Z2FXWWdjR0Z6YzJWa0p5d2dablZ1WTNScGIyNGdLQ2tnZTF4dVhHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJSFZ5YkQxY0lpOTFjMlZ5YzF3aVBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1SUNBZ0lGeHVJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvWm05eWJTNW5aWFJFVDAxT2IyUmxLQ2twTzF4dUlDQWdJR1Y0Y0dWamRDaHFZWE50YVc1bExrRnFZWGd1Y21WeGRXVnpkSE11Ylc5emRGSmxZMlZ1ZENncExuVnliQ2t1ZEc5Q1pTZ25MM1Z6WlhKekp5azdYRzRnSUNBZ1pYaHdaV04wS0dwaGMyMXBibVV1UVdwaGVDNXlaWEYxWlhOMGN5NXRiM04wVW1WalpXNTBLQ2t1YldWMGFHOWtLUzUwYjBKbEtDZFFUMU5VSnlrN1hHNWNiaUFnZlNrN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCd2RYUWdkRzhnWVNCbmFYWmxiaUIxY213Z2FXWWdjR0Z6YzJWa0lHRWdiV1YwYUc5a0lHRjBkSEpwWW5WMFpTY3NJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JseHVJQ0FnSUhaaGNpQm1iM0p0SUQwZ1ZHVnpkRlYwYVd4ekxuSmxibVJsY2tsdWRHOUViMk4xYldWdWRDaGNiaUFnSUNBZ0lEeEdiM0p0YzNrdVJtOXliU0IxY213OVhDSXZkWE5sY25OY0lpQnRaWFJvYjJROVhDSlFWVlJjSWo1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNiaUFnSUNCY2JpQWdJQ0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1YzNWaWJXbDBLR1p2Y20wdVoyVjBSRTlOVG05a1pTZ3BLVHRjYmlBZ0lDQmxlSEJsWTNRb2FtRnpiV2x1WlM1QmFtRjRMbkpsY1hWbGMzUnpMbTF2YzNSU1pXTmxiblFvS1M1MWNtd3BMblJ2UW1Vb0p5OTFjMlZ5Y3ljcE8xeHVJQ0FnSUdWNGNHVmpkQ2hxWVhOdGFXNWxMa0ZxWVhndWNtVnhkV1Z6ZEhNdWJXOXpkRkpsWTJWdWRDZ3BMbTFsZEdodlpDa3VkRzlDWlNnblVGVlVKeWs3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0J3WVhOeklIZ3RkM2QzTFdadmNtMHRkWEpzWlc1amIyUmxaQ0JoY3lCamIyNTBaVzUwVkhsd1pTQjNhR1Z1SUhWeWJHVnVZMjlrWldRZ2FYTWdjMlYwSUdGeklHTnZiblJsYm5SVWVYQmxKeXdnWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUhWeWJEMWNJaTkxYzJWeWMxd2lJR052Ym5SbGJuUlVlWEJsUFZ3aWRYSnNaVzVqYjJSbFpGd2lQbHh1SUNBZ0lDQWdQQzlHYjNKdGMza3VSbTl5YlQ1Y2JpQWdJQ0FwTzF4dUlDQWdJRnh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNXpkV0p0YVhRb1ptOXliUzVuWlhSRVQwMU9iMlJsS0NrcE8xeHVJQ0FnSUdWNGNHVmpkQ2hxWVhOdGFXNWxMa0ZxWVhndWNtVnhkV1Z6ZEhNdWJXOXpkRkpsWTJWdWRDZ3BMbU52Ym5SbGJuUlVlWEJsS0NrcExuUnZRbVVvSjJGd2NHeHBZMkYwYVc5dUwzZ3RkM2QzTFdadmNtMHRkWEpzWlc1amIyUmxaQ2NwTzF4dVhHNGdJSDBwTzF4dVhHNGdJR2wwS0NkemFHOTFiR1FnY25WdUlHRnVJRzl1VTNWalkyVnpjeUJvWVc1a2JHVnlMQ0JwWmlCd1lYTnpaV1FnWVc1a0lHRnFZWGdnYVhNZ2MzVmpZMlZ6YzJaMWJHd3VJRVpwY25OMElHRnlaM1Z0Wlc1MElHbHpJR1JoZEdFZ1puSnZiU0J6WlhKMlpYSW5MQ0JtZFc1amRHbHZiaUFvWkc5dVpTa2dlMXh1SUZ4dUlDQWdJSFpoY2lCdmJsTjFZMk5sYzNNZ1BTQnFZWE50YVc1bExtTnlaV0YwWlZOd2VTaGNJbk4xWTJObGMzTmNJaWs3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEVadmNtMXplUzVHYjNKdElIVnliRDFjSWk5MWMyVnljMXdpSUc5dVUzVmpZMlZ6Y3oxN2IyNVRkV05qWlhOemZUNWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmlBZ0lDQmNiaUFnSUNCcVlYTnRhVzVsTGtGcVlYZ3VjM1IxWWxKbGNYVmxjM1FvSnk5MWMyVnljeWNwTG1GdVpGSmxkSFZ5YmloN1hHNGdJQ0FnSUNCemRHRjBkWE02SURJd01DeGNiaUFnSUNBZ0lHTnZiblJsYm5SVWVYQmxPaUFuWVhCd2JHbGpZWFJwYjI0dmFuTnZiaWNzWEc0Z0lDQWdJQ0J5WlhOd2IyNXpaVlJsZUhRNklDZDdmU2RjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzV6ZFdKdGFYUW9abTl5YlM1blpYUkVUMDFPYjJSbEtDa3BPMXh1WEc0Z0lDQWdMeThnVTJsdVkyVWdZV3BoZUNCcGN5QnlaWFIxY201bFpDQmhjeUJoSUhCeWIyMXBjMlVnS0dGemVXNWpLU3dnYlc5MlpTQmhjM05sY25ScGIyNWNiaUFnSUNBdkx5QjBieUJsYm1RZ2IyWWdaWFpsYm5RZ2JHOXZjRnh1SUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnWlhod1pXTjBLRzl1VTNWalkyVnpjeWt1ZEc5SVlYWmxRbVZsYmtOaGJHeGxaRmRwZEdnb2UzMHBPMXh1SUNBZ0lDQWdaRzl1WlNncE8xeHVJQ0FnSUgwc0lEQXBPMXh1WEc0Z0lIMHBPMXh1WEc0Z0lHbDBLQ2R6YUc5MWJHUWdibTkwSUdSdklHRnFZWGdnY21WeGRXVnpkQ0JwWmlCdmJsTjFZbTFwZENCb1lXNWtiR1Z5SUdseklIQmhjM05sWkN3Z1luVjBJSEJoYzNNZ2RHaGxJRzF2WkdWc0lHRnpJR1pwY25OMElHRnlaM1Z0Wlc1MElIUnZJRzl1VTNWaWJXbDBJR2hoYm1Sc1pYSW5MQ0JtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnWEc0Z0lDQWdkbUZ5SUZSbGMzUkpibkIxZENBOUlGSmxZV04wTG1OeVpXRjBaVU5zWVhOektIdGNiaUFnSUNBZ0lHMXBlR2x1Y3pvZ1cwWnZjbTF6ZVM1TmFYaHBibDBzWEc0Z0lDQWdJQ0J5Wlc1a1pYSTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4cGJuQjFkQ0IyWVd4MVpUMTdkR2hwY3k1blpYUldZV3gxWlNncGZTOCtYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUc5dVUzVmliV2wwUFh0dmJsTjFZbTFwZEgwK1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhaaGJIVmxQVndpWW1GeVhDSXZQbHh1SUNBZ0lDQWdQQzlHYjNKdGMza3VSbTl5YlQ1Y2JpQWdJQ0FwTzF4dVhHNGdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG5OMVltMXBkQ2htYjNKdExtZGxkRVJQVFU1dlpHVW9LU2s3WEc1Y2JpQWdJQ0JsZUhCbFkzUW9hbUZ6YldsdVpTNUJhbUY0TG5KbGNYVmxjM1J6TG1OdmRXNTBLQ2twTG5SdlFtVW9NQ2s3WEc1Y2JpQWdJQ0JtZFc1amRHbHZiaUJ2YmxOMVltMXBkQ0FvWkdGMFlTa2dlMXh1SUNBZ0lDQWdaWGh3WldOMEtHUmhkR0VwTG5SdlJYRjFZV3dvZTF4dUlDQWdJQ0FnSUNCbWIyODZJQ2RpWVhJblhHNGdJQ0FnSUNCOUtUdGNiaUFnSUNCOVhHNWNiaUFnZlNrN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCMGNtbG5aMlZ5SUdGdUlHOXVVM1ZpYldsMGRHVmtJR2hoYm1Sc1pYSXNJR2xtSUhCaGMzTmxaQ0JoYm1RZ2RHaGxJSE4xWW0xcGRDQm9ZWE1nY21WemNHOXVaR1ZrSUhkcGRHZ2dVMVZEUTBWVFV5Y3NJR1oxYm1OMGFXOXVJQ2hrYjI1bEtTQjdYRzRnSUNBZ1hHNGdJQ0FnZG1GeUlHOXVVM1ZpYldsMGRHVmtJRDBnYW1GemJXbHVaUzVqY21WaGRHVlRjSGtvWENKemRXSnRhWFIwWldSY0lpazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0SUhWeWJEMWNJaTkxYzJWeWMxd2lJRzl1VTNWaWJXbDBkR1ZrUFh0dmJsTjFZbTFwZEhSbFpIMCtYRzRnSUNBZ0lDQThMMFp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ2s3WEc0Z0lDQWdYRzRnSUNBZ2FtRnpiV2x1WlM1QmFtRjRMbk4wZFdKU1pYRjFaWE4wS0NjdmRYTmxjbk1uS1M1aGJtUlNaWFIxY200b2UxeHVJQ0FnSUNBZ2MzUmhkSFZ6T2lBeU1EQXNYRzRnSUNBZ0lDQmpiMjUwWlc1MFZIbHdaVG9nSjJGd2NHeHBZMkYwYVc5dUwycHpiMjRuTEZ4dUlDQWdJQ0FnY21WemNHOXVjMlZVWlhoME9pQW5lMzBuWEc0Z0lDQWdmU2s3WEc1Y2JpQWdJQ0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1YzNWaWJXbDBLR1p2Y20wdVoyVjBSRTlOVG05a1pTZ3BLVHRjYmx4dUlDQWdJQzh2SUZOcGJtTmxJR0ZxWVhnZ2FYTWdjbVYwZFhKdVpXUWdZWE1nWVNCd2NtOXRhWE5sSUNoaGMzbHVZeWtzSUcxdmRtVWdZWE56WlhKMGFXOXVYRzRnSUNBZ0x5OGdkRzhnWlc1a0lHOW1JR1YyWlc1MElHeHZiM0JjYmlBZ0lDQnpaWFJVYVcxbGIzVjBLR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUdWNGNHVmpkQ2h2YmxOMVltMXBkSFJsWkNrdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkNncE8xeHVJQ0FnSUNBZ1pHOXVaU2dwTzF4dUlDQWdJSDBzSURBcE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZHphRzkxYkdRZ2RISnBaMmRsY2lCaGJpQnZibE4xWW0xcGRIUmxaQ0JvWVc1a2JHVnlMQ0JwWmlCd1lYTnpaV1FnWVc1a0lIUm9aU0J6ZFdKdGFYUWdhR0Z6SUhKbGMzQnZibVJsWkNCM2FYUm9JRVZTVWs5U0p5d2dablZ1WTNScGIyNGdLR1J2Ym1VcElIdGNiaUFnSUNCY2JpQWdJQ0IyWVhJZ2IyNVRkV0p0YVhSMFpXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2hjSW5OMVltMXBkSFJsWkZ3aUtUdGNiaUFnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9YRzRnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTBnZFhKc1BWd2lMM1Z6WlhKelhDSWdiMjVUZFdKdGFYUjBaV1E5ZTI5dVUzVmliV2wwZEdWa2ZUNWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmlBZ0lDQmNiaUFnSUNCcVlYTnRhVzVsTGtGcVlYZ3VjM1IxWWxKbGNYVmxjM1FvSnk5MWMyVnljeWNwTG1GdVpGSmxkSFZ5YmloN1hHNGdJQ0FnSUNCemRHRjBkWE02SURVd01DeGNiaUFnSUNBZ0lHTnZiblJsYm5SVWVYQmxPaUFuWVhCd2JHbGpZWFJwYjI0dmFuTnZiaWNzWEc0Z0lDQWdJQ0J5WlhOd2IyNXpaVlJsZUhRNklDZDdmU2RjYmlBZ0lDQjlLVHRjYmx4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzV6ZFdKdGFYUW9abTl5YlM1blpYUkVUMDFPYjJSbEtDa3BPMXh1WEc0Z0lDQWdMeThnVTJsdVkyVWdZV3BoZUNCcGN5QnlaWFIxY201bFpDQmhjeUJoSUhCeWIyMXBjMlVnS0dGemVXNWpLU3dnYlc5MlpTQmhjM05sY25ScGIyNWNiaUFnSUNBdkx5QjBieUJsYm1RZ2IyWWdaWFpsYm5RZ2JHOXZjRnh1SUNBZ0lITmxkRlJwYldWdmRYUW9ablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJQ0FnWlhod1pXTjBLRzl1VTNWaWJXbDBkR1ZrS1M1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNGdJQ0FnSUNCa2IyNWxLQ2s3WEc0Z0lDQWdmU3dnTUNrN1hHNWNiaUFnZlNrN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCMGNtbG5aMlZ5SUdGdUlHOXVSWEp5YjNJZ2FHRnVaR3hsY2l3Z2FXWWdjR0Z6YzJWa0lHRnVaQ0IwYUdVZ2MzVmliV2wwSUdoaGN5QnlaWE53YjI1a1pXUWdkMmwwYUNCRlVsSlBVaWNzSUdaMWJtTjBhVzl1SUNoa2IyNWxLU0I3WEc0Z0lDQWdYRzRnSUNBZ2RtRnlJRzl1UlhKeWIzSWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2hjSW1WeWNtOXlYQ0lwTzF4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJTQjFjbXc5WENJdmRYTmxjbk5jSWlCdmJrVnljbTl5UFh0dmJrVnljbTl5ZlQ1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNiaUFnSUNCY2JpQWdJQ0F2THlCRWJ5QnViM1FnY21WMGRYSnVJR0Z1ZVNCbGNuSnZjaUJpWldOaGRYTmxJSFJvWlhKbElHRnlaU0J1YnlCcGJuQjFkSE5jYmlBZ0lDQnFZWE50YVc1bExrRnFZWGd1YzNSMVlsSmxjWFZsYzNRb0p5OTFjMlZ5Y3ljcExtRnVaRkpsZEhWeWJpaDdYRzRnSUNBZ0lDQnpkR0YwZFhNNklEVXdNQ3hjYmlBZ0lDQWdJR052Ym5SbGJuUlVlWEJsT2lBbllYQndiR2xqWVhScGIyNHZhbk52Ymljc1hHNGdJQ0FnSUNCeVpYTndiMjV6WlZSbGVIUTZJQ2Q3ZlNkY2JpQWdJQ0I5S1R0Y2JseHVJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1emRXSnRhWFFvWm05eWJTNW5aWFJFVDAxT2IyUmxLQ2twTzF4dVhHNGdJQ0FnTHk4Z1UybHVZMlVnWVdwaGVDQnBjeUJ5WlhSMWNtNWxaQ0JoY3lCaElIQnliMjFwYzJVZ0tHRnplVzVqS1N3Z2JXOTJaU0JoYzNObGNuUnBiMjVjYmlBZ0lDQXZMeUIwYnlCbGJtUWdiMllnWlhabGJuUWdiRzl2Y0Z4dUlDQWdJSE5sZEZScGJXVnZkWFFvWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ1pYaHdaV04wS0c5dVJYSnliM0lwTG5SdlNHRjJaVUpsWlc1RFlXeHNaV1JYYVhSb0tIdDlLVHRjYmlBZ0lDQWdJR1J2Ym1Vb0tUdGNiaUFnSUNCOUxDQXdLVHRjYmx4dUlDQjlLVHRjYmx4dWZTazdYRzRpWFgwPSIsInZhciBGb3Jtc3kgPSByZXF1aXJlKCcuLy4uL3NyYy9tYWluLmpzJyk7XG5cbmRlc2NyaWJlKCdWYWxpZGF0aW9uJywgZnVuY3Rpb24oKSB7XG5cbiAgaXQoJ3Nob3VsZCB0cmlnZ2VyIGFuIG9uVmFsaWQgaGFuZGxlciwgaWYgcGFzc2VkLCB3aGVuIGZvcm0gaXMgdmFsaWQnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgb25WYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCd2YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25WYWxpZDogb25WYWxpZH0sIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHJlcXVpcmVkOiB0cnVlfSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnZm9vJ319KTtcbiAgICBleHBlY3Qob25WYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdzaG91bGQgdHJpZ2dlciBhbiBvbkludmFsaWQgaGFuZGxlciwgaWYgcGFzc2VkLCB3aGVuIGZvcm0gaXMgaW52YWxpZCcsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBvbkludmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgnaW52YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCB7b25WYWxpZDogb25JbnZhbGlkfSwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICcnfX0pO1xuICAgIGV4cGVjdChvbkludmFsaWQpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcblxuICB9KTtcblxuICBpdCgnc2hvdWxkIHVzZSBwcm92aWRlZCB2YWxpZGF0ZSBmdW5jdGlvbicsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBpc1ZhbGlkID0gamFzbWluZS5jcmVhdGVTcHkoJ3ZhbGlkJyk7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNWYWxpZCgpKSB7XG4gICAgICAgICAgaXNWYWxpZCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH0sXG4gICAgICB2YWxpZGF0ZTogZnVuY3Rpb24gKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZSgpID09PSBcImNoZWNrVmFsaWRpdHlcIjtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJjaGVja0ludmFsaWRpdHlcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2NoZWNrVmFsaWRpdHknfX0pO1xuICAgIGV4cGVjdChpc1ZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG5cbiAgfSk7XG5cbiAgaXQoJ1JVTEU6IGlzRW1haWwnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCd2YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzRW1haWxcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIGV4cGVjdChpc1ZhbGlkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJ2Zvb0Bmb28uY29tJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdSVUxFOiBpc051bWVyaWMnLCBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IGphc21pbmUuY3JlYXRlU3B5KCd2YWxpZCcpO1xuICAgIHZhciBUZXN0SW5wdXQgPSBSZWFjdC5jcmVhdGVDbGFzcyh7ZGlzcGxheU5hbWU6IFwiVGVzdElucHV0XCIsXG4gICAgICBtaXhpbnM6IFtGb3Jtc3kuTWl4aW5dLFxuICAgICAgdXBkYXRlVmFsdWU6IGZ1bmN0aW9uIChldmVudCkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzTnVtZXJpY1wifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgZXhwZWN0KGlzVmFsaWQpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnMTIzJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdSVUxFOiBpc051bWVyaWMgKGFjdHVhbCBudW1iZXIpJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIGlzVmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgndmFsaWQnKTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShOdW1iZXIoZXZlbnQudGFyZ2V0LnZhbHVlKSk7XG4gICAgICB9LFxuICAgICAgcmVuZGVyOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWQoKSkge1xuICAgICAgICAgIGlzVmFsaWQoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIHt2YWx1ZTogdGhpcy5nZXRWYWx1ZSgpLCBvbkNoYW5nZTogdGhpcy51cGRhdGVWYWx1ZX0pXG4gICAgICB9XG4gICAgfSk7XG4gICAgdmFyIGZvcm0gPSBUZXN0VXRpbHMucmVuZGVySW50b0RvY3VtZW50KFxuICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChGb3Jtc3kuRm9ybSwgbnVsbCwgXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGVzdElucHV0LCB7bmFtZTogXCJmb29cIiwgdmFsdWU6IFwiZm9vXCIsIHZhbGlkYXRpb25zOiBcImlzTnVtZXJpY1wifSlcbiAgICAgIClcbiAgICApO1xuXG4gICAgdmFyIGlucHV0ID0gVGVzdFV0aWxzLmZpbmRSZW5kZXJlZERPTUNvbXBvbmVudFdpdGhUYWcoZm9ybSwgJ0lOUFVUJyk7XG4gICAgZXhwZWN0KGlzVmFsaWQpLm5vdC50b0hhdmVCZWVuQ2FsbGVkKCk7XG4gICAgVGVzdFV0aWxzLlNpbXVsYXRlLmNoYW5nZShpbnB1dCwge3RhcmdldDoge3ZhbHVlOiAnMTIzJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkudG9IYXZlQmVlbkNhbGxlZCgpO1xuXG4gIH0pO1xuXG4gIGl0KCdSVUxFOiBpc051bWVyaWMgKHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBhIGZsb2F0KScsIGZ1bmN0aW9uICgpIHtcblxuICAgIHZhciBpc1ZhbGlkID0gamFzbWluZS5jcmVhdGVTcHkoJ3ZhbGlkJyk7XG4gICAgdmFyIFRlc3RJbnB1dCA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJUZXN0SW5wdXRcIixcbiAgICAgIG1peGluczogW0Zvcm1zeS5NaXhpbl0sXG4gICAgICB1cGRhdGVWYWx1ZTogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuc2V0VmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH0sXG4gICAgICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNWYWxpZCgpKSB7XG4gICAgICAgICAgaXNWYWxpZCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBSZWFjdC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIiwge3ZhbHVlOiB0aGlzLmdldFZhbHVlKCksIG9uQ2hhbmdlOiB0aGlzLnVwZGF0ZVZhbHVlfSlcbiAgICAgIH1cbiAgICB9KTtcbiAgICB2YXIgZm9ybSA9IFRlc3RVdGlscy5yZW5kZXJJbnRvRG9jdW1lbnQoXG4gICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KEZvcm1zeS5Gb3JtLCBudWxsLCBcbiAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChUZXN0SW5wdXQsIHtuYW1lOiBcImZvb1wiLCB2YWx1ZTogXCJmb29cIiwgdmFsaWRhdGlvbnM6IFwiaXNOdW1lcmljXCJ9KVxuICAgICAgKVxuICAgICk7XG5cbiAgICB2YXIgaW5wdXQgPSBUZXN0VXRpbHMuZmluZFJlbmRlcmVkRE9NQ29tcG9uZW50V2l0aFRhZyhmb3JtLCAnSU5QVVQnKTtcbiAgICBleHBlY3QoaXNWYWxpZCkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICBUZXN0VXRpbHMuU2ltdWxhdGUuY2hhbmdlKGlucHV0LCB7dGFyZ2V0OiB7dmFsdWU6ICcxLjUnfX0pO1xuICAgIGV4cGVjdChpc1ZhbGlkKS50b0hhdmVCZWVuQ2FsbGVkKCk7XG5cbiAgfSk7XG5cbiAgaXQoJ1JVTEU6IGlzTnVtZXJpYyBpcyBmYWxzZSAoc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGFuIGludmFsaWQgZmxvYXQpJywgZnVuY3Rpb24gKCkge1xuXG4gICAgdmFyIGlzVmFsaWQgPSBqYXNtaW5lLmNyZWF0ZVNweSgndmFsaWQnKTtcbiAgICB2YXIgVGVzdElucHV0ID0gUmVhY3QuY3JlYXRlQ2xhc3Moe2Rpc3BsYXlOYW1lOiBcIlRlc3RJbnB1dFwiLFxuICAgICAgbWl4aW5zOiBbRm9ybXN5Lk1peGluXSxcbiAgICAgIHVwZGF0ZVZhbHVlOiBmdW5jdGlvbiAoZXZlbnQpIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHJlbmRlcjogZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkKCkpIHtcbiAgICAgICAgICBpc1ZhbGlkKCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiLCB7dmFsdWU6IHRoaXMuZ2V0VmFsdWUoKSwgb25DaGFuZ2U6IHRoaXMudXBkYXRlVmFsdWV9KVxuICAgICAgfVxuICAgIH0pO1xuICAgIHZhciBmb3JtID0gVGVzdFV0aWxzLnJlbmRlckludG9Eb2N1bWVudChcbiAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoRm9ybXN5LkZvcm0sIG51bGwsIFxuICAgICAgICBSZWFjdC5jcmVhdGVFbGVtZW50KFRlc3RJbnB1dCwge25hbWU6IFwiZm9vXCIsIHZhbHVlOiBcImZvb1wiLCB2YWxpZGF0aW9uczogXCJpc051bWVyaWNcIn0pXG4gICAgICApXG4gICAgKTtcblxuICAgIHZhciBpbnB1dCA9IFRlc3RVdGlscy5maW5kUmVuZGVyZWRET01Db21wb25lbnRXaXRoVGFnKGZvcm0sICdJTlBVVCcpO1xuICAgIGV4cGVjdChpc1ZhbGlkKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICAgIFRlc3RVdGlscy5TaW11bGF0ZS5jaGFuZ2UoaW5wdXQsIHt0YXJnZXQ6IHt2YWx1ZTogJzEuJ319KTtcbiAgICBleHBlY3QoaXNWYWxpZCkubm90LnRvSGF2ZUJlZW5DYWxsZWQoKTtcblxuICB9KTtcblxufSk7XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y0dWamN5OVdZV3hwWkdGMGFXOXVMWE53WldNdWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0JsWTNNdlZtRnNhV1JoZEdsdmJpMXpjR1ZqTG1weklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJMRWxCUVVrc1RVRkJUU3hIUVVGSExFOUJRVThzUTBGQlF5eHJRa0ZCYTBJc1EwRkJReXhEUVVGRE96dEJRVVY2UXl4UlFVRlJMRU5CUVVNc1dVRkJXU3hGUVVGRkxGZEJRVmM3TzBGQlJXeERMRVZCUVVVc1JVRkJSU3hEUVVGRExHdEZRVUZyUlN4RlFVRkZMRmxCUVZrN08wbEJSV3BHTEVsQlFVa3NUMEZCVHl4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEZWtNc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1VVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzA5QlEyNURPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNUMEZCVHl4dlFrRkJRU3hQUVVGTkxFVkJRVUVzUTBGQlFTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkZMRWxCUVVrc1EwRkJReXhSUVVGUkxFVkJRVVVzUlVGQlF5eERRVUZETEZGQlFVRXNSVUZCVVN4RFFVRkZMRWxCUVVrc1EwRkJReXhYUVVGWkxFTkJRVVVzUTBGQlFUdFBRVU53UlR0TFFVTkdMRU5CUVVNc1EwRkJRenRKUVVOSUxFbEJRVWtzU1VGQlNTeEhRVUZITEZOQlFWTXNRMEZCUXl4clFrRkJhMEk3VFVGRGNrTXNiMEpCUVVNc1YwRkJWeXhGUVVGQkxFTkJRVUVzUTBGQlF5eFBRVUZCTEVWQlFVOHNRMEZCUlN4UFFVRlRMRU5CUVVFc1JVRkJRVHRSUVVNM1FpeHZRa0ZCUXl4VFFVRlRMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRkZCUVVFc1JVRkJRU3hEUVVGRkxFTkJRVUU3VFVGRFdpeERRVUZCTzBGQlEzQkNMRXRCUVVzc1EwRkJRenM3U1VGRlJpeEpRVUZKTEV0QlFVc3NSMEZCUnl4VFFVRlRMRU5CUVVNc0swSkJRU3RDTEVOQlFVTXNTVUZCU1N4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVGRE8wbEJRM0pGTEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUlVGQlJTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETDBRc1NVRkJTU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6czdRVUZGZGtNc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2MwVkJRWE5GTEVWQlFVVXNXVUZCV1RzN1NVRkZja1lzU1VGQlNTeFRRVUZUTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dEpRVU0zUXl4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0TlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMDFCUTNSQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0UlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03VDBGRGJrTTdUVUZEUkN4TlFVRk5MRVZCUVVVc1dVRkJXVHRSUVVOc1FpeFBRVUZQTEc5Q1FVRkJMRTlCUVUwc1JVRkJRU3hEUVVGQkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVVXNTVUZCU1N4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRExFTkJRVU1zVVVGQlFTeEZRVUZSTEVOQlFVVXNTVUZCU1N4RFFVRkRMRmRCUVZrc1EwRkJSU3hEUVVGQk8wOUJRM0JGTzB0QlEwWXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hKUVVGSkxFZEJRVWNzVTBGQlV5eERRVUZETEd0Q1FVRnJRanROUVVOeVF5eHZRa0ZCUXl4WFFVRlhMRVZCUVVFc1EwRkJRU3hEUVVGRExFOUJRVUVzUlVGQlR5eERRVUZGTEZOQlFWY3NRMEZCUVN4RlFVRkJPMUZCUXk5Q0xHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRkxFTkJRVUU3VFVGRGRrSXNRMEZCUVR0QlFVTndRaXhMUVVGTExFTkJRVU03TzBsQlJVWXNTVUZCU1N4TFFVRkxMRWRCUVVjc1UwRkJVeXhEUVVGRExDdENRVUVyUWl4RFFVRkRMRWxCUVVrc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU55UlN4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhMUVVGTExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXpWRUxFbEJRVWtzVFVGQlRTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMR2RDUVVGblFpeEZRVUZGTEVOQlFVTTdPMEZCUlhwRExFZEJRVWNzUTBGQlF5eERRVUZET3p0QlFVVk1MRVZCUVVVc1JVRkJSU3hEUVVGRExIVkRRVUYxUXl4RlFVRkZMRmxCUVZrN08wbEJSWFJFTEVsQlFVa3NUMEZCVHl4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEZWtNc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1VVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzA5QlEyNURPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNTVUZCU1N4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVU3VlVGRGJFSXNUMEZCVHl4RlFVRkZMRU5CUVVNN1UwRkRXRHRSUVVORUxFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3VFVGRFJDeFJRVUZSTEVWQlFVVXNXVUZCV1R0UlFVTndRaXhQUVVGUExFbEJRVWtzUTBGQlF5eFJRVUZSTEVWQlFVVXNTMEZCU3l4bFFVRmxMRU5CUVVNN1QwRkROVU03UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4SlFVRkRMRVZCUVVFN1VVRkRXQ3h2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMR2xDUVVGcFFpeERRVUZGTEVOQlFVRTdUVUZEYmtNc1EwRkJRVHRCUVVOd1FpeExRVUZMTEVOQlFVTTdPMGxCUlVZc1NVRkJTU3hMUVVGTExFZEJRVWNzVTBGQlV5eERRVUZETEN0Q1FVRXJRaXhEUVVGRExFbEJRVWtzUlVGQlJTeFBRVUZQTEVOQlFVTXNRMEZCUXp0SlFVTnlSU3hUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNaVUZCWlN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRM3BGTEVsQlFVa3NUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExHZENRVUZuUWl4RlFVRkZMRU5CUVVNN08wRkJSWFpETEVkQlFVY3NRMEZCUXl4RFFVRkRPenRCUVVWTUxFVkJRVVVzUlVGQlJTeERRVUZETEdWQlFXVXNSVUZCUlN4WlFVRlpPenRKUVVVNVFpeEpRVUZKTEU5QlFVOHNSMEZCUnl4UFFVRlBMRU5CUVVNc1UwRkJVeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETzBsQlEzcERMRWxCUVVrc0swSkJRU3RDTEhsQ1FVRkJPMDFCUTJwRExFMUJRVTBzUlVGQlJTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNN1RVRkRkRUlzVjBGQlZ5eEZRVUZGTEZWQlFWVXNTMEZCU3l4RlFVRkZPMUZCUXpWQ0xFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNTMEZCU3l4RFFVRkRMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dFBRVU51UXp0TlFVTkVMRTFCUVUwc1JVRkJSU3haUVVGWk8xRkJRMnhDTEVsQlFVa3NTVUZCU1N4RFFVRkRMRTlCUVU4c1JVRkJSU3hGUVVGRk8xVkJRMnhDTEU5QlFVOHNSVUZCUlN4RFFVRkRPMU5CUTFnN1VVRkRSQ3hQUVVGUExHOUNRVUZCTEU5QlFVMHNSVUZCUVN4RFFVRkJMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVVVzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkRMRU5CUVVNc1VVRkJRU3hGUVVGUkxFTkJRVVVzU1VGQlNTeERRVUZETEZkQlFWa3NRMEZCUlN4RFFVRkJPMDlCUTNCRk8wdEJRMFlzUTBGQlF5eERRVUZETzBsQlEwZ3NTVUZCU1N4SlFVRkpMRWRCUVVjc1UwRkJVeXhEUVVGRExHdENRVUZyUWp0TlFVTnlReXh2UWtGQlF5eFhRVUZYTEVWQlFVRXNTVUZCUXl4RlFVRkJPMUZCUTFnc2IwSkJRVU1zVTBGQlV5eEZRVUZCTEVOQlFVRXNRMEZCUXl4SlFVRkJMRVZCUVVrc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhYUVVGQkxFVkJRVmNzUTBGQlF5eFRRVUZUTEVOQlFVVXNRMEZCUVR0TlFVTTNReXhEUVVGQk8wRkJRM0JDTEV0QlFVc3NRMEZCUXpzN1NVRkZSaXhKUVVGSkxFdEJRVXNzUjBGQlJ5eFRRVUZUTEVOQlFVTXNLMEpCUVN0Q0xFTkJRVU1zU1VGQlNTeEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVRkRPMGxCUTNKRkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVOQlFVTXNRMEZCUXl4SFFVRkhMRU5CUVVNc1owSkJRV2RDTEVWQlFVVXNRMEZCUXp0SlFVTjJReXhUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRVZCUVVVc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNZVUZCWVN4RFFVRkRMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRM1pGTEVsQlFVa3NUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExHZENRVUZuUWl4RlFVRkZMRU5CUVVNN08wRkJSWFpETEVkQlFVY3NRMEZCUXl4RFFVRkRPenRCUVVWTUxFVkJRVVVzUlVGQlJTeERRVUZETEdsQ1FVRnBRaXhGUVVGRkxGbEJRVms3TzBsQlJXaERMRWxCUVVrc1QwRkJUeXhIUVVGSExFOUJRVThzUTBGQlF5eFRRVUZUTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRla01zU1VGQlNTd3JRa0ZCSzBJc2VVSkJRVUU3VFVGRGFrTXNUVUZCVFN4RlFVRkZMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF6dE5RVU4wUWl4WFFVRlhMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3VVVGRE5VSXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMDlCUTI1RE8wMUJRMFFzVFVGQlRTeEZRVUZGTEZsQlFWazdVVUZEYkVJc1NVRkJTU3hKUVVGSkxFTkJRVU1zVDBGQlR5eEZRVUZGTEVWQlFVVTdWVUZEYkVJc1QwRkJUeXhGUVVGRkxFTkJRVU03VTBGRFdEdFJRVU5FTEU5QlFVOHNiMEpCUVVFc1QwRkJUU3hGUVVGQkxFTkJRVUVzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUlN4SlFVRkpMRU5CUVVNc1VVRkJVU3hGUVVGRkxFVkJRVU1zUTBGQlF5eFJRVUZCTEVWQlFWRXNRMEZCUlN4SlFVRkpMRU5CUVVNc1YwRkJXU3hEUVVGRkxFTkJRVUU3VDBGRGNFVTdTMEZEUml4RFFVRkRMRU5CUVVNN1NVRkRTQ3hKUVVGSkxFbEJRVWtzUjBGQlJ5eFRRVUZUTEVOQlFVTXNhMEpCUVd0Q08wMUJRM0pETEc5Q1FVRkRMRmRCUVZjc1JVRkJRU3hKUVVGRExFVkJRVUU3VVVGRFdDeHZRa0ZCUXl4VFFVRlRMRVZCUVVFc1EwRkJRU3hEUVVGRExFbEJRVUVzUlVGQlNTeERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEZkQlFVRXNSVUZCVnl4RFFVRkRMRmRCUVZjc1EwRkJSU3hEUVVGQk8wMUJReTlETEVOQlFVRTdRVUZEY0VJc1MwRkJTeXhEUVVGRE96dEpRVVZHTEVsQlFVa3NTMEZCU3l4SFFVRkhMRk5CUVZNc1EwRkJReXdyUWtGQkswSXNRMEZCUXl4SlFVRkpMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRVU03U1VGRGNrVXNUVUZCVFN4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eG5Ra0ZCWjBJc1JVRkJSU3hEUVVGRE8wbEJRM1pETEZOQlFWTXNRMEZCUXl4UlFVRlJMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUlVGQlJTeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hMUVVGTExFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdRVUZETDBRc1NVRkJTU3hOUVVGTkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6czdRVUZGZGtNc1IwRkJSeXhEUVVGRExFTkJRVU03TzBGQlJVd3NSVUZCUlN4RlFVRkZMRU5CUVVNc2FVTkJRV2xETEVWQlFVVXNXVUZCV1RzN1NVRkZhRVFzU1VGQlNTeFBRVUZQTEVkQlFVY3NUMEZCVHl4RFFVRkRMRk5CUVZNc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dEpRVU42UXl4SlFVRkpMQ3RDUVVFclFpeDVRa0ZCUVR0TlFVTnFReXhOUVVGTkxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNTMEZCU3l4RFFVRkRPMDFCUTNSQ0xGZEJRVmNzUlVGQlJTeFZRVUZWTEV0QlFVc3NSVUZCUlR0UlFVTTFRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETEVOQlFVTTdUMEZETTBNN1RVRkRSQ3hOUVVGTkxFVkJRVVVzV1VGQldUdFJRVU5zUWl4SlFVRkpMRWxCUVVrc1EwRkJReXhQUVVGUExFVkJRVVVzUlVGQlJUdFZRVU5zUWl4UFFVRlBMRVZCUVVVc1EwRkJRenRUUVVOWU8xRkJRMFFzVDBGQlR5eHZRa0ZCUVN4UFFVRk5MRVZCUVVFc1EwRkJRU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZGTEVsQlFVa3NRMEZCUXl4UlFVRlJMRVZCUVVVc1JVRkJReXhEUVVGRExGRkJRVUVzUlVGQlVTeERRVUZGTEVsQlFVa3NRMEZCUXl4WFFVRlpMRU5CUVVVc1EwRkJRVHRQUVVOd1JUdExRVU5HTEVOQlFVTXNRMEZCUXp0SlFVTklMRWxCUVVrc1NVRkJTU3hIUVVGSExGTkJRVk1zUTBGQlF5eHJRa0ZCYTBJN1RVRkRja01zYjBKQlFVTXNWMEZCVnl4RlFVRkJMRWxCUVVNc1JVRkJRVHRSUVVOWUxHOUNRVUZETEZOQlFWTXNSVUZCUVN4RFFVRkJMRU5CUVVNc1NVRkJRU3hGUVVGSkxFTkJRVU1zUzBGQlFTeEZRVUZMTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVNc1MwRkJRU3hGUVVGTExFTkJRVU1zVjBGQlFTeEZRVUZYTEVOQlFVTXNWMEZCVnl4RFFVRkZMRU5CUVVFN1RVRkRMME1zUTBGQlFUdEJRVU53UWl4TFFVRkxMRU5CUVVNN08wbEJSVVlzU1VGQlNTeExRVUZMTEVkQlFVY3NVMEZCVXl4RFFVRkRMQ3RDUVVFclFpeERRVUZETEVsQlFVa3NSVUZCUlN4UFFVRlBMRU5CUVVNc1EwRkJRenRKUVVOeVJTeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNc1IwRkJSeXhEUVVGRExHZENRVUZuUWl4RlFVRkZMRU5CUVVNN1NVRkRka01zVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXl4TlFVRk5MRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRXRCUVVzc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEJRVU12UkN4SlFVRkpMRTFCUVUwc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eG5Ra0ZCWjBJc1JVRkJSU3hEUVVGRE96dEJRVVYyUXl4SFFVRkhMRU5CUVVNc1EwRkJRenM3UVVGRlRDeEZRVUZGTEVWQlFVVXNRMEZCUXl4dlJFRkJiMFFzUlVGQlJTeFpRVUZaT3p0SlFVVnVSU3hKUVVGSkxFOUJRVThzUjBGQlJ5eFBRVUZQTEVOQlFVTXNVMEZCVXl4RFFVRkRMRTlCUVU4c1EwRkJReXhEUVVGRE8wbEJRM3BETEVsQlFVa3NLMEpCUVN0Q0xIbENRVUZCTzAxQlEycERMRTFCUVUwc1JVRkJSU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVOQlFVTTdUVUZEZEVJc1YwRkJWeXhGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzFGQlF6VkNMRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRQUVVOdVF6dE5RVU5FTEUxQlFVMHNSVUZCUlN4WlFVRlpPMUZCUTJ4Q0xFbEJRVWtzU1VGQlNTeERRVUZETEU5QlFVOHNSVUZCUlN4RlFVRkZPMVZCUTJ4Q0xFOUJRVThzUlVGQlJTeERRVUZETzFOQlExZzdVVUZEUkN4UFFVRlBMRzlDUVVGQkxFOUJRVTBzUlVGQlFTeERRVUZCTEVOQlFVTXNTMEZCUVN4RlFVRkxMRU5CUVVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZETEVOQlFVTXNVVUZCUVN4RlFVRlJMRU5CUVVVc1NVRkJTU3hEUVVGRExGZEJRVmtzUTBGQlJTeERRVUZCTzA5QlEzQkZPMHRCUTBZc1EwRkJReXhEUVVGRE8wbEJRMGdzU1VGQlNTeEpRVUZKTEVkQlFVY3NVMEZCVXl4RFFVRkRMR3RDUVVGclFqdE5RVU55UXl4dlFrRkJReXhYUVVGWExFVkJRVUVzU1VGQlF5eEZRVUZCTzFGQlExZ3NiMEpCUVVNc1UwRkJVeXhGUVVGQkxFTkJRVUVzUTBGQlF5eEpRVUZCTEVWQlFVa3NRMEZCUXl4TFFVRkJMRVZCUVVzc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlF5eExRVUZCTEVWQlFVc3NRMEZCUXl4WFFVRkJMRVZCUVZjc1EwRkJReXhYUVVGWExFTkJRVVVzUTBGQlFUdE5RVU12UXl4RFFVRkJPMEZCUTNCQ0xFdEJRVXNzUTBGQlF6czdTVUZGUml4SlFVRkpMRXRCUVVzc1IwRkJSeXhUUVVGVExFTkJRVU1zSzBKQlFTdENMRU5CUVVNc1NVRkJTU3hGUVVGRkxFOUJRVThzUTBGQlF5eERRVUZETzBsQlEzSkZMRTFCUVUwc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNaMEpCUVdkQ0xFVkJRVVVzUTBGQlF6dEpRVU4yUXl4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFMUJRVTBzUTBGQlF5eExRVUZMTEVWQlFVVXNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJReXhMUVVGTExFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUXk5RUxFbEJRVWtzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMR2RDUVVGblFpeEZRVUZGTEVOQlFVTTdPMEZCUlhaRExFZEJRVWNzUTBGQlF5eERRVUZET3p0QlFVVk1MRVZCUVVVc1JVRkJSU3hEUVVGRExITkZRVUZ6UlN4RlFVRkZMRmxCUVZrN08wbEJSWEpHTEVsQlFVa3NUMEZCVHl4SFFVRkhMRTlCUVU4c1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTTdTVUZEZWtNc1NVRkJTU3dyUWtGQkswSXNlVUpCUVVFN1RVRkRha01zVFVGQlRTeEZRVUZGTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1EwRkJRenROUVVOMFFpeFhRVUZYTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1VVRkROVUlzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzA5QlEyNURPMDFCUTBRc1RVRkJUU3hGUVVGRkxGbEJRVms3VVVGRGJFSXNTVUZCU1N4SlFVRkpMRU5CUVVNc1QwRkJUeXhGUVVGRkxFVkJRVVU3VlVGRGJFSXNUMEZCVHl4RlFVRkZMRU5CUVVNN1UwRkRXRHRSUVVORUxFOUJRVThzYjBKQlFVRXNUMEZCVFN4RlFVRkJMRU5CUVVFc1EwRkJReXhMUVVGQkxFVkJRVXNzUTBGQlJTeEpRVUZKTEVOQlFVTXNVVUZCVVN4RlFVRkZMRVZCUVVNc1EwRkJReXhSUVVGQkxFVkJRVkVzUTBGQlJTeEpRVUZKTEVOQlFVTXNWMEZCV1N4RFFVRkZMRU5CUVVFN1QwRkRjRVU3UzBGRFJpeERRVUZETEVOQlFVTTdTVUZEU0N4SlFVRkpMRWxCUVVrc1IwRkJSeXhUUVVGVExFTkJRVU1zYTBKQlFXdENPMDFCUTNKRExHOUNRVUZETEZkQlFWY3NSVUZCUVN4SlFVRkRMRVZCUVVFN1VVRkRXQ3h2UWtGQlF5eFRRVUZUTEVWQlFVRXNRMEZCUVN4RFFVRkRMRWxCUVVFc1JVRkJTU3hEUVVGRExFdEJRVUVzUlVGQlN5eERRVUZETEV0QlFVRXNSVUZCU3l4RFFVRkRMRXRCUVVFc1JVRkJTeXhEUVVGRExGZEJRVUVzUlVGQlZ5eERRVUZETEZkQlFWY3NRMEZCUlN4RFFVRkJPMDFCUXk5RExFTkJRVUU3UVVGRGNFSXNTMEZCU3l4RFFVRkRPenRKUVVWR0xFbEJRVWtzUzBGQlN5eEhRVUZITEZOQlFWTXNRMEZCUXl3clFrRkJLMElzUTBGQlF5eEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1NVRkRja1VzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RFFVRkRPMGxCUTNaRExGTkJRVk1zUTBGQlF5eFJRVUZSTEVOQlFVTXNUVUZCVFN4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETEV0QlFVc3NSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRE9VUXNTVUZCU1N4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUjBGQlJ5eERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFTkJRVU03TzBGQlJUTkRMRWRCUVVjc1EwRkJReXhEUVVGRE96dERRVVZLTEVOQlFVTXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkluWmhjaUJHYjNKdGMza2dQU0J5WlhGMWFYSmxLQ2N1THk0dUwzTnlZeTl0WVdsdUxtcHpKeWs3WEc1Y2JtUmxjMk55YVdKbEtDZFdZV3hwWkdGMGFXOXVKeXdnWm5WdVkzUnBiMjRvS1NCN1hHNWNiaUFnYVhRb0ozTm9iM1ZzWkNCMGNtbG5aMlZ5SUdGdUlHOXVWbUZzYVdRZ2FHRnVaR3hsY2l3Z2FXWWdjR0Z6YzJWa0xDQjNhR1Z1SUdadmNtMGdhWE1nZG1Gc2FXUW5MQ0JtZFc1amRHbHZiaUFvS1NCN1hHNWNiaUFnSUNCMllYSWdiMjVXWVd4cFpDQTlJR3BoYzIxcGJtVXVZM0psWVhSbFUzQjVLQ2QyWVd4cFpDY3BPMXh1SUNBZ0lIWmhjaUJVWlhOMFNXNXdkWFFnUFNCU1pXRmpkQzVqY21WaGRHVkRiR0Z6Y3loN1hHNGdJQ0FnSUNCdGFYaHBibk02SUZ0R2IzSnRjM2t1VFdsNGFXNWRMRnh1SUNBZ0lDQWdkWEJrWVhSbFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNobGRtVnVkQ2tnZTF4dUlDQWdJQ0FnSUNCMGFHbHpMbk5sZEZaaGJIVmxLR1YyWlc1MExuUmhjbWRsZEM1MllXeDFaU2s3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lISmxkSFZ5YmlBOGFXNXdkWFFnZG1Gc2RXVTllM1JvYVhNdVoyVjBWbUZzZFdVb0tYMGdiMjVEYUdGdVoyVTllM1JvYVhNdWRYQmtZWFJsVm1Gc2RXVjlMejVjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlLVHRjYmlBZ0lDQjJZWElnWm05eWJTQTlJRlJsYzNSVmRHbHNjeTV5Wlc1a1pYSkpiblJ2Ukc5amRXMWxiblFvWEc0Z0lDQWdJQ0E4Um05eWJYTjVMa1p2Y20wZ2IyNVdZV3hwWkQxN2IyNVdZV3hwWkgwK1hHNGdJQ0FnSUNBZ0lEeFVaWE4wU1c1d2RYUWdibUZ0WlQxY0ltWnZiMXdpSUhKbGNYVnBjbVZrTHo1Y2JpQWdJQ0FnSUR3dlJtOXliWE41TGtadmNtMCtYRzRnSUNBZ0tUdGNibHh1SUNBZ0lIWmhjaUJwYm5CMWRDQTlJRlJsYzNSVmRHbHNjeTVtYVc1a1VtVnVaR1Z5WldSRVQwMURiMjF3YjI1bGJuUlhhWFJvVkdGbktHWnZjbTBzSUNkSlRsQlZWQ2NwTzF4dUlDQWdJRlJsYzNSVmRHbHNjeTVUYVcxMWJHRjBaUzVqYUdGdVoyVW9hVzV3ZFhRc0lIdDBZWEpuWlhRNklIdDJZV3gxWlRvZ0oyWnZieWQ5ZlNrN1hHNGdJQ0FnWlhod1pXTjBLRzl1Vm1Gc2FXUXBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUW9LVHRjYmx4dUlDQjlLVHRjYmx4dUlDQnBkQ2duYzJodmRXeGtJSFJ5YVdkblpYSWdZVzRnYjI1SmJuWmhiR2xrSUdoaGJtUnNaWElzSUdsbUlIQmhjM05sWkN3Z2QyaGxiaUJtYjNKdElHbHpJR2x1ZG1Gc2FXUW5MQ0JtZFc1amRHbHZiaUFvS1NCN1hHNWNiaUFnSUNCMllYSWdiMjVKYm5aaGJHbGtJRDBnYW1GemJXbHVaUzVqY21WaGRHVlRjSGtvSjJsdWRtRnNhV1FuS1R0Y2JpQWdJQ0IyWVhJZ1ZHVnpkRWx1Y0hWMElEMGdVbVZoWTNRdVkzSmxZWFJsUTJ4aGMzTW9lMXh1SUNBZ0lDQWdiV2w0YVc1ek9pQmJSbTl5YlhONUxrMXBlR2x1WFN4Y2JpQWdJQ0FnSUhWd1pHRjBaVlpoYkhWbE9pQm1kVzVqZEdsdmJpQW9aWFpsYm5RcElIdGNiaUFnSUNBZ0lDQWdkR2hwY3k1elpYUldZV3gxWlNobGRtVnVkQzUwWVhKblpYUXVkbUZzZFdVcE8xeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lISmxibVJsY2pvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMblZ3WkdGMFpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRJRzl1Vm1Gc2FXUTllMjl1U1c1MllXeHBaSDArWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSW1admIxd2lJSFpoYkhWbFBWd2labTl2WENJdlBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdkbUZ5SUdsdWNIVjBJRDBnVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFUlBUVU52YlhCdmJtVnVkRmRwZEdoVVlXY29abTl5YlN3Z0owbE9VRlZVSnlrN1hHNGdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5KMzE5S1R0Y2JpQWdJQ0JsZUhCbFkzUW9iMjVKYm5aaGJHbGtLUzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjNOb2IzVnNaQ0IxYzJVZ2NISnZkbWxrWldRZ2RtRnNhV1JoZEdVZ1puVnVZM1JwYjI0bkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZDJZV3hwWkNjcE8xeHVJQ0FnSUhaaGNpQlVaWE4wU1c1d2RYUWdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ2RYQmtZWFJsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2hsZG1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuTmxkRlpoYkhWbEtHVjJaVzUwTG5SaGNtZGxkQzUyWVd4MVpTazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaDBhR2x6TG1selZtRnNhV1FvS1NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2x6Vm1Gc2FXUW9LVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG5Wd1pHRjBaVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdkbUZzYVdSaGRHVTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUhSb2FYTXVaMlYwVm1Gc2RXVW9LU0E5UFQwZ1hDSmphR1ZqYTFaaGJHbGthWFI1WENJN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDQWdJQ0E4VkdWemRFbHVjSFYwSUc1aGJXVTlYQ0ptYjI5Y0lpQjJZV3gxWlQxY0ltTm9aV05yU1c1MllXeHBaR2wwZVZ3aUx6NWNiaUFnSUNBZ0lEd3ZSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdLVHRjYmx4dUlDQWdJSFpoY2lCcGJuQjFkQ0E5SUZSbGMzUlZkR2xzY3k1bWFXNWtVbVZ1WkdWeVpXUkVUMDFEYjIxd2IyNWxiblJYYVhSb1ZHRm5LR1p2Y20wc0lDZEpUbEJWVkNjcE8xeHVJQ0FnSUZSbGMzUlZkR2xzY3k1VGFXMTFiR0YwWlM1amFHRnVaMlVvYVc1d2RYUXNJSHQwWVhKblpYUTZJSHQyWVd4MVpUb2dKMk5vWldOclZtRnNhV1JwZEhrbmZYMHBPMXh1SUNBZ0lHVjRjR1ZqZENocGMxWmhiR2xrS1M1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNWNiaUFnZlNrN1hHNWNiaUFnYVhRb0oxSlZURVU2SUdselJXMWhhV3duTENCbWRXNWpkR2x2YmlBb0tTQjdYRzVjYmlBZ0lDQjJZWElnYVhOV1lXeHBaQ0E5SUdwaGMyMXBibVV1WTNKbFlYUmxVM0I1S0NkMllXeHBaQ2NwTzF4dUlDQWdJSFpoY2lCVVpYTjBTVzV3ZFhRZ1BTQlNaV0ZqZEM1amNtVmhkR1ZEYkdGemN5aDdYRzRnSUNBZ0lDQnRhWGhwYm5NNklGdEdiM0p0YzNrdVRXbDRhVzVkTEZ4dUlDQWdJQ0FnZFhCa1lYUmxWbUZzZFdVNklHWjFibU4wYVc5dUlDaGxkbVZ1ZENrZ2UxeHVJQ0FnSUNBZ0lDQjBhR2x6TG5ObGRGWmhiSFZsS0dWMlpXNTBMblJoY21kbGRDNTJZV3gxWlNrN1hHNGdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ2NtVnVaR1Z5T2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR2xtSUNoMGFHbHpMbWx6Vm1Gc2FXUW9LU2tnZTF4dUlDQWdJQ0FnSUNBZ0lHbHpWbUZzYVdRb0tUdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0J5WlhSMWNtNGdQR2x1Y0hWMElIWmhiSFZsUFh0MGFHbHpMbWRsZEZaaGJIVmxLQ2w5SUc5dVEyaGhibWRsUFh0MGFHbHpMblZ3WkdGMFpWWmhiSFZsZlM4K1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNrN1hHNGdJQ0FnZG1GeUlHWnZjbTBnUFNCVVpYTjBWWFJwYkhNdWNtVnVaR1Z5U1c1MGIwUnZZM1Z0Wlc1MEtGeHVJQ0FnSUNBZ1BFWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDQWdJQ0E4VkdWemRFbHVjSFYwSUc1aGJXVTlYQ0ptYjI5Y0lpQjJZV3gxWlQxY0ltWnZiMXdpSUhaaGJHbGtZWFJwYjI1elBWd2lhWE5GYldGcGJGd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lHVjRjR1ZqZENocGMxWmhiR2xrS1M1dWIzUXVkRzlJWVhabFFtVmxia05oYkd4bFpDZ3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSjJadmIwQm1iMjh1WTI5dEozMTlLVHRjYmlBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNrdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkNncE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZFNWVXhGT2lCcGMwNTFiV1Z5YVdNbkxDQm1kVzVqZEdsdmJpQW9LU0I3WEc1Y2JpQWdJQ0IyWVhJZ2FYTldZV3hwWkNBOUlHcGhjMjFwYm1VdVkzSmxZWFJsVTNCNUtDZDJZV3hwWkNjcE8xeHVJQ0FnSUhaaGNpQlVaWE4wU1c1d2RYUWdQU0JTWldGamRDNWpjbVZoZEdWRGJHRnpjeWg3WEc0Z0lDQWdJQ0J0YVhocGJuTTZJRnRHYjNKdGMza3VUV2w0YVc1ZExGeHVJQ0FnSUNBZ2RYQmtZWFJsVm1Gc2RXVTZJR1oxYm1OMGFXOXVJQ2hsZG1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUdsekxuTmxkRlpoYkhWbEtHVjJaVzUwTG5SaGNtZGxkQzUyWVd4MVpTazdYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdjbVZ1WkdWeU9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaDBhR2x6TG1selZtRnNhV1FvS1NrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2x6Vm1Gc2FXUW9LVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnUEdsdWNIVjBJSFpoYkhWbFBYdDBhR2x6TG1kbGRGWmhiSFZsS0NsOUlHOXVRMmhoYm1kbFBYdDBhR2x6TG5Wd1pHRjBaVlpoYkhWbGZTOCtYRzRnSUNBZ0lDQjlYRzRnSUNBZ2ZTazdYRzRnSUNBZ2RtRnlJR1p2Y20wZ1BTQlVaWE4wVlhScGJITXVjbVZ1WkdWeVNXNTBiMFJ2WTNWdFpXNTBLRnh1SUNBZ0lDQWdQRVp2Y20xemVTNUdiM0p0UGx4dUlDQWdJQ0FnSUNBOFZHVnpkRWx1Y0hWMElHNWhiV1U5WENKbWIyOWNJaUIyWVd4MVpUMWNJbVp2YjF3aUlIWmhiR2xrWVhScGIyNXpQVndpYVhOT2RXMWxjbWxqWENJdlBseHVJQ0FnSUNBZ1BDOUdiM0p0YzNrdVJtOXliVDVjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdkbUZ5SUdsdWNIVjBJRDBnVkdWemRGVjBhV3h6TG1acGJtUlNaVzVrWlhKbFpFUlBUVU52YlhCdmJtVnVkRmRwZEdoVVlXY29abTl5YlN3Z0owbE9VRlZVSnlrN1hHNGdJQ0FnWlhod1pXTjBLR2x6Vm1Gc2FXUXBMbTV2ZEM1MGIwaGhkbVZDWldWdVEyRnNiR1ZrS0NrN1hHNGdJQ0FnVkdWemRGVjBhV3h6TGxOcGJYVnNZWFJsTG1Ob1lXNW5aU2hwYm5CMWRDd2dlM1JoY21kbGREb2dlM1poYkhWbE9pQW5NVEl6SjMxOUtUdGNiaUFnSUNCbGVIQmxZM1FvYVhOV1lXeHBaQ2t1ZEc5SVlYWmxRbVZsYmtOaGJHeGxaQ2dwTzF4dVhHNGdJSDBwTzF4dVhHNGdJR2wwS0NkU1ZVeEZPaUJwYzA1MWJXVnlhV01nS0dGamRIVmhiQ0J1ZFcxaVpYSXBKeXdnWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ2RtRnlJR2x6Vm1Gc2FXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duZG1Gc2FXUW5LVHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJSFZ3WkdGMFpWWmhiSFZsT2lCbWRXNWpkR2x2YmlBb1pYWmxiblFwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSV1lXeDFaU2hPZFcxaVpYSW9aWFpsYm5RdWRHRnlaMlYwTG5aaGJIVmxLU2s3WEc0Z0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnY21WdVpHVnlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2gwYUdsekxtbHpWbUZzYVdRb0tTa2dlMXh1SUNBZ0lDQWdJQ0FnSUdselZtRnNhV1FvS1R0Y2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z1BHbHVjSFYwSUhaaGJIVmxQWHQwYUdsekxtZGxkRlpoYkhWbEtDbDlJRzl1UTJoaGJtZGxQWHQwYUdsekxuVndaR0YwWlZaaGJIVmxmUzgrWEc0Z0lDQWdJQ0I5WEc0Z0lDQWdmU2s3WEc0Z0lDQWdkbUZ5SUdadmNtMGdQU0JVWlhOMFZYUnBiSE11Y21WdVpHVnlTVzUwYjBSdlkzVnRaVzUwS0Z4dUlDQWdJQ0FnUEVadmNtMXplUzVHYjNKdFBseHVJQ0FnSUNBZ0lDQThWR1Z6ZEVsdWNIVjBJRzVoYldVOVhDSm1iMjljSWlCMllXeDFaVDFjSW1admIxd2lJSFpoYkdsa1lYUnBiMjV6UFZ3aWFYTk9kVzFsY21salhDSXZQbHh1SUNBZ0lDQWdQQzlHYjNKdGMza3VSbTl5YlQ1Y2JpQWdJQ0FwTzF4dVhHNGdJQ0FnZG1GeUlHbHVjSFYwSUQwZ1ZHVnpkRlYwYVd4ekxtWnBibVJTWlc1a1pYSmxaRVJQVFVOdmJYQnZibVZ1ZEZkcGRHaFVZV2NvWm05eWJTd2dKMGxPVUZWVUp5azdYRzRnSUNBZ1pYaHdaV04wS0dselZtRnNhV1FwTG01dmRDNTBiMGhoZG1WQ1pXVnVRMkZzYkdWa0tDazdYRzRnSUNBZ1ZHVnpkRlYwYVd4ekxsTnBiWFZzWVhSbExtTm9ZVzVuWlNocGJuQjFkQ3dnZTNSaGNtZGxkRG9nZTNaaGJIVmxPaUFuTVRJekozMTlLVHRjYmlBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNrdWRHOUlZWFpsUW1WbGJrTmhiR3hsWkNncE8xeHVYRzRnSUgwcE8xeHVYRzRnSUdsMEtDZFNWVXhGT2lCcGMwNTFiV1Z5YVdNZ0tITjBjbWx1WnlCeVpYQnlaWE5sYm5SaGRHbHZiaUJ2WmlCaElHWnNiMkYwS1Njc0lHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJSFpoY2lCcGMxWmhiR2xrSUQwZ2FtRnpiV2x1WlM1amNtVmhkR1ZUY0hrb0ozWmhiR2xrSnlrN1hHNGdJQ0FnZG1GeUlGUmxjM1JKYm5CMWRDQTlJRkpsWVdOMExtTnlaV0YwWlVOc1lYTnpLSHRjYmlBZ0lDQWdJRzFwZUdsdWN6b2dXMFp2Y20xemVTNU5hWGhwYmwwc1hHNGdJQ0FnSUNCMWNHUmhkR1ZXWVd4MVpUb2dablZ1WTNScGIyNGdLR1YyWlc1MEtTQjdYRzRnSUNBZ0lDQWdJSFJvYVhNdWMyVjBWbUZzZFdVb1pYWmxiblF1ZEdGeVoyVjBMblpoYkhWbEtUdGNiaUFnSUNBZ0lIMHNYRzRnSUNBZ0lDQnlaVzVrWlhJNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tIUm9hWE11YVhOV1lXeHBaQ2dwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdhWE5XWVd4cFpDZ3BPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUhKbGRIVnliaUE4YVc1d2RYUWdkbUZzZFdVOWUzUm9hWE11WjJWMFZtRnNkV1VvS1gwZ2IyNURhR0Z1WjJVOWUzUm9hWE11ZFhCa1lYUmxWbUZzZFdWOUx6NWNiaUFnSUNBZ0lIMWNiaUFnSUNCOUtUdGNiaUFnSUNCMllYSWdabTl5YlNBOUlGUmxjM1JWZEdsc2N5NXlaVzVrWlhKSmJuUnZSRzlqZFcxbGJuUW9YRzRnSUNBZ0lDQThSbTl5YlhONUxrWnZjbTArWEc0Z0lDQWdJQ0FnSUR4VVpYTjBTVzV3ZFhRZ2JtRnRaVDFjSW1admIxd2lJSFpoYkhWbFBWd2labTl2WENJZ2RtRnNhV1JoZEdsdmJuTTlYQ0pwYzA1MWJXVnlhV05jSWk4K1hHNGdJQ0FnSUNBOEwwWnZjbTF6ZVM1R2IzSnRQbHh1SUNBZ0lDazdYRzVjYmlBZ0lDQjJZWElnYVc1d2RYUWdQU0JVWlhOMFZYUnBiSE11Wm1sdVpGSmxibVJsY21Wa1JFOU5RMjl0Y0c5dVpXNTBWMmwwYUZSaFp5aG1iM0p0TENBblNVNVFWVlFuS1R0Y2JpQWdJQ0JsZUhCbFkzUW9hWE5XWVd4cFpDa3VibTkwTG5SdlNHRjJaVUpsWlc1RFlXeHNaV1FvS1R0Y2JpQWdJQ0JVWlhOMFZYUnBiSE11VTJsdGRXeGhkR1V1WTJoaGJtZGxLR2x1Y0hWMExDQjdkR0Z5WjJWME9pQjdkbUZzZFdVNklDY3hMalVuZlgwcE8xeHVJQ0FnSUdWNGNHVmpkQ2hwYzFaaGJHbGtLUzUwYjBoaGRtVkNaV1Z1UTJGc2JHVmtLQ2s3WEc1Y2JpQWdmU2s3WEc1Y2JpQWdhWFFvSjFKVlRFVTZJR2x6VG5WdFpYSnBZeUJwY3lCbVlXeHpaU0FvYzNSeWFXNW5JSEpsY0hKbGMyVnVkR0YwYVc5dUlHOW1JR0Z1SUdsdWRtRnNhV1FnWm14dllYUXBKeXdnWm5WdVkzUnBiMjRnS0NrZ2UxeHVYRzRnSUNBZ2RtRnlJR2x6Vm1Gc2FXUWdQU0JxWVhOdGFXNWxMbU55WldGMFpWTndlU2duZG1Gc2FXUW5LVHRjYmlBZ0lDQjJZWElnVkdWemRFbHVjSFYwSUQwZ1VtVmhZM1F1WTNKbFlYUmxRMnhoYzNNb2UxeHVJQ0FnSUNBZ2JXbDRhVzV6T2lCYlJtOXliWE41TGsxcGVHbHVYU3hjYmlBZ0lDQWdJSFZ3WkdGMFpWWmhiSFZsT2lCbWRXNWpkR2x2YmlBb1pYWmxiblFwSUh0Y2JpQWdJQ0FnSUNBZ2RHaHBjeTV6WlhSV1lXeDFaU2hsZG1WdWRDNTBZWEpuWlhRdWRtRnNkV1VwTzF4dUlDQWdJQ0FnZlN4Y2JpQWdJQ0FnSUhKbGJtUmxjam9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvZEdocGN5NXBjMVpoYkdsa0tDa3BJSHRjYmlBZ0lDQWdJQ0FnSUNCcGMxWmhiR2xrS0NrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdjbVYwZFhKdUlEeHBibkIxZENCMllXeDFaVDE3ZEdocGN5NW5aWFJXWVd4MVpTZ3BmU0J2YmtOb1lXNW5aVDE3ZEdocGN5NTFjR1JoZEdWV1lXeDFaWDB2UGx4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBwTzF4dUlDQWdJSFpoY2lCbWIzSnRJRDBnVkdWemRGVjBhV3h6TG5KbGJtUmxja2x1ZEc5RWIyTjFiV1Z1ZENoY2JpQWdJQ0FnSUR4R2IzSnRjM2t1Um05eWJUNWNiaUFnSUNBZ0lDQWdQRlJsYzNSSmJuQjFkQ0J1WVcxbFBWd2labTl2WENJZ2RtRnNkV1U5WENKbWIyOWNJaUIyWVd4cFpHRjBhVzl1Y3oxY0ltbHpUblZ0WlhKcFkxd2lMejVjYmlBZ0lDQWdJRHd2Um05eWJYTjVMa1p2Y20wK1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUhaaGNpQnBibkIxZENBOUlGUmxjM1JWZEdsc2N5NW1hVzVrVW1WdVpHVnlaV1JFVDAxRGIyMXdiMjVsYm5SWGFYUm9WR0ZuS0dadmNtMHNJQ2RKVGxCVlZDY3BPMXh1SUNBZ0lHVjRjR1ZqZENocGMxWmhiR2xrS1M1dWIzUXVkRzlJWVhabFFtVmxia05oYkd4bFpDZ3BPMXh1SUNBZ0lGUmxjM1JWZEdsc2N5NVRhVzExYkdGMFpTNWphR0Z1WjJVb2FXNXdkWFFzSUh0MFlYSm5aWFE2SUh0MllXeDFaVG9nSnpFdUozMTlLVHRjYmlBZ0lDQmxlSEJsWTNRb2FYTldZV3hwWkNrdWJtOTBMblJ2U0dGMlpVSmxaVzVEWVd4c1pXUW9LVHRjYmx4dUlDQjlLVHRjYmx4dWZTazdYRzRpWFgwPSIsIm1vZHVsZS5leHBvcnRzID0ge1xuICBnZXRJbml0aWFsU3RhdGU6IGZ1bmN0aW9uICgpIHtcbiAgICB2YXIgdmFsdWUgPSAndmFsdWUnIGluIHRoaXMucHJvcHMgPyB0aGlzLnByb3BzLnZhbHVlIDogJyc7XG4gICAgcmV0dXJuIHtcbiAgICAgIF92YWx1ZTogdmFsdWUsXG4gICAgICBfaXNWYWxpZDogdHJ1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiB0cnVlLFxuICAgICAgX3ByaXN0aW5lVmFsdWU6IHZhbHVlXG4gICAgfTtcbiAgfSxcbiAgY29tcG9uZW50V2lsbE1vdW50OiBmdW5jdGlvbiAoKSB7XG5cbiAgICB2YXIgY29uZmlndXJlID0gZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5zZXRWYWxpZGF0aW9ucyh0aGlzLnByb3BzLnZhbGlkYXRpb25zLCB0aGlzLnByb3BzLnJlcXVpcmVkKTtcbiAgICAgIHRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSh0aGlzKTtcbiAgICB9LmJpbmQodGhpcyk7XG5cbiAgICBpZiAoIXRoaXMucHJvcHMubmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGb3JtIElucHV0IHJlcXVpcmVzIGEgbmFtZSBwcm9wZXJ0eSB3aGVuIHVzZWQnKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucHJvcHMuX2F0dGFjaFRvRm9ybSkge1xuICAgICAgcmV0dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNNb3VudGVkKCkpIHJldHVybjtcbiAgICAgICAgaWYgKCF0aGlzLnByb3BzLl9hdHRhY2hUb0Zvcm0pIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Zvcm0gTWl4aW4gcmVxdWlyZXMgY29tcG9uZW50IHRvIGJlIG5lc3RlZCBpbiBhIEZvcm0nKTtcbiAgICAgICAgfVxuICAgICAgICBjb25maWd1cmUoKTtcbiAgICAgIH0uYmluZCh0aGlzKSwgMCk7XG4gICAgfVxuICAgIGNvbmZpZ3VyZSgpO1xuXG4gIH0sXG5cbiAgLy8gV2UgaGF2ZSB0byBtYWtlIHRoZSB2YWxpZGF0ZSBtZXRob2QgaXMga2VwdCB3aGVuIG5ldyBwcm9wcyBhcmUgYWRkZWRcbiAgY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wczogZnVuY3Rpb24gKG5leHRQcm9wcykge1xuICAgIG5leHRQcm9wcy5fYXR0YWNoVG9Gb3JtID0gdGhpcy5wcm9wcy5fYXR0YWNoVG9Gb3JtO1xuICAgIG5leHRQcm9wcy5fZGV0YWNoRnJvbUZvcm0gPSB0aGlzLnByb3BzLl9kZXRhY2hGcm9tRm9ybTtcbiAgICBuZXh0UHJvcHMuX3ZhbGlkYXRlID0gdGhpcy5wcm9wcy5fdmFsaWRhdGU7XG4gICAgdGhpcy5zZXRWYWxpZGF0aW9ucyhuZXh0UHJvcHMudmFsaWRhdGlvbnMsIG5leHRQcm9wcy5yZXF1aXJlZCk7XG4gIH0sXG5cbiAgY29tcG9uZW50RGlkVXBkYXRlOiBmdW5jdGlvbiAocHJldlByb3BzLCBwcmV2U3RhdGUpIHtcblxuICAgIHZhciBpc1ZhbHVlQ2hhbmdlZCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgIFxuICAgICAgcmV0dXJuIChcbiAgICAgICAgdGhpcy5wcm9wcy52YWx1ZSAhPT0gcHJldlByb3BzLnZhbHVlICYmIChcbiAgICAgICAgICB0aGlzLnN0YXRlLl92YWx1ZSA9PT0gcHJldlByb3BzLnZhbHVlIHx8XG5cbiAgICAgICAgICAvLyBTaW5jZSB1bmRlZmluZWQgaXMgY29udmVydGVkIHRvIGVtcHR5IHN0cmluZyB3ZSBoYXZlIHRvXG4gICAgICAgICAgLy8gY2hlY2sgdGhhdCBzcGVjaWZpY2FsbHlcbiAgICAgICAgICAodGhpcy5zdGF0ZS5fdmFsdWUgPT09ICcnICYmIHByZXZQcm9wcy52YWx1ZSA9PT0gdW5kZWZpbmVkKVxuICAgICAgICApXG4gICAgICApO1xuXG4gICAgfS5iaW5kKHRoaXMpO1xuXG5cbiAgICAvLyBJZiB2YWxpZGF0aW9ucyBoYXMgY2hhbmdlZCBvciBzb21ldGhpbmcgb3V0c2lkZSBjaGFuZ2VzIFxuICAgIC8vIHRoZSB2YWx1ZSwgc2V0IHRoZSB2YWx1ZSBhZ2FpbiBydW5uaW5nIGEgdmFsaWRhdGlvblxuXG4gICAgaWYgKHByZXZQcm9wcy52YWxpZGF0aW9ucyAhPT0gdGhpcy5wcm9wcy52YWxpZGF0aW9ucyB8fCBpc1ZhbHVlQ2hhbmdlZCgpKSB7XG4gICAgICB2YXIgdmFsdWUgPSAndmFsdWUnIGluIHRoaXMucHJvcHMgPyB0aGlzLnByb3BzLnZhbHVlIDogJyc7XG4gICAgICB0aGlzLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH0sXG5cbiAgLy8gRGV0YWNoIGl0IHdoZW4gY29tcG9uZW50IHVubW91bnRzXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcy5wcm9wcy5fZGV0YWNoRnJvbUZvcm0odGhpcyk7XG4gIH0sXG5cbiAgc2V0VmFsaWRhdGlvbnM6IGZ1bmN0aW9uICh2YWxpZGF0aW9ucywgcmVxdWlyZWQpIHtcblxuICAgIC8vIEFkZCB2YWxpZGF0aW9ucyB0byB0aGUgc3RvcmUgaXRzZWxmIGFzIHRoZSBwcm9wcyBvYmplY3QgY2FuIG5vdCBiZSBtb2RpZmllZFxuICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnMgfHwgJyc7XG5cbiAgICBpZiAocmVxdWlyZWQpIHtcbiAgICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnMgPyB2YWxpZGF0aW9ucyArICcsJyA6ICcnO1xuICAgICAgdGhpcy5fdmFsaWRhdGlvbnMgKz0gJ2lzVmFsdWUnO1xuICAgIH1cblxuICB9LFxuXG4gIC8vIFdlIHZhbGlkYXRlIGFmdGVyIHRoZSB2YWx1ZSBoYXMgYmVlbiBzZXRcbiAgc2V0VmFsdWU6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHRoaXMuc2V0U3RhdGUoe1xuICAgICAgX3ZhbHVlOiB2YWx1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiBmYWxzZVxuICAgIH0sIGZ1bmN0aW9uICgpIHtcbiAgICAgIHRoaXMucHJvcHMuX3ZhbGlkYXRlKHRoaXMpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG4gIHJlc2V0VmFsdWU6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIF92YWx1ZTogdGhpcy5zdGF0ZS5fcHJpc3RpbmVWYWx1ZSxcbiAgICAgIF9pc1ByaXN0aW5lOiB0cnVlXG4gICAgfSwgZnVuY3Rpb24gKCkge1xuICAgICAgdGhpcy5wcm9wcy5fdmFsaWRhdGUodGhpcyk7XG4gICAgfSk7XG4gIH0sXG4gIGdldFZhbHVlOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX3ZhbHVlO1xuICB9LFxuICBoYXNWYWx1ZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLl92YWx1ZSAhPT0gJyc7XG4gIH0sXG4gIGdldEVycm9yTWVzc2FnZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLmlzVmFsaWQoKSB8fCB0aGlzLnNob3dSZXF1aXJlZCgpID8gbnVsbCA6IHRoaXMuc3RhdGUuX3NlcnZlckVycm9yIHx8IHRoaXMucHJvcHMudmFsaWRhdGlvbkVycm9yO1xuICB9LFxuICBpc0Zvcm1EaXNhYmxlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLl9pc0Zvcm1EaXNhYmxlZCgpO1xuICB9LFxuICBpc1ZhbGlkOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdGUuX2lzVmFsaWQ7XG4gIH0sXG4gIGlzUHJpc3RpbmU6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZS5faXNQcmlzdGluZTtcbiAgfSxcbiAgaXNSZXF1aXJlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhIXRoaXMucHJvcHMucmVxdWlyZWQ7XG4gIH0sXG4gIHNob3dSZXF1aXJlZDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLmlzUmVxdWlyZWQoKSAmJiB0aGlzLnN0YXRlLl92YWx1ZSA9PT0gJyc7XG4gIH0sXG4gIHNob3dFcnJvcjogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiAhdGhpcy5zaG93UmVxdWlyZWQoKSAmJiAhdGhpcy5zdGF0ZS5faXNWYWxpZDtcbiAgfSxcbiAgaXNWYWxpZFZhbHVlOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5faXNWYWxpZFZhbHVlLmNhbGwobnVsbCwgdGhpcywgdmFsdWUpO1xuICB9XG59O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZUV2w0YVc0dWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk5VmMyVnljeTlqYUhKcGMzUnBZVzVoYkdadmJta3ZSRzlqZFcxbGJuUnpMMlJsZGk5bWIzSnRjM2t0Y21WaFkzUXZjM0pqTDAxcGVHbHVMbXB6SWwwc0ltNWhiV1Z6SWpwYlhTd2liV0Z3Y0dsdVozTWlPaUpCUVVGQkxFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVYzdSVUZEWml4bFFVRmxMRVZCUVVVc1dVRkJXVHRKUVVNelFpeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1IwRkJSeXhGUVVGRkxFTkJRVU03U1VGRE1VUXNUMEZCVHp0TlFVTk1MRTFCUVUwc1JVRkJSU3hMUVVGTE8wMUJRMklzVVVGQlVTeEZRVUZGTEVsQlFVazdUVUZEWkN4WFFVRlhMRVZCUVVVc1NVRkJTVHROUVVOcVFpeGpRVUZqTEVWQlFVVXNTMEZCU3p0TFFVTjBRaXhEUVVGRE8wZEJRMGc3UVVGRFNDeEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxGbEJRVms3TzBsQlJUbENMRWxCUVVrc1UwRkJVeXhIUVVGSExGbEJRVms3VFVGRE1VSXNTVUZCU1N4RFFVRkRMR05CUVdNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NSVUZCUlN4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzAxQlEycEZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMEZCUTNKRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN08wbEJSV0lzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hGUVVGRk8wMUJRM0JDTEUxQlFVMHNTVUZCU1N4TFFVRkxMRU5CUVVNc0swTkJRU3RETEVOQlFVTXNRMEZCUXp0QlFVTjJSU3hMUVVGTE96dEpRVVZFTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExHRkJRV0VzUlVGQlJUdE5RVU0zUWl4UFFVRlBMRlZCUVZVc1EwRkJReXhaUVVGWk8xRkJRelZDTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1UwRkJVeXhGUVVGRkxFVkJRVVVzVDBGQlR6dFJRVU01UWl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGhRVUZoTEVWQlFVVTdWVUZETjBJc1RVRkJUU3hKUVVGSkxFdEJRVXNzUTBGQlF5eHpSRUZCYzBRc1EwRkJReXhEUVVGRE8xTkJRM3BGTzFGQlEwUXNVMEZCVXl4RlFVRkZMRU5CUVVNN1QwRkRZaXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJRenRMUVVOc1FqdEJRVU5NTEVsQlFVa3NVMEZCVXl4RlFVRkZMRU5CUVVNN08wRkJSV2hDTEVkQlFVYzdRVUZEU0RzN1JVRkZSU3g1UWtGQmVVSXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSVHRKUVVNNVF5eFRRVUZUTEVOQlFVTXNZVUZCWVN4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWVVGQllTeERRVUZETzBsQlEyNUVMRk5CUVZNc1EwRkJReXhsUVVGbExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4bFFVRmxMRU5CUVVNN1NVRkRka1FzVTBGQlV5eERRVUZETEZOQlFWTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF6dEpRVU16UXl4SlFVRkpMRU5CUVVNc1kwRkJZeXhEUVVGRExGTkJRVk1zUTBGQlF5eFhRVUZYTEVWQlFVVXNVMEZCVXl4RFFVRkRMRkZCUVZFc1EwRkJReXhEUVVGRE8wRkJRMjVGTEVkQlFVYzdPMEZCUlVnc1JVRkJSU3hyUWtGQmEwSXNSVUZCUlN4VlFVRlZMRk5CUVZNc1JVRkJSU3hUUVVGVExFVkJRVVU3TzBGQlJYUkVMRWxCUVVrc1NVRkJTU3hqUVVGakxFZEJRVWNzV1VGQldUczdUVUZGTDBJN1VVRkRSU3hKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEV0QlFVc3NTMEZCU3l4VFFVRlRMRU5CUVVNc1MwRkJTenRCUVVNMVF5eFZRVUZWTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hMUVVGTExGTkJRVk1zUTBGQlF5eExRVUZMTzBGQlF5OURPMEZCUTBFN08xZEJSVmNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRXRCUVVzc1JVRkJSU3hKUVVGSkxGTkJRVk1zUTBGQlF5eExRVUZMTEV0QlFVc3NVMEZCVXl4RFFVRkRPMU5CUXpWRU8wRkJRMVFzVVVGQlVUczdRVUZGVWl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEycENPMEZCUTBFN1FVRkRRVHRCUVVOQk96dEpRVVZKTEVsQlFVa3NVMEZCVXl4RFFVRkRMRmRCUVZjc1MwRkJTeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NTVUZCU1N4alFVRmpMRVZCUVVVc1JVRkJSVHROUVVONFJTeEpRVUZKTEV0QlFVc3NSMEZCUnl4UFFVRlBMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1IwRkJSeXhGUVVGRkxFTkJRVU03VFVGRE1VUXNTVUZCU1N4RFFVRkRMRkZCUVZFc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dExRVU4wUWp0QlFVTk1MRWRCUVVjN1FVRkRTRHM3UlVGRlJTeHZRa0ZCYjBJc1JVRkJSU3haUVVGWk8wbEJRMmhETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEzSkRMRWRCUVVjN08wRkJSVWdzUlVGQlJTeGpRVUZqTEVWQlFVVXNWVUZCVlN4WFFVRlhMRVZCUVVVc1VVRkJVU3hGUVVGRk8wRkJRMjVFT3p0QlFVVkJMRWxCUVVrc1NVRkJTU3hEUVVGRExGbEJRVmtzUjBGQlJ5eFhRVUZYTEVsQlFVa3NSVUZCUlN4RFFVRkRPenRKUVVWMFF5eEpRVUZKTEZGQlFWRXNSVUZCUlR0TlFVTmFMRWxCUVVrc1EwRkJReXhaUVVGWkxFZEJRVWNzVjBGQlZ5eEhRVUZITEZkQlFWY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1JVRkJSU3hEUVVGRE8wMUJRM3BFTEVsQlFVa3NRMEZCUXl4WlFVRlpMRWxCUVVrc1UwRkJVeXhEUVVGRE8wRkJRM0pETEV0QlFVczdPMEZCUlV3c1IwRkJSenRCUVVOSU96dEZRVVZGTEZGQlFWRXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVONlFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1RVRkJUU3hGUVVGRkxFdEJRVXM3VFVGRFlpeFhRVUZYTEVWQlFVVXNTMEZCU3p0TFFVTnVRaXhGUVVGRkxGbEJRVms3VFVGRFlpeEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dExRVU0xUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzBkQlEyWTdSVUZEUkN4VlFVRlZMRVZCUVVVc1dVRkJXVHRKUVVOMFFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1RVRkJUU3hGUVVGRkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNZMEZCWXp0TlFVTnFReXhYUVVGWExFVkJRVVVzU1VGQlNUdExRVU5zUWl4RlFVRkZMRmxCUVZrN1RVRkRZaXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRMUVVNMVFpeERRVUZETEVOQlFVTTdSMEZEU2p0RlFVTkVMRkZCUVZFc1JVRkJSU3haUVVGWk8wbEJRM0JDTEU5QlFVOHNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU03UjBGRE1VSTdSVUZEUkN4UlFVRlJMRVZCUVVVc1dVRkJXVHRKUVVOd1FpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hMUVVGTExFVkJRVVVzUTBGQlF6dEhRVU5xUXp0RlFVTkVMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVOHNTVUZCU1N4RFFVRkRMRTlCUVU4c1JVRkJSU3hKUVVGSkxFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNSMEZCUnl4SlFVRkpMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFpRVUZaTEVsQlFVa3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhsUVVGbExFTkJRVU03UjBGRE4wYzdSVUZEUkN4alFVRmpMRVZCUVVVc1dVRkJXVHRKUVVNeFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1pVRkJaU3hGUVVGRkxFTkJRVU03UjBGRGNrTTdSVUZEUkN4UFFVRlBMRVZCUVVVc1dVRkJXVHRKUVVOdVFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wZEJRelZDTzBWQlEwUXNWVUZCVlN4RlFVRkZMRmxCUVZrN1NVRkRkRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVRkRMRmRCUVZjc1EwRkJRenRIUVVNdlFqdEZRVU5FTEZWQlFWVXNSVUZCUlN4WlFVRlpPMGxCUTNSQ0xFOUJRVThzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wZEJRemxDTzBWQlEwUXNXVUZCV1N4RlFVRkZMRmxCUVZrN1NVRkRlRUlzVDBGQlR5eEpRVUZKTEVOQlFVTXNWVUZCVlN4RlFVRkZMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEV0QlFVc3NSVUZCUlN4RFFVRkRPMGRCUTNSRU8wVkJRMFFzVTBGQlV5eEZRVUZGTEZsQlFWazdTVUZEY2tJc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eFpRVUZaTEVWQlFVVXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETzBkQlEzSkVPMFZCUTBRc1dVRkJXU3hGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzBsQlF6ZENMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGhRVUZoTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1JVRkJSU3hKUVVGSkxFVkJRVVVzUzBGQlN5eERRVUZETEVOQlFVTTdSMEZEZWtRN1EwRkRSaXhEUVVGRElpd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2liVzlrZFd4bExtVjRjRzl5ZEhNZ1BTQjdYRzRnSUdkbGRFbHVhWFJwWVd4VGRHRjBaVG9nWm5WdVkzUnBiMjRnS0NrZ2UxeHVJQ0FnSUhaaGNpQjJZV3gxWlNBOUlDZDJZV3gxWlNjZ2FXNGdkR2hwY3k1d2NtOXdjeUEvSUhSb2FYTXVjSEp2Y0hNdWRtRnNkV1VnT2lBbkp6dGNiaUFnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnWDNaaGJIVmxPaUIyWVd4MVpTeGNiaUFnSUNBZ0lGOXBjMVpoYkdsa09pQjBjblZsTEZ4dUlDQWdJQ0FnWDJselVISnBjM1JwYm1VNklIUnlkV1VzWEc0Z0lDQWdJQ0JmY0hKcGMzUnBibVZXWVd4MVpUb2dkbUZzZFdWY2JpQWdJQ0I5TzF4dUlDQjlMRnh1SUNCamIyMXdiMjVsYm5SWGFXeHNUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmx4dUlDQWdJSFpoY2lCamIyNW1hV2QxY21VZ1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxuTmxkRlpoYkdsa1lYUnBiMjV6S0hSb2FYTXVjSEp2Y0hNdWRtRnNhV1JoZEdsdmJuTXNJSFJvYVhNdWNISnZjSE11Y21WeGRXbHlaV1FwTzF4dUlDQWdJQ0FnZEdocGN5NXdjbTl3Y3k1ZllYUjBZV05vVkc5R2IzSnRLSFJvYVhNcE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektUdGNibHh1SUNBZ0lHbG1JQ2doZEdocGN5NXdjbTl3Y3k1dVlXMWxLU0I3WEc0Z0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMFp2Y20wZ1NXNXdkWFFnY21WeGRXbHlaWE1nWVNCdVlXMWxJSEJ5YjNCbGNuUjVJSGRvWlc0Z2RYTmxaQ2NwTzF4dUlDQWdJSDFjYmx4dUlDQWdJR2xtSUNnaGRHaHBjeTV3Y205d2N5NWZZWFIwWVdOb1ZHOUdiM0p0S1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnYzJWMFZHbHRaVzkxZENobWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ0lDQWdJR2xtSUNnaGRHaHBjeTVwYzAxdmRXNTBaV1FvS1NrZ2NtVjBkWEp1TzF4dUlDQWdJQ0FnSUNCcFppQW9JWFJvYVhNdWNISnZjSE11WDJGMGRHRmphRlJ2Um05eWJTa2dlMXh1SUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWduUm05eWJTQk5hWGhwYmlCeVpYRjFhWEpsY3lCamIyMXdiMjVsYm5RZ2RHOGdZbVVnYm1WemRHVmtJR2x1SUdFZ1JtOXliU2NwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lHTnZibVpwWjNWeVpTZ3BPMXh1SUNBZ0lDQWdmUzVpYVc1a0tIUm9hWE1wTENBd0tUdGNiaUFnSUNCOVhHNGdJQ0FnWTI5dVptbG5kWEpsS0NrN1hHNWNiaUFnZlN4Y2JseHVJQ0F2THlCWFpTQm9ZWFpsSUhSdklHMWhhMlVnZEdobElIWmhiR2xrWVhSbElHMWxkR2h2WkNCcGN5QnJaWEIwSUhkb1pXNGdibVYzSUhCeWIzQnpJR0Z5WlNCaFpHUmxaRnh1SUNCamIyMXdiMjVsYm5SWGFXeHNVbVZqWldsMlpWQnliM0J6T2lCbWRXNWpkR2x2YmlBb2JtVjRkRkJ5YjNCektTQjdYRzRnSUNBZ2JtVjRkRkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTBnUFNCMGFHbHpMbkJ5YjNCekxsOWhkSFJoWTJoVWIwWnZjbTA3WEc0Z0lDQWdibVY0ZEZCeWIzQnpMbDlrWlhSaFkyaEdjbTl0Um05eWJTQTlJSFJvYVhNdWNISnZjSE11WDJSbGRHRmphRVp5YjIxR2IzSnRPMXh1SUNBZ0lHNWxlSFJRY205d2N5NWZkbUZzYVdSaGRHVWdQU0IwYUdsekxuQnliM0J6TGw5MllXeHBaR0YwWlR0Y2JpQWdJQ0IwYUdsekxuTmxkRlpoYkdsa1lYUnBiMjV6S0c1bGVIUlFjbTl3Y3k1MllXeHBaR0YwYVc5dWN5d2dibVY0ZEZCeWIzQnpMbkpsY1hWcGNtVmtLVHRjYmlBZ2ZTeGNibHh1SUNCamIyMXdiMjVsYm5SRWFXUlZjR1JoZEdVNklHWjFibU4wYVc5dUlDaHdjbVYyVUhKdmNITXNJSEJ5WlhaVGRHRjBaU2tnZTF4dVhHNGdJQ0FnZG1GeUlHbHpWbUZzZFdWRGFHRnVaMlZrSUQwZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdYRzRnSUNBZ0lDQnlaWFIxY200Z0tGeHVJQ0FnSUNBZ0lDQjBhR2x6TG5CeWIzQnpMblpoYkhWbElDRTlQU0J3Y21WMlVISnZjSE11ZG1Gc2RXVWdKaVlnS0Z4dUlDQWdJQ0FnSUNBZ0lIUm9hWE11YzNSaGRHVXVYM1poYkhWbElEMDlQU0J3Y21WMlVISnZjSE11ZG1Gc2RXVWdmSHhjYmx4dUlDQWdJQ0FnSUNBZ0lDOHZJRk5wYm1ObElIVnVaR1ZtYVc1bFpDQnBjeUJqYjI1MlpYSjBaV1FnZEc4Z1pXMXdkSGtnYzNSeWFXNW5JSGRsSUdoaGRtVWdkRzljYmlBZ0lDQWdJQ0FnSUNBdkx5QmphR1ZqYXlCMGFHRjBJSE53WldOcFptbGpZV3hzZVZ4dUlDQWdJQ0FnSUNBZ0lDaDBhR2x6TG5OMFlYUmxMbDkyWVd4MVpTQTlQVDBnSnljZ0ppWWdjSEpsZGxCeWIzQnpMblpoYkhWbElEMDlQU0IxYm1SbFptbHVaV1FwWEc0Z0lDQWdJQ0FnSUNsY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNCOUxtSnBibVFvZEdocGN5azdYRzVjYmx4dUlDQWdJQzh2SUVsbUlIWmhiR2xrWVhScGIyNXpJR2hoY3lCamFHRnVaMlZrSUc5eUlITnZiV1YwYUdsdVp5QnZkWFJ6YVdSbElHTm9ZVzVuWlhNZ1hHNGdJQ0FnTHk4Z2RHaGxJSFpoYkhWbExDQnpaWFFnZEdobElIWmhiSFZsSUdGbllXbHVJSEoxYm01cGJtY2dZU0IyWVd4cFpHRjBhVzl1WEc1Y2JpQWdJQ0JwWmlBb2NISmxkbEJ5YjNCekxuWmhiR2xrWVhScGIyNXpJQ0U5UFNCMGFHbHpMbkJ5YjNCekxuWmhiR2xrWVhScGIyNXpJSHg4SUdselZtRnNkV1ZEYUdGdVoyVmtLQ2twSUh0Y2JpQWdJQ0FnSUhaaGNpQjJZV3gxWlNBOUlDZDJZV3gxWlNjZ2FXNGdkR2hwY3k1d2NtOXdjeUEvSUhSb2FYTXVjSEp2Y0hNdWRtRnNkV1VnT2lBbkp6dGNiaUFnSUNBZ0lIUm9hWE11YzJWMFZtRnNkV1VvZG1Gc2RXVXBPMXh1SUNBZ0lIMWNiaUFnZlN4Y2JseHVJQ0F2THlCRVpYUmhZMmdnYVhRZ2QyaGxiaUJqYjIxd2IyNWxiblFnZFc1dGIzVnVkSE5jYmlBZ1kyOXRjRzl1Wlc1MFYybHNiRlZ1Ylc5MWJuUTZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0IwYUdsekxuQnliM0J6TGw5a1pYUmhZMmhHY205dFJtOXliU2gwYUdsektUdGNiaUFnZlN4Y2JseHVJQ0J6WlhSV1lXeHBaR0YwYVc5dWN6b2dablZ1WTNScGIyNGdLSFpoYkdsa1lYUnBiMjV6TENCeVpYRjFhWEpsWkNrZ2UxeHVYRzRnSUNBZ0x5OGdRV1JrSUhaaGJHbGtZWFJwYjI1eklIUnZJSFJvWlNCemRHOXlaU0JwZEhObGJHWWdZWE1nZEdobElIQnliM0J6SUc5aWFtVmpkQ0JqWVc0Z2JtOTBJR0psSUcxdlpHbG1hV1ZrWEc0Z0lDQWdkR2hwY3k1ZmRtRnNhV1JoZEdsdmJuTWdQU0IyWVd4cFpHRjBhVzl1Y3lCOGZDQW5KenRjYmx4dUlDQWdJR2xtSUNoeVpYRjFhWEpsWkNrZ2UxeHVJQ0FnSUNBZ2RHaHBjeTVmZG1Gc2FXUmhkR2x2Ym5NZ1BTQjJZV3hwWkdGMGFXOXVjeUEvSUhaaGJHbGtZWFJwYjI1eklDc2dKeXduSURvZ0p5YzdYRzRnSUNBZ0lDQjBhR2x6TGw5MllXeHBaR0YwYVc5dWN5QXJQU0FuYVhOV1lXeDFaU2M3WEc0Z0lDQWdmVnh1WEc0Z0lIMHNYRzVjYmlBZ0x5OGdWMlVnZG1Gc2FXUmhkR1VnWVdaMFpYSWdkR2hsSUhaaGJIVmxJR2hoY3lCaVpXVnVJSE5sZEZ4dUlDQnpaWFJXWVd4MVpUb2dablZ1WTNScGIyNGdLSFpoYkhWbEtTQjdYRzRnSUNBZ2RHaHBjeTV6WlhSVGRHRjBaU2g3WEc0Z0lDQWdJQ0JmZG1Gc2RXVTZJSFpoYkhWbExGeHVJQ0FnSUNBZ1gybHpVSEpwYzNScGJtVTZJR1poYkhObFhHNGdJQ0FnZlN3Z1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTVmZG1Gc2FXUmhkR1VvZEdocGN5azdYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBLVHRjYmlBZ2ZTeGNiaUFnY21WelpYUldZV3gxWlRvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lIUm9hWE11YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnWDNaaGJIVmxPaUIwYUdsekxuTjBZWFJsTGw5d2NtbHpkR2x1WlZaaGJIVmxMRnh1SUNBZ0lDQWdYMmx6VUhKcGMzUnBibVU2SUhSeWRXVmNiaUFnSUNCOUxDQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0IwYUdsekxuQnliM0J6TGw5MllXeHBaR0YwWlNoMGFHbHpLVHRjYmlBZ0lDQjlLVHRjYmlBZ2ZTeGNiaUFnWjJWMFZtRnNkV1U2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXpkR0YwWlM1ZmRtRnNkV1U3WEc0Z0lIMHNYRzRnSUdoaGMxWmhiSFZsT2lCbWRXNWpkR2x2YmlBb0tTQjdYRzRnSUNBZ2NtVjBkWEp1SUhSb2FYTXVjM1JoZEdVdVgzWmhiSFZsSUNFOVBTQW5KenRjYmlBZ2ZTeGNiaUFnWjJWMFJYSnliM0pOWlhOellXZGxPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWFYTldZV3hwWkNncElIeDhJSFJvYVhNdWMyaHZkMUpsY1hWcGNtVmtLQ2tnUHlCdWRXeHNJRG9nZEdocGN5NXpkR0YwWlM1ZmMyVnlkbVZ5UlhKeWIzSWdmSHdnZEdocGN5NXdjbTl3Y3k1MllXeHBaR0YwYVc5dVJYSnliM0k3WEc0Z0lIMHNYRzRnSUdselJtOXliVVJwYzJGaWJHVmtPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWNISnZjSE11WDJselJtOXliVVJwYzJGaWJHVmtLQ2s3WEc0Z0lIMHNYRzRnSUdselZtRnNhV1E2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnZEdocGN5NXpkR0YwWlM1ZmFYTldZV3hwWkR0Y2JpQWdmU3hjYmlBZ2FYTlFjbWx6ZEdsdVpUb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjBhR2x6TG5OMFlYUmxMbDlwYzFCeWFYTjBhVzVsTzF4dUlDQjlMRnh1SUNCcGMxSmxjWFZwY21Wa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlDRWhkR2hwY3k1d2NtOXdjeTV5WlhGMWFYSmxaRHRjYmlBZ2ZTeGNiaUFnYzJodmQxSmxjWFZwY21Wa09pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIUm9hWE11YVhOU1pYRjFhWEpsWkNncElDWW1JSFJvYVhNdWMzUmhkR1V1WDNaaGJIVmxJRDA5UFNBbkp6dGNiaUFnZlN4Y2JpQWdjMmh2ZDBWeWNtOXlPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJQ0YwYUdsekxuTm9iM2RTWlhGMWFYSmxaQ2dwSUNZbUlDRjBhR2x6TG5OMFlYUmxMbDlwYzFaaGJHbGtPMXh1SUNCOUxGeHVJQ0JwYzFaaGJHbGtWbUZzZFdVNklHWjFibU4wYVc5dUlDaDJZV3gxWlNrZ2UxeHVJQ0FnSUhKbGRIVnliaUIwYUdsekxuQnliM0J6TGw5cGMxWmhiR2xrVm1Gc2RXVXVZMkZzYkNodWRXeHNMQ0IwYUdsekxDQjJZV3gxWlNrN1hHNGdJSDFjYm4wN1hHNGlYWDA9IiwidmFyIFJlYWN0ID0gZ2xvYmFsLlJlYWN0IHx8IHJlcXVpcmUoJ3JlYWN0Jyk7XG52YXIgRm9ybXN5ID0ge307XG52YXIgdmFsaWRhdGlvblJ1bGVzID0gcmVxdWlyZSgnLi92YWxpZGF0aW9uUnVsZXMuanMnKTtcbnZhciB1dGlscyA9IHJlcXVpcmUoJy4vdXRpbHMuanMnKTtcbnZhciBNaXhpbiA9IHJlcXVpcmUoJy4vTWl4aW4uanMnKTtcbnZhciBvcHRpb25zID0ge307XG5cbkZvcm1zeS5NaXhpbiA9IE1peGluO1xuXG5Gb3Jtc3kuZGVmYXVsdHMgPSBmdW5jdGlvbiAocGFzc2VkT3B0aW9ucykge1xuICBvcHRpb25zID0gcGFzc2VkT3B0aW9ucztcbn07XG5cbkZvcm1zeS5hZGRWYWxpZGF0aW9uUnVsZSA9IGZ1bmN0aW9uIChuYW1lLCBmdW5jKSB7XG4gIHZhbGlkYXRpb25SdWxlc1tuYW1lXSA9IGZ1bmM7XG59O1xuXG5Gb3Jtc3kuRm9ybSA9IFJlYWN0LmNyZWF0ZUNsYXNzKHtkaXNwbGF5TmFtZTogXCJGb3JtXCIsXG4gIGdldEluaXRpYWxTdGF0ZTogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpc1ZhbGlkOiB0cnVlLFxuICAgICAgaXNTdWJtaXR0aW5nOiBmYWxzZSxcbiAgICAgIGNhbkNoYW5nZTogZmFsc2VcbiAgICB9O1xuICB9LFxuICBnZXREZWZhdWx0UHJvcHM6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaGVhZGVyczoge30sXG4gICAgICBvblN1Y2Nlc3M6IGZ1bmN0aW9uICgpIHt9LFxuICAgICAgb25FcnJvcjogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblN1Ym1pdDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblZhbGlkU3VibWl0OiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uSW52YWxpZFN1Ym1pdDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblN1Ym1pdHRlZDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvblZhbGlkOiBmdW5jdGlvbiAoKSB7fSxcbiAgICAgIG9uSW52YWxpZDogZnVuY3Rpb24gKCkge30sXG4gICAgICBvbkNoYW5nZTogZnVuY3Rpb24gKCkge31cbiAgICB9O1xuICB9LFxuXG4gIC8vIEFkZCBhIG1hcCB0byBzdG9yZSB0aGUgaW5wdXRzIG9mIHRoZSBmb3JtLCBhIG1vZGVsIHRvIHN0b3JlXG4gIC8vIHRoZSB2YWx1ZXMgb2YgdGhlIGZvcm0gYW5kIHJlZ2lzdGVyIGNoaWxkIGlucHV0c1xuICBjb21wb25lbnRXaWxsTW91bnQ6IGZ1bmN0aW9uICgpIHtcbiAgICB0aGlzLmlucHV0cyA9IHt9O1xuICAgIHRoaXMubW9kZWwgPSB7fTtcbiAgICB0aGlzLnJlZ2lzdGVySW5wdXRzKHRoaXMucHJvcHMuY2hpbGRyZW4pO1xuICB9LFxuXG4gIGNvbXBvbmVudERpZE1vdW50OiBmdW5jdGlvbiAoKSB7XG4gICAgdGhpcy52YWxpZGF0ZUZvcm0oKTtcbiAgfSxcblxuICBjb21wb25lbnRXaWxsVXBkYXRlOiBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGlucHV0S2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKTtcblxuICAgIC8vIFRoZSB1cGRhdGVkIGNoaWxkcmVuIGFycmF5IGlzIG5vdCBhdmFpbGFibGUgaGVyZSBmb3Igc29tZSByZWFzb24sXG4gICAgLy8gd2UgbmVlZCB0byB3YWl0IGZvciBuZXh0IGV2ZW50IGxvb3BcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblxuICAgICAgLy8gVGhlIGNvbXBvbmVudCBtaWdodCBoYXZlIGJlZW4gdW5tb3VudGVkIG9uIGFuXG4gICAgICAvLyB1cGRhdGVcbiAgICAgIGlmICh0aGlzLmlzTW91bnRlZCgpKSB7XG5cbiAgICAgICAgdGhpcy5yZWdpc3RlcklucHV0cyh0aGlzLnByb3BzLmNoaWxkcmVuKTtcblxuICAgICAgIGlmICh0aGlzLnByb3BzLnZhbGlkYXRpb25FcnJvcnMpIHtcbiAgICAgICAgICB0aGlzLnNldElucHV0VmFsaWRhdGlvbkVycm9ycyh0aGlzLnByb3BzLnZhbGlkYXRpb25FcnJvcnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgdmFyIG5ld0lucHV0S2V5cyA9IE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKTtcbiAgICAgICAgaWYgKHV0aWxzLmFycmF5c0RpZmZlcihpbnB1dEtleXMsIG5ld0lucHV0S2V5cykpIHtcbiAgICAgICAgICB0aGlzLnZhbGlkYXRlRm9ybSgpO1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH0uYmluZCh0aGlzKSwgMCk7XG4gIH0sXG5cbiAgLy8gVXBkYXRlIG1vZGVsLCBzdWJtaXQgdG8gdXJsIHByb3AgYW5kIHNlbmQgdGhlIG1vZGVsXG4gIHN1Ym1pdDogZnVuY3Rpb24gKGV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIC8vIFRyaWdnZXIgZm9ybSBhcyBub3QgcHJpc3RpbmUuXG4gICAgLy8gSWYgYW55IGlucHV0cyBoYXZlIG5vdCBiZWVuIHRvdWNoZWQgeWV0IHRoaXMgd2lsbCBtYWtlIHRoZW0gZGlydHlcbiAgICAvLyBzbyB2YWxpZGF0aW9uIGJlY29tZXMgdmlzaWJsZSAoaWYgYmFzZWQgb24gaXNQcmlzdGluZSlcbiAgICB0aGlzLnNldEZvcm1QcmlzdGluZShmYWxzZSk7XG5cbiAgICAvLyBUbyBzdXBwb3J0IHVzZSBjYXNlcyB3aGVyZSBubyBhc3luYyBvciByZXF1ZXN0IG9wZXJhdGlvbiBpcyBuZWVkZWQuXG4gICAgLy8gVGhlIFwib25TdWJtaXRcIiBjYWxsYmFjayBpcyBjYWxsZWQgd2l0aCB0aGUgbW9kZWwgZS5nLiB7ZmllbGROYW1lOiBcIm15VmFsdWVcIn0sXG4gICAgLy8gaWYgd2FudGluZyB0byByZXNldCB0aGUgZW50aXJlIGZvcm0gdG8gb3JpZ2luYWwgc3RhdGUsIHRoZSBzZWNvbmQgcGFyYW0gaXMgYSBjYWxsYmFjayBmb3IgdGhpcy5cbiAgICBpZiAoIXRoaXMucHJvcHMudXJsKSB7XG4gICAgICB0aGlzLnVwZGF0ZU1vZGVsKCk7XG4gICAgICB2YXIgbW9kZWwgPSB0aGlzLm1hcE1vZGVsKCk7XG4gICAgICB0aGlzLnByb3BzLm9uU3VibWl0KG1vZGVsLCB0aGlzLnJlc2V0TW9kZWwsIHRoaXMudXBkYXRlSW5wdXRzV2l0aEVycm9yKTtcbiAgICAgIHRoaXMuc3RhdGUuaXNWYWxpZCA/IHRoaXMucHJvcHMub25WYWxpZFN1Ym1pdChtb2RlbCwgdGhpcy5yZXNldE1vZGVsKSA6IHRoaXMucHJvcHMub25JbnZhbGlkU3VibWl0KG1vZGVsLCB0aGlzLnJlc2V0TW9kZWwpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudXBkYXRlTW9kZWwoKTtcbiAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgIGlzU3VibWl0dGluZzogdHJ1ZVxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcy5vblN1Ym1pdCh0aGlzLm1hcE1vZGVsKCksIHRoaXMucmVzZXRNb2RlbCwgdGhpcy51cGRhdGVJbnB1dHNXaXRoRXJyb3IpO1xuXG4gICAgdmFyIGhlYWRlcnMgPSAoT2JqZWN0LmtleXModGhpcy5wcm9wcy5oZWFkZXJzKS5sZW5ndGggJiYgdGhpcy5wcm9wcy5oZWFkZXJzKSB8fCBvcHRpb25zLmhlYWRlcnMgfHwge307XG5cbiAgICB2YXIgbWV0aG9kID0gdGhpcy5wcm9wcy5tZXRob2QgJiYgdXRpbHMuYWpheFt0aGlzLnByb3BzLm1ldGhvZC50b0xvd2VyQ2FzZSgpXSA/IHRoaXMucHJvcHMubWV0aG9kLnRvTG93ZXJDYXNlKCkgOiAncG9zdCc7XG4gICAgdXRpbHMuYWpheFttZXRob2RdKHRoaXMucHJvcHMudXJsLCB0aGlzLm1hcE1vZGVsKCksIHRoaXMucHJvcHMuY29udGVudFR5cGUgfHwgb3B0aW9ucy5jb250ZW50VHlwZSB8fCAnanNvbicsIGhlYWRlcnMpXG4gICAgICAudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHtcbiAgICAgICAgdGhpcy5wcm9wcy5vblN1Y2Nlc3MocmVzcG9uc2UpO1xuICAgICAgICB0aGlzLnByb3BzLm9uU3VibWl0dGVkKCk7XG4gICAgICB9LmJpbmQodGhpcykpXG4gICAgICAuY2F0Y2godGhpcy5mYWlsU3VibWl0KTtcbiAgfSxcblxuICBtYXBNb2RlbDogZnVuY3Rpb24gKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLm1hcHBpbmcgPyB0aGlzLnByb3BzLm1hcHBpbmcodGhpcy5tb2RlbCkgOiB0aGlzLm1vZGVsO1xuICB9LFxuXG4gIC8vIEdvZXMgdGhyb3VnaCBhbGwgcmVnaXN0ZXJlZCBjb21wb25lbnRzIGFuZFxuICAvLyB1cGRhdGVzIHRoZSBtb2RlbCB2YWx1ZXNcbiAgdXBkYXRlTW9kZWw6IGZ1bmN0aW9uICgpIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmlucHV0cykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuICAgICAgdGhpcy5tb2RlbFtuYW1lXSA9IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgfS5iaW5kKHRoaXMpKTtcbiAgfSxcblxuICAvLyBSZXNldCBlYWNoIGtleSBpbiB0aGUgbW9kZWwgdG8gdGhlIG9yaWdpbmFsIC8gaW5pdGlhbCB2YWx1ZVxuICByZXNldE1vZGVsOiBmdW5jdGlvbiAoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5pbnB1dHMpLmZvckVhY2goZnVuY3Rpb24gKG5hbWUpIHtcbiAgICAgIHRoaXMuaW5wdXRzW25hbWVdLnJlc2V0VmFsdWUoKTtcbiAgICB9LmJpbmQodGhpcykpO1xuICAgIHRoaXMudmFsaWRhdGVGb3JtKCk7XG4gIH0sXG5cbiAgc2V0SW5wdXRWYWxpZGF0aW9uRXJyb3JzOiBmdW5jdGlvbiAoZXJyb3JzKSB7XG4gICAgIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKS5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IHRoaXMuaW5wdXRzW25hbWVdO1xuICAgICAgdmFyIGFyZ3MgPSBbe1xuICAgICAgICBfaXNWYWxpZDogIShuYW1lIGluIGVycm9ycyksXG4gICAgICAgIF9zZXJ2ZXJFcnJvcjogZXJyb3JzW25hbWVdXG4gICAgICB9XTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZS5hcHBseShjb21wb25lbnQsIGFyZ3MpO1xuICAgIH0uYmluZCh0aGlzKSk7ICAgXG4gIH0sXG5cbiAgLy8gR28gdGhyb3VnaCBlcnJvcnMgZnJvbSBzZXJ2ZXIgYW5kIGdyYWIgdGhlIGNvbXBvbmVudHNcbiAgLy8gc3RvcmVkIGluIHRoZSBpbnB1dHMgbWFwLiBDaGFuZ2UgdGhlaXIgc3RhdGUgdG8gaW52YWxpZFxuICAvLyBhbmQgc2V0IHRoZSBzZXJ2ZXJFcnJvciBtZXNzYWdlXG4gIHVwZGF0ZUlucHV0c1dpdGhFcnJvcjogZnVuY3Rpb24gKGVycm9ycykge1xuICAgIE9iamVjdC5rZXlzKGVycm9ycykuZm9yRWFjaChmdW5jdGlvbiAobmFtZSwgaW5kZXgpIHtcbiAgICAgIHZhciBjb21wb25lbnQgPSB0aGlzLmlucHV0c1tuYW1lXTtcblxuICAgICAgaWYgKCFjb21wb25lbnQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdZb3UgYXJlIHRyeWluZyB0byB1cGRhdGUgYW4gaW5wdXQgdGhhdCBkb2VzIG5vdCBleGlzdHMuIFZlcmlmeSBlcnJvcnMgb2JqZWN0IHdpdGggaW5wdXQgbmFtZXMuICcgKyBKU09OLnN0cmluZ2lmeShlcnJvcnMpKTtcbiAgICAgIH1cblxuICAgICAgdmFyIGFyZ3MgPSBbe1xuICAgICAgICBfaXNWYWxpZDogZmFsc2UsXG4gICAgICAgIF9zZXJ2ZXJFcnJvcjogZXJyb3JzW25hbWVdXG4gICAgICB9XTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZS5hcHBseShjb21wb25lbnQsIGFyZ3MpO1xuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG5cbiAgZmFpbFN1Ym1pdDogZnVuY3Rpb24gKGVycm9ycykge1xuICAgIHRoaXMudXBkYXRlSW5wdXRzV2l0aEVycm9yKGVycm9ycyk7XG4gICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICBpc1N1Ym1pdHRpbmc6IGZhbHNlXG4gICAgfSk7XG4gICAgdGhpcy5wcm9wcy5vbkVycm9yKGVycm9ycyk7XG4gICAgdGhpcy5wcm9wcy5vblN1Ym1pdHRlZCgpO1xuICB9LFxuXG4gIC8vIFRyYXZlcnNlIHRoZSBjaGlsZHJlbiBhbmQgY2hpbGRyZW4gb2YgY2hpbGRyZW4gdG8gZmluZFxuICAvLyBhbGwgaW5wdXRzIGJ5IGNoZWNraW5nIHRoZSBuYW1lIHByb3AuIE1heWJlIGRvIGEgYmV0dGVyXG4gIC8vIGNoZWNrIGhlcmVcbiAgcmVnaXN0ZXJJbnB1dHM6IGZ1bmN0aW9uIChjaGlsZHJlbikge1xuICAgIFJlYWN0LkNoaWxkcmVuLmZvckVhY2goY2hpbGRyZW4sIGZ1bmN0aW9uIChjaGlsZCkge1xuXG4gICAgICBpZiAoY2hpbGQgJiYgY2hpbGQucHJvcHMgJiYgY2hpbGQucHJvcHMubmFtZSkge1xuICAgICAgICBjaGlsZC5wcm9wcy5fYXR0YWNoVG9Gb3JtID0gdGhpcy5hdHRhY2hUb0Zvcm07XG4gICAgICAgIGNoaWxkLnByb3BzLl9kZXRhY2hGcm9tRm9ybSA9IHRoaXMuZGV0YWNoRnJvbUZvcm07XG4gICAgICAgIGNoaWxkLnByb3BzLl92YWxpZGF0ZSA9IHRoaXMudmFsaWRhdGU7XG4gICAgICAgIGNoaWxkLnByb3BzLl9pc0Zvcm1EaXNhYmxlZCA9IHRoaXMuaXNGb3JtRGlzYWJsZWQ7XG4gICAgICAgIGNoaWxkLnByb3BzLl9pc1ZhbGlkVmFsdWUgPSB0aGlzLnJ1blZhbGlkYXRpb247XG4gICAgICB9XG5cbiAgICAgIGlmIChjaGlsZCAmJiBjaGlsZC5wcm9wcyAmJiBjaGlsZC5wcm9wcy5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnJlZ2lzdGVySW5wdXRzKGNoaWxkLnByb3BzLmNoaWxkcmVuKTtcbiAgICAgIH1cblxuICAgIH0uYmluZCh0aGlzKSk7XG4gIH0sXG5cbiAgaXNGb3JtRGlzYWJsZWQ6IGZ1bmN0aW9uICgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5kaXNhYmxlZDtcbiAgfSxcblxuICBnZXRDdXJyZW50VmFsdWVzOiBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRzKS5yZWR1Y2UoZnVuY3Rpb24gKGRhdGEsIG5hbWUpIHtcbiAgICAgIHZhciBjb21wb25lbnQgPSB0aGlzLmlucHV0c1tuYW1lXTtcbiAgICAgIGRhdGFbbmFtZV0gPSBjb21wb25lbnQuc3RhdGUuX3ZhbHVlO1xuICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfS5iaW5kKHRoaXMpLCB7fSk7XG4gIH0sXG5cbiAgc2V0Rm9ybVByaXN0aW5lOiBmdW5jdGlvbiAoaXNQcmlzdGluZSkge1xuICAgIHZhciBpbnB1dHMgPSB0aGlzLmlucHV0cztcbiAgICB2YXIgaW5wdXRLZXlzID0gT2JqZWN0LmtleXMoaW5wdXRzKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGNvbXBvbmVudCBhbmQgc2V0IGl0IGFzIHByaXN0aW5lXG4gICAgLy8gb3IgXCJkaXJ0eVwiLlxuICAgIGlucHV0S2V5cy5mb3JFYWNoKGZ1bmN0aW9uIChuYW1lLCBpbmRleCkge1xuICAgICAgdmFyIGNvbXBvbmVudCA9IGlucHV0c1tuYW1lXTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZSh7XG4gICAgICAgIF9pc1ByaXN0aW5lOiBpc1ByaXN0aW5lXG4gICAgICB9KTtcbiAgICB9LmJpbmQodGhpcykpO1xuICB9LFxuXG4gIC8vIFVzZSB0aGUgYmluZGVkIHZhbHVlcyBhbmQgdGhlIGFjdHVhbCBpbnB1dCB2YWx1ZSB0b1xuICAvLyB2YWxpZGF0ZSB0aGUgaW5wdXQgYW5kIHNldCBpdHMgc3RhdGUuIFRoZW4gY2hlY2sgdGhlXG4gIC8vIHN0YXRlIG9mIHRoZSBmb3JtIGl0c2VsZlxuICB2YWxpZGF0ZTogZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuXG4gICAgLy8gVHJpZ2dlciBvbkNoYW5nZVxuICAgIGlmICh0aGlzLnN0YXRlLmNhbkNoYW5nZSkge1xuICAgICAgdGhpcy5wcm9wcy5vbkNoYW5nZSh0aGlzLmdldEN1cnJlbnRWYWx1ZXMoKSk7XG4gICAgfVxuXG4gICAgdmFyIGlzVmFsaWQgPSB0cnVlO1xuICAgIGlmIChjb21wb25lbnQudmFsaWRhdGUgJiYgdHlwZW9mIGNvbXBvbmVudC52YWxpZGF0ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgaXNWYWxpZCA9IGNvbXBvbmVudC52YWxpZGF0ZSgpO1xuICAgIH0gZWxzZSBpZiAoY29tcG9uZW50LnByb3BzLnJlcXVpcmVkIHx8IGNvbXBvbmVudC5fdmFsaWRhdGlvbnMpIHtcbiAgICAgIGlzVmFsaWQgPSB0aGlzLnJ1blZhbGlkYXRpb24oY29tcG9uZW50KTtcbiAgICB9XG5cbiAgICAvLyBSdW4gdGhyb3VnaCB0aGUgdmFsaWRhdGlvbnMsIHNwbGl0IHRoZW0gdXAgYW5kIGNhbGxcbiAgICAvLyB0aGUgdmFsaWRhdG9yIElGIHRoZXJlIGlzIGEgdmFsdWUgb3IgaXQgaXMgcmVxdWlyZWRcbiAgICBjb21wb25lbnQuc2V0U3RhdGUoe1xuICAgICAgX2lzVmFsaWQ6IGlzVmFsaWQsXG4gICAgICBfc2VydmVyRXJyb3I6IG51bGxcbiAgICB9LCB0aGlzLnZhbGlkYXRlRm9ybSk7XG5cbiAgfSxcblxuICAvLyBDaGVja3MgdmFsaWRhdGlvbiBvbiBjdXJyZW50IHZhbHVlIG9yIGEgcGFzc2VkIHZhbHVlXG4gIHJ1blZhbGlkYXRpb246IGZ1bmN0aW9uIChjb21wb25lbnQsIHZhbHVlKSB7XG5cbiAgICB2YXIgaXNWYWxpZCA9IHRydWU7XG4gICAgXG4gICAgdmFsdWUgPSBhcmd1bWVudHMubGVuZ3RoID09PSAyID8gdmFsdWUgOiBjb21wb25lbnQuc3RhdGUuX3ZhbHVlO1xuICAgIGlmIChjb21wb25lbnQuX3ZhbGlkYXRpb25zLmxlbmd0aCAmJiAoY29tcG9uZW50LnByb3BzLnJlcXVpcmVkIHx8IHZhbHVlICE9PSAnJykpIHtcbiAgICAgIGNvbXBvbmVudC5fdmFsaWRhdGlvbnMuc3BsaXQoL1xcLCg/IVtee1xcW10qW31cXF1dKS9nKS5mb3JFYWNoKGZ1bmN0aW9uICh2YWxpZGF0aW9uKSB7XG4gICAgICAgIHZhciBhcmdzID0gdmFsaWRhdGlvbi5zcGxpdCgnOicpO1xuICAgICAgICB2YXIgdmFsaWRhdGVNZXRob2QgPSBhcmdzLnNoaWZ0KCk7XG4gICAgICAgIGFyZ3MgPSBhcmdzLm1hcChmdW5jdGlvbiAoYXJnKSB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKGFyZyk7XG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgcmV0dXJuIGFyZzsgLy8gSXQgaXMgYSBzdHJpbmcgaWYgaXQgY2FuIG5vdCBwYXJzZSBpdFxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGFyZ3MgPSBbdmFsdWVdLmNvbmNhdChhcmdzKTtcbiAgICAgICAgaWYgKCF2YWxpZGF0aW9uUnVsZXNbdmFsaWRhdGVNZXRob2RdKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGb3Jtc3kgZG9lcyBub3QgaGF2ZSB0aGUgdmFsaWRhdGlvbiBydWxlOiAnICsgdmFsaWRhdGVNZXRob2QpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdmFsaWRhdGlvblJ1bGVzW3ZhbGlkYXRlTWV0aG9kXS5hcHBseSh0aGlzLmdldEN1cnJlbnRWYWx1ZXMoKSwgYXJncykpIHtcbiAgICAgICAgICBpc1ZhbGlkID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0uYmluZCh0aGlzKSk7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgY29tcG9uZW50LmNoZWNrVmFsaWRpdHkgPT09IFwiZnVuY3Rpb25cIikge1xuICAgICAgLy8gdGhlIGNvbXBvbmVudCBkZWZpbmVzIGFuIGV4cGxpY2l0IGNoZWNrVmFsaWRpdHkgZnVuY3Rpb25cbiAgICAgIGlzVmFsaWQgPSBjb21wb25lbnQuY2hlY2tWYWxpZGl0eSgpXG4gICAgfVxuXG4gICAgcmV0dXJuIGlzVmFsaWQ7XG4gIH0sXG5cbiAgLy8gVmFsaWRhdGUgdGhlIGZvcm0gYnkgZ29pbmcgdGhyb3VnaCBhbGwgY2hpbGQgaW5wdXQgY29tcG9uZW50c1xuICAvLyBhbmQgY2hlY2sgdGhlaXIgc3RhdGVcbiAgdmFsaWRhdGVGb3JtOiBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGFsbElzVmFsaWQgPSB0cnVlO1xuICAgIHZhciBpbnB1dHMgPSB0aGlzLmlucHV0cztcbiAgICB2YXIgaW5wdXRLZXlzID0gT2JqZWN0LmtleXMoaW5wdXRzKTtcblxuICAgIC8vIFdlIG5lZWQgYSBjYWxsYmFjayBhcyB3ZSBhcmUgdmFsaWRhdGluZyBhbGwgaW5wdXRzIGFnYWluLiBUaGlzIHdpbGxcbiAgICAvLyBydW4gd2hlbiB0aGUgbGFzdCBjb21wb25lbnQgaGFzIHNldCBpdHMgc3RhdGVcbiAgICB2YXIgb25WYWxpZGF0aW9uQ29tcGxldGUgPSBmdW5jdGlvbiAoKSB7XG4gICAgICBpbnB1dEtleXMuZm9yRWFjaChmdW5jdGlvbiAobmFtZSkge1xuICAgICAgICBpZiAoIWlucHV0c1tuYW1lXS5zdGF0ZS5faXNWYWxpZCkge1xuICAgICAgICAgIGFsbElzVmFsaWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfS5iaW5kKHRoaXMpKTtcblxuICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgIGlzVmFsaWQ6IGFsbElzVmFsaWRcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoYWxsSXNWYWxpZCkge1xuICAgICAgICB0aGlzLnByb3BzLm9uVmFsaWQoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucHJvcHMub25JbnZhbGlkKCk7XG4gICAgICB9XG5cbiAgICAgIC8vIFRlbGwgdGhlIGZvcm0gdGhhdCBpdCBjYW4gc3RhcnQgdG8gdHJpZ2dlciBjaGFuZ2UgZXZlbnRzXG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgY2FuQ2hhbmdlOiB0cnVlXG4gICAgICB9KTtcblxuICAgIH0uYmluZCh0aGlzKTtcblxuICAgIC8vIFJ1biB2YWxpZGF0aW9uIGFnYWluIGluIGNhc2UgYWZmZWN0ZWQgYnkgb3RoZXIgaW5wdXRzLiBUaGVcbiAgICAvLyBsYXN0IGNvbXBvbmVudCB2YWxpZGF0ZWQgd2lsbCBydW4gdGhlIG9uVmFsaWRhdGlvbkNvbXBsZXRlIGNhbGxiYWNrXG4gICAgaW5wdXRLZXlzLmZvckVhY2goZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7XG4gICAgICB2YXIgY29tcG9uZW50ID0gaW5wdXRzW25hbWVdO1xuICAgICAgdmFyIGlzVmFsaWQgPSB0aGlzLnJ1blZhbGlkYXRpb24oY29tcG9uZW50KTtcbiAgICAgIGNvbXBvbmVudC5zZXRTdGF0ZSh7XG4gICAgICAgIF9pc1ZhbGlkOiBpc1ZhbGlkLFxuICAgICAgICBfc2VydmVyRXJyb3I6IG51bGxcbiAgICAgIH0sIGluZGV4ID09PSBpbnB1dEtleXMubGVuZ3RoIC0gMSA/IG9uVmFsaWRhdGlvbkNvbXBsZXRlIDogbnVsbCk7XG4gICAgfS5iaW5kKHRoaXMpKTtcblxuICAgIC8vIElmIHRoZXJlIGFyZSBubyBpbnB1dHMsIHNldCBzdGF0ZSB3aGVyZSBmb3JtIGlzIHJlYWR5IHRvIHRyaWdnZXJcbiAgICAvLyBjaGFuZ2UgZXZlbnQuIE5ldyBpbnB1dHMgbWlnaHQgYmUgYWRkZWQgbGF0ZXJcbiAgICBpZiAoIWlucHV0S2V5cy5sZW5ndGggJiYgdGhpcy5pc01vdW50ZWQoKSkge1xuICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgIGNhbkNoYW5nZTogdHJ1ZVxuICAgICAgfSk7XG4gICAgfVxuICB9LFxuXG4gIC8vIE1ldGhvZCBwdXQgb24gZWFjaCBpbnB1dCBjb21wb25lbnQgdG8gcmVnaXN0ZXJcbiAgLy8gaXRzZWxmIHRvIHRoZSBmb3JtXG4gIGF0dGFjaFRvRm9ybTogZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuICAgIHRoaXMuaW5wdXRzW2NvbXBvbmVudC5wcm9wcy5uYW1lXSA9IGNvbXBvbmVudDtcbiAgICB0aGlzLm1vZGVsW2NvbXBvbmVudC5wcm9wcy5uYW1lXSA9IGNvbXBvbmVudC5zdGF0ZS5fdmFsdWU7XG4gICAgdGhpcy52YWxpZGF0ZShjb21wb25lbnQpO1xuICB9LFxuXG4gIC8vIE1ldGhvZCBwdXQgb24gZWFjaCBpbnB1dCBjb21wb25lbnQgdG8gdW5yZWdpc3RlclxuICAvLyBpdHNlbGYgZnJvbSB0aGUgZm9ybVxuICBkZXRhY2hGcm9tRm9ybTogZnVuY3Rpb24gKGNvbXBvbmVudCkge1xuICAgIGRlbGV0ZSB0aGlzLmlucHV0c1tjb21wb25lbnQucHJvcHMubmFtZV07XG4gICAgZGVsZXRlIHRoaXMubW9kZWxbY29tcG9uZW50LnByb3BzLm5hbWVdO1xuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uICgpIHtcblxuICAgIHJldHVybiBSZWFjdC5ET00uZm9ybSh7XG4gICAgICAgIG9uU3VibWl0OiB0aGlzLnN1Ym1pdCxcbiAgICAgICAgY2xhc3NOYW1lOiB0aGlzLnByb3BzLmNsYXNzTmFtZVxuICAgICAgfSxcbiAgICAgIHRoaXMucHJvcHMuY2hpbGRyZW5cbiAgICApO1xuXG4gIH1cbn0pO1xuXG5pZiAoIWdsb2JhbC5leHBvcnRzICYmICFnbG9iYWwubW9kdWxlICYmICghZ2xvYmFsLmRlZmluZSB8fCAhZ2xvYmFsLmRlZmluZS5hbWQpKSB7XG4gIGdsb2JhbC5Gb3Jtc3kgPSBGb3Jtc3k7XG59XG5cbm1vZHVsZS5leHBvcnRzID0gRm9ybXN5O1xuXG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lMMVZ6WlhKekwyTm9jbWx6ZEdsaGJtRnNabTl1YVM5RWIyTjFiV1Z1ZEhNdlpHVjJMMlp2Y20xemVTMXlaV0ZqZEM5emNtTXZiV0ZwYmk1cWN5SXNJbk52ZFhKalpYTWlPbHNpTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjbU12YldGcGJpNXFjeUpkTENKdVlXMWxjeUk2VzEwc0ltMWhjSEJwYm1keklqb2lRVUZCUVN4SlFVRkpMRXRCUVVzc1IwRkJSeXhOUVVGTkxFTkJRVU1zUzBGQlN5eEpRVUZKTEU5QlFVOHNRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJRenRCUVVNM1F5eEpRVUZKTEUxQlFVMHNSMEZCUnl4RlFVRkZMRU5CUVVNN1FVRkRhRUlzU1VGQlNTeGxRVUZsTEVkQlFVY3NUMEZCVHl4RFFVRkRMSE5DUVVGelFpeERRVUZETEVOQlFVTTdRVUZEZEVRc1NVRkJTU3hMUVVGTExFZEJRVWNzVDBGQlR5eERRVUZETEZsQlFWa3NRMEZCUXl4RFFVRkRPMEZCUTJ4RExFbEJRVWtzUzBGQlN5eEhRVUZITEU5QlFVOHNRMEZCUXl4WlFVRlpMRU5CUVVNc1EwRkJRenRCUVVOc1F5eEpRVUZKTEU5QlFVOHNSMEZCUnl4RlFVRkZMRU5CUVVNN08wRkJSV3BDTEUxQlFVMHNRMEZCUXl4TFFVRkxMRWRCUVVjc1MwRkJTeXhEUVVGRE96dEJRVVZ5UWl4TlFVRk5MRU5CUVVNc1VVRkJVU3hIUVVGSExGVkJRVlVzWVVGQllTeEZRVUZGTzBWQlEzcERMRTlCUVU4c1IwRkJSeXhoUVVGaExFTkJRVU03UVVGRE1VSXNRMEZCUXl4RFFVRkRPenRCUVVWR0xFMUJRVTBzUTBGQlF5eHBRa0ZCYVVJc1IwRkJSeXhWUVVGVkxFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVTdSVUZETDBNc1pVRkJaU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0QlFVTXZRaXhEUVVGRExFTkJRVU03TzBGQlJVWXNhVU5CUVdsRExHOUNRVUZCTzBWQlF5OUNMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVODdUVUZEVEN4UFFVRlBMRVZCUVVVc1NVRkJTVHROUVVOaUxGbEJRVmtzUlVGQlJTeExRVUZMTzAxQlEyNUNMRk5CUVZNc1JVRkJSU3hMUVVGTE8wdEJRMnBDTEVOQlFVTTdSMEZEU0R0RlFVTkVMR1ZCUVdVc1JVRkJSU3haUVVGWk8wbEJRek5DTEU5QlFVODdUVUZEVEN4UFFVRlBMRVZCUVVVc1JVRkJSVHROUVVOWUxGTkJRVk1zUlVGQlJTeFpRVUZaTEVWQlFVVTdUVUZEZWtJc1QwRkJUeXhGUVVGRkxGbEJRVmtzUlVGQlJUdE5RVU4yUWl4UlFVRlJMRVZCUVVVc1dVRkJXU3hGUVVGRk8wMUJRM2hDTEdGQlFXRXNSVUZCUlN4WlFVRlpMRVZCUVVVN1RVRkROMElzWlVGQlpTeEZRVUZGTEZsQlFWa3NSVUZCUlR0TlFVTXZRaXhYUVVGWExFVkJRVVVzV1VGQldTeEZRVUZGTzAxQlF6TkNMRTlCUVU4c1JVRkJSU3haUVVGWkxFVkJRVVU3VFVGRGRrSXNVMEZCVXl4RlFVRkZMRmxCUVZrc1JVRkJSVHROUVVONlFpeFJRVUZSTEVWQlFVVXNXVUZCV1N4RlFVRkZPMHRCUTNwQ0xFTkJRVU03UVVGRFRpeEhRVUZITzBGQlEwZzdRVUZEUVRzN1JVRkZSU3hyUWtGQmEwSXNSVUZCUlN4WlFVRlpPMGxCUXpsQ0xFbEJRVWtzUTBGQlF5eE5RVUZOTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJwQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVkQlFVY3NSVUZCUlN4RFFVRkRPMGxCUTJoQ0xFbEJRVWtzUTBGQlF5eGpRVUZqTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dEJRVU0zUXl4SFFVRkhPenRGUVVWRUxHbENRVUZwUWl4RlFVRkZMRmxCUVZrN1NVRkROMElzU1VGQlNTeERRVUZETEZsQlFWa3NSVUZCUlN4RFFVRkRPMEZCUTNoQ0xFZEJRVWM3TzBWQlJVUXNiVUpCUVcxQ0xFVkJRVVVzV1VGQldUdEJRVU51UXl4SlFVRkpMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wRkJRemRETzBGQlEwRTdPMEZCUlVFc1NVRkJTU3hWUVVGVkxFTkJRVU1zV1VGQldUdEJRVU16UWp0QlFVTkJPenRCUVVWQkxFMUJRVTBzU1VGQlNTeEpRVUZKTEVOQlFVTXNVMEZCVXl4RlFVRkZMRVZCUVVVN08wRkJSVFZDTEZGQlFWRXNTVUZCU1N4RFFVRkRMR05CUVdNc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPenRQUVVVeFF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1owSkJRV2RDTEVWQlFVVTdWVUZET1VJc1NVRkJTU3hEUVVGRExIZENRVUYzUWl4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zWjBKQlFXZENMRU5CUVVNc1EwRkJRenRCUVVOeVJTeFRRVUZUT3p0UlFVVkVMRWxCUVVrc1dVRkJXU3hIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8xRkJRelZETEVsQlFVa3NTMEZCU3l4RFFVRkRMRmxCUVZrc1EwRkJReXhUUVVGVExFVkJRVVVzV1VGQldTeERRVUZETEVWQlFVVTdWVUZETDBNc1NVRkJTU3hEUVVGRExGbEJRVmtzUlVGQlJTeERRVUZETzBGQlF6bENMRk5CUVZNN08wRkJSVlFzVDBGQlR6czdTMEZGUml4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTnlRaXhIUVVGSE8wRkJRMGc3TzBWQlJVVXNUVUZCVFN4RlFVRkZMRlZCUVZVc1MwRkJTeXhGUVVGRk8wRkJRek5DTEVsQlFVa3NTMEZCU3l4RFFVRkRMR05CUVdNc1JVRkJSU3hEUVVGRE8wRkJRek5DTzBGQlEwRTdRVUZEUVRzN1FVRkZRU3hKUVVGSkxFbEJRVWtzUTBGQlF5eGxRVUZsTEVOQlFVTXNTMEZCU3l4RFFVRkRMRU5CUVVNN1FVRkRhRU03UVVGRFFUdEJRVU5CT3p0SlFVVkpMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NSVUZCUlR0TlFVTnVRaXhKUVVGSkxFTkJRVU1zVjBGQlZ5eEZRVUZGTEVOQlFVTTdUVUZEYmtJc1NVRkJTU3hMUVVGTExFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4RFFVRkRPMDFCUXpWQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RFFVRkRMRXRCUVVzc1JVRkJSU3hKUVVGSkxFTkJRVU1zVlVGQlZTeEZRVUZGTEVsQlFVa3NRMEZCUXl4eFFrRkJjVUlzUTBGQlF5eERRVUZETzAxQlEzaEZMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1lVRkJZU3hEUVVGRExFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNWVUZCVlN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eGxRVUZsTEVOQlFVTXNTMEZCU3l4RlFVRkZMRWxCUVVrc1EwRkJReXhWUVVGVkxFTkJRVU1zUTBGQlF6dE5RVU16U0N4UFFVRlBPMEZCUTJJc1MwRkJTenM3U1VGRlJDeEpRVUZKTEVOQlFVTXNWMEZCVnl4RlFVRkZMRU5CUVVNN1NVRkRia0lzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXp0TlFVTmFMRmxCUVZrc1JVRkJSU3hKUVVGSk8wRkJRM2hDTEV0QlFVc3NRMEZCUXl4RFFVRkRPenRCUVVWUUxFbEJRVWtzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZGTEVsQlFVa3NRMEZCUXl4VlFVRlZMRVZCUVVVc1NVRkJTU3hEUVVGRExIRkNRVUZ4UWl4RFFVRkRMRU5CUVVNN08wRkJSWFJHTEVsQlFVa3NTVUZCU1N4UFFVRlBMRWRCUVVjc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zVFVGQlRTeEpRVUZKTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhMUVVGTExFOUJRVThzUTBGQlF5eFBRVUZQTEVsQlFVa3NSVUZCUlN4RFFVRkRPenRKUVVWMFJ5eEpRVUZKTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRExFMUJRVTBzU1VGQlNTeExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETEZkQlFWY3NSVUZCUlN4RFFVRkRMRWRCUVVjc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTXNWMEZCVnl4RlFVRkZMRWRCUVVjc1RVRkJUU3hEUVVGRE8wbEJRM3BJTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4SFFVRkhMRVZCUVVVc1NVRkJTU3hEUVVGRExGRkJRVkVzUlVGQlJTeEZRVUZGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1YwRkJWeXhKUVVGSkxFOUJRVThzUTBGQlF5eFhRVUZYTEVsQlFVa3NUVUZCVFN4RlFVRkZMRTlCUVU4c1EwRkJRenRQUVVOc1NDeEpRVUZKTEVOQlFVTXNWVUZCVlN4UlFVRlJMRVZCUVVVN1VVRkRlRUlzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU03VVVGREwwSXNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhYUVVGWExFVkJRVVVzUTBGQlF6dFBRVU14UWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dFBRVU5hTEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1ZVRkJWU3hEUVVGRExFTkJRVU03UVVGRE9VSXNSMEZCUnpzN1JVRkZSQ3hSUVVGUkxFVkJRVVVzV1VGQldUdEpRVU53UWl4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVGRE8wRkJRelZGTEVkQlFVYzdRVUZEU0R0QlFVTkJPenRGUVVWRkxGZEJRVmNzUlVGQlJTeFpRVUZaTzBsQlEzWkNMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRTlCUVU4c1EwRkJReXhWUVVGVkxFbEJRVWtzUlVGQlJUdE5RVU12UXl4SlFVRkpMRk5CUVZNc1IwRkJSeXhKUVVGSkxFTkJRVU1zVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMDFCUTJ4RExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eE5RVUZOTEVOQlFVTTdTMEZETTBNc1EwRkJReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTnNRaXhIUVVGSE8wRkJRMGc3TzBWQlJVVXNWVUZCVlN4RlFVRkZMRmxCUVZrN1NVRkRkRUlzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZPMDFCUXk5RExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU03UzBGRGFFTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU5rTEVsQlFVa3NRMEZCUXl4WlFVRlpMRVZCUVVVc1EwRkJRenRCUVVONFFpeEhRVUZIT3p0RlFVVkVMSGRDUVVGM1FpeEZRVUZGTEZWQlFWVXNUVUZCVFN4RlFVRkZPMHRCUTNwRExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFOUJRVThzUTBGQlF5eFZRVUZWTEVsQlFVa3NSVUZCUlN4TFFVRkxMRVZCUVVVN1RVRkRka1FzU1VGQlNTeFRRVUZUTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU5zUXl4SlFVRkpMRWxCUVVrc1IwRkJSeXhEUVVGRE8xRkJRMVlzVVVGQlVTeEZRVUZGTEVWQlFVVXNTVUZCU1N4SlFVRkpMRTFCUVUwc1EwRkJRenRSUVVNelFpeFpRVUZaTEVWQlFVVXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJRenRQUVVNelFpeERRVUZETEVOQlFVTTdUVUZEU0N4VFFVRlRMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVWQlFVVXNTVUZCU1N4RFFVRkRMRU5CUVVNN1MwRkRNME1zUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOc1FpeEhRVUZITzBGQlEwZzdRVUZEUVR0QlFVTkJPenRGUVVWRkxIRkNRVUZ4UWl4RlFVRkZMRlZCUVZVc1RVRkJUU3hGUVVGRk8wbEJRM1pETEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEZWQlFWVXNTVUZCU1N4RlFVRkZMRXRCUVVzc1JVRkJSVHRCUVVOMlJDeE5RVUZOTEVsQlFVa3NVMEZCVXl4SFFVRkhMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdPMDFCUld4RExFbEJRVWtzUTBGQlF5eFRRVUZUTEVWQlFVVTdVVUZEWkN4TlFVRk5MRWxCUVVrc1MwRkJTeXhEUVVGRExHbEhRVUZwUnl4SFFVRkhMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTndTaXhQUVVGUE96dE5RVVZFTEVsQlFVa3NTVUZCU1N4SFFVRkhMRU5CUVVNN1VVRkRWaXhSUVVGUkxFVkJRVVVzUzBGQlN6dFJRVU5tTEZsQlFWa3NSVUZCUlN4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRE8wOUJRek5DTEVOQlFVTXNRMEZCUXp0TlFVTklMRk5CUVZNc1EwRkJReXhSUVVGUkxFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRMUVVNelF5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJRMnhDTEVkQlFVYzdPMFZCUlVRc1ZVRkJWU3hGUVVGRkxGVkJRVlVzVFVGQlRTeEZRVUZGTzBsQlF6VkNMRWxCUVVrc1EwRkJReXh4UWtGQmNVSXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJRenRKUVVOdVF5eEpRVUZKTEVOQlFVTXNVVUZCVVN4RFFVRkRPMDFCUTFvc1dVRkJXU3hGUVVGRkxFdEJRVXM3UzBGRGNFSXNRMEZCUXl4RFFVRkRPMGxCUTBnc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFBRVUZQTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNN1NVRkRNMElzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4WFFVRlhMRVZCUVVVc1EwRkJRenRCUVVNM1FpeEhRVUZITzBGQlEwZzdRVUZEUVR0QlFVTkJPenRGUVVWRkxHTkJRV01zUlVGQlJTeFZRVUZWTEZGQlFWRXNSVUZCUlR0QlFVTjBReXhKUVVGSkxFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTXNUMEZCVHl4RFFVRkRMRkZCUVZFc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUczdUVUZGYUVRc1NVRkJTU3hMUVVGTExFbEJRVWtzUzBGQlN5eERRVUZETEV0QlFVc3NTVUZCU1N4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExFbEJRVWtzUlVGQlJUdFJRVU0xUXl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExHRkJRV0VzUjBGQlJ5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RFFVRkRPMUZCUXpsRExFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNaVUZCWlN4SFFVRkhMRWxCUVVrc1EwRkJReXhqUVVGakxFTkJRVU03VVVGRGJFUXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhUUVVGVExFZEJRVWNzU1VGQlNTeERRVUZETEZGQlFWRXNRMEZCUXp0UlFVTjBReXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEdWQlFXVXNSMEZCUnl4SlFVRkpMRU5CUVVNc1kwRkJZeXhEUVVGRE8xRkJRMnhFTEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1lVRkJZU3hIUVVGSExFbEJRVWtzUTBGQlF5eGhRVUZoTEVOQlFVTTdRVUZEZGtRc1QwRkJUenM3VFVGRlJDeEpRVUZKTEV0QlFVc3NTVUZCU1N4TFFVRkxMRU5CUVVNc1MwRkJTeXhKUVVGSkxFdEJRVXNzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RlFVRkZPMUZCUTJoRUxFbEJRVWtzUTBGQlF5eGpRVUZqTEVOQlFVTXNTMEZCU3l4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dEJRVU5zUkN4UFFVRlBPenRMUVVWR0xFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkRiRUlzUjBGQlJ6czdSVUZGUkN4alFVRmpMRVZCUVVVc1dVRkJXVHRKUVVNeFFpeFBRVUZQTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRE8wRkJReTlDTEVkQlFVYzdPMFZCUlVRc1owSkJRV2RDTEVWQlFVVXNXVUZCV1R0SlFVTTFRaXhQUVVGUExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF5eFZRVUZWTEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVN1RVRkRNMFFzU1VGQlNTeFRRVUZUTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dE5RVU5zUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNN1RVRkRjRU1zVDBGQlR5eEpRVUZKTEVOQlFVTTdTMEZEWWl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXp0QlFVTjBRaXhIUVVGSE96dEZRVVZFTEdWQlFXVXNSVUZCUlN4VlFVRlZMRlZCUVZVc1JVRkJSVHRKUVVOeVF5eEpRVUZKTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRE8wRkJRemRDTEVsQlFVa3NTVUZCU1N4VFFVRlRMRWRCUVVjc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTjRRenRCUVVOQk96dEpRVVZKTEZOQlFWTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1ZVRkJWU3hKUVVGSkxFVkJRVVVzUzBGQlN5eEZRVUZGTzAxQlEzWkRMRWxCUVVrc1UwRkJVeXhIUVVGSExFMUJRVTBzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXp0TlFVTTNRaXhUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETzFGQlEycENMRmRCUVZjc1JVRkJSU3hWUVVGVk8wOUJRM2hDTEVOQlFVTXNRMEZCUXp0TFFVTktMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZEYkVJc1IwRkJSenRCUVVOSU8wRkJRMEU3UVVGRFFUczdRVUZGUVN4RlFVRkZMRkZCUVZFc1JVRkJSU3hWUVVGVkxGTkJRVk1zUlVGQlJUdEJRVU5xUXpzN1NVRkZTU3hKUVVGSkxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVMEZCVXl4RlFVRkZPMDFCUTNoQ0xFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVVUZCVVN4RFFVRkRMRWxCUVVrc1EwRkJReXhuUWtGQlowSXNSVUZCUlN4RFFVRkRMRU5CUVVNN1FVRkRia1FzUzBGQlN6czdTVUZGUkN4SlFVRkpMRTlCUVU4c1IwRkJSeXhKUVVGSkxFTkJRVU03U1VGRGJrSXNTVUZCU1N4VFFVRlRMRU5CUVVNc1VVRkJVU3hKUVVGSkxFOUJRVThzVTBGQlV5eERRVUZETEZGQlFWRXNTMEZCU3l4VlFVRlZMRVZCUVVVN1RVRkRiRVVzVDBGQlR5eEhRVUZITEZOQlFWTXNRMEZCUXl4UlFVRlJMRVZCUVVVc1EwRkJRenRMUVVOb1F5eE5RVUZOTEVsQlFVa3NVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFbEJRVWtzVTBGQlV5eERRVUZETEZsQlFWa3NSVUZCUlR0TlFVTTNSQ3hQUVVGUExFZEJRVWNzU1VGQlNTeERRVUZETEdGQlFXRXNRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJRenRCUVVNNVF5eExRVUZMTzBGQlEwdzdRVUZEUVRzN1NVRkZTU3hUUVVGVExFTkJRVU1zVVVGQlVTeERRVUZETzAxQlEycENMRkZCUVZFc1JVRkJSU3hQUVVGUE8wMUJRMnBDTEZsQlFWa3NSVUZCUlN4SlFVRkpPMEZCUTNoQ0xFdEJRVXNzUlVGQlJTeEpRVUZKTEVOQlFVTXNXVUZCV1N4RFFVRkRMRU5CUVVNN08wRkJSVEZDTEVkQlFVYzdRVUZEU0RzN1FVRkZRU3hGUVVGRkxHRkJRV0VzUlVGQlJTeFZRVUZWTEZOQlFWTXNSVUZCUlN4TFFVRkxMRVZCUVVVN08wRkJSVGRETEVsQlFVa3NTVUZCU1N4UFFVRlBMRWRCUVVjc1NVRkJTU3hEUVVGRE96dEpRVVZ1UWl4TFFVRkxMRWRCUVVjc1UwRkJVeXhEUVVGRExFMUJRVTBzUzBGQlN5eERRVUZETEVkQlFVY3NTMEZCU3l4SFFVRkhMRk5CUVZNc1EwRkJReXhMUVVGTExFTkJRVU1zVFVGQlRTeERRVUZETzBsQlEyaEZMRWxCUVVrc1UwRkJVeXhEUVVGRExGbEJRVmtzUTBGQlF5eE5RVUZOTEV0QlFVc3NVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhSUVVGUkxFbEJRVWtzUzBGQlN5eExRVUZMTEVWQlFVVXNRMEZCUXl4RlFVRkZPMDFCUXk5RkxGTkJRVk1zUTBGQlF5eFpRVUZaTEVOQlFVTXNTMEZCU3l4RFFVRkRMSEZDUVVGeFFpeERRVUZETEVOQlFVTXNUMEZCVHl4RFFVRkRMRlZCUVZVc1ZVRkJWU3hGUVVGRk8xRkJRMmhHTEVsQlFVa3NTVUZCU1N4SFFVRkhMRlZCUVZVc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdVVUZEYWtNc1NVRkJTU3hqUVVGakxFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NSVUZCUlN4RFFVRkRPMUZCUTJ4RExFbEJRVWtzUjBGQlJ5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRMRlZCUVZVc1IwRkJSeXhGUVVGRk8xVkJRemRDTEVsQlFVazdXVUZEUml4UFFVRlBMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdWMEZEZUVJc1EwRkJReXhQUVVGUExFTkJRVU1zUlVGQlJUdFpRVU5XTEU5QlFVOHNSMEZCUnl4RFFVRkRPMWRCUTFvN1UwRkRSaXhEUVVGRExFTkJRVU03VVVGRFNDeEpRVUZKTEVkQlFVY3NRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdVVUZETlVJc1NVRkJTU3hEUVVGRExHVkJRV1VzUTBGQlF5eGpRVUZqTEVOQlFVTXNSVUZCUlR0VlFVTndReXhOUVVGTkxFbEJRVWtzUzBGQlN5eERRVUZETERSRFFVRTBReXhIUVVGSExHTkJRV01zUTBGQlF5eERRVUZETzFOQlEyaEdPMUZCUTBRc1NVRkJTU3hEUVVGRExHVkJRV1VzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExHZENRVUZuUWl4RlFVRkZMRVZCUVVVc1NVRkJTU3hEUVVGRExFVkJRVVU3VlVGRGVrVXNUMEZCVHl4SFFVRkhMRXRCUVVzc1EwRkJRenRUUVVOcVFqdFBRVU5HTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRExFTkJRVU03UzBGRFpqdEJRVU5NTEVsQlFVa3NTVUZCU1N4UFFVRlBMRk5CUVZNc1EwRkJReXhoUVVGaExFdEJRVXNzVlVGQlZTeEZRVUZGT3p0TlFVVnFSQ3hQUVVGUExFZEJRVWNzVTBGQlV5eERRVUZETEdGQlFXRXNSVUZCUlR0QlFVTjZReXhMUVVGTE96dEpRVVZFTEU5QlFVOHNUMEZCVHl4RFFVRkRPMEZCUTI1Q0xFZEJRVWM3UVVGRFNEdEJRVU5CT3p0RlFVVkZMRmxCUVZrc1JVRkJSU3haUVVGWk8wbEJRM2hDTEVsQlFVa3NWVUZCVlN4SFFVRkhMRWxCUVVrc1EwRkJRenRKUVVOMFFpeEpRVUZKTEUxQlFVMHNSMEZCUnl4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRE8wRkJRemRDTEVsQlFVa3NTVUZCU1N4VFFVRlRMRWRCUVVjc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0QlFVTjRRenRCUVVOQk96dEpRVVZKTEVsQlFVa3NiMEpCUVc5Q0xFZEJRVWNzV1VGQldUdE5RVU55UXl4VFFVRlRMRU5CUVVNc1QwRkJUeXhEUVVGRExGVkJRVlVzU1VGQlNTeEZRVUZGTzFGQlEyaERMRWxCUVVrc1EwRkJReXhOUVVGTkxFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNTMEZCU3l4RFFVRkRMRkZCUVZFc1JVRkJSVHRWUVVOb1F5eFZRVUZWTEVkQlFVY3NTMEZCU3l4RFFVRkRPMU5CUTNCQ08wRkJRMVFzVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJReXhEUVVGRE96dE5RVVZrTEVsQlFVa3NRMEZCUXl4UlFVRlJMRU5CUVVNN1VVRkRXaXhQUVVGUExFVkJRVVVzVlVGQlZUdEJRVU16UWl4UFFVRlBMRU5CUVVNc1EwRkJRenM3VFVGRlNDeEpRVUZKTEZWQlFWVXNSVUZCUlR0UlFVTmtMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRVU1zVDBGQlR5eEZRVUZGTEVOQlFVTTdUMEZEZEVJc1RVRkJUVHRSUVVOTUxFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlFVTXNVMEZCVXl4RlFVRkZMRU5CUVVNN1FVRkRMMElzVDBGQlR6dEJRVU5RT3p0TlFVVk5MRWxCUVVrc1EwRkJReXhSUVVGUkxFTkJRVU03VVVGRFdpeFRRVUZUTEVWQlFVVXNTVUZCU1R0QlFVTjJRaXhQUVVGUExFTkJRVU1zUTBGQlF6czdRVUZGVkN4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzBGQlEycENPMEZCUTBFN08wbEJSVWtzVTBGQlV5eERRVUZETEU5QlFVOHNRMEZCUXl4VlFVRlZMRWxCUVVrc1JVRkJSU3hMUVVGTExFVkJRVVU3VFVGRGRrTXNTVUZCU1N4VFFVRlRMRWRCUVVjc1RVRkJUU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETzAxQlF6ZENMRWxCUVVrc1QwRkJUeXhIUVVGSExFbEJRVWtzUTBGQlF5eGhRVUZoTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNN1RVRkROVU1zVTBGQlV5eERRVUZETEZGQlFWRXNRMEZCUXp0UlFVTnFRaXhSUVVGUkxFVkJRVVVzVDBGQlR6dFJRVU5xUWl4WlFVRlpMRVZCUVVVc1NVRkJTVHRQUVVOdVFpeEZRVUZGTEV0QlFVc3NTMEZCU3l4VFFVRlRMRU5CUVVNc1RVRkJUU3hIUVVGSExFTkJRVU1zUjBGQlJ5eHZRa0ZCYjBJc1IwRkJSeXhKUVVGSkxFTkJRVU1zUTBGQlF6dEJRVU4yUlN4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZEYkVJN1FVRkRRVHM3U1VGRlNTeEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRTFCUVUwc1NVRkJTU3hKUVVGSkxFTkJRVU1zVTBGQlV5eEZRVUZGTEVWQlFVVTdUVUZEZWtNc1NVRkJTU3hEUVVGRExGRkJRVkVzUTBGQlF6dFJRVU5hTEZOQlFWTXNSVUZCUlN4SlFVRkpPMDlCUTJoQ0xFTkJRVU1zUTBGQlF6dExRVU5LTzBGQlEwd3NSMEZCUnp0QlFVTklPMEZCUTBFN08wVkJSVVVzV1VGQldTeEZRVUZGTEZWQlFWVXNVMEZCVXl4RlFVRkZPMGxCUTJwRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVOQlFVTXNVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eFRRVUZUTEVOQlFVTTdTVUZET1VNc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eFRRVUZUTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExGTkJRVk1zUTBGQlF5eExRVUZMTEVOQlFVTXNUVUZCVFN4RFFVRkRPMGxCUXpGRUxFbEJRVWtzUTBGQlF5eFJRVUZSTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNN1FVRkROMElzUjBGQlJ6dEJRVU5JTzBGQlEwRTdPMFZCUlVVc1kwRkJZeXhGUVVGRkxGVkJRVlVzVTBGQlV5eEZRVUZGTzBsQlEyNURMRTlCUVU4c1NVRkJTU3hEUVVGRExFMUJRVTBzUTBGQlF5eFRRVUZUTEVOQlFVTXNTMEZCU3l4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVGRE8wbEJRM3BETEU5QlFVOHNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhUUVVGVExFTkJRVU1zUzBGQlN5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMGRCUTNwRE8wRkJRMGdzUlVGQlJTeE5RVUZOTEVWQlFVVXNXVUZCV1RzN1NVRkZiRUlzVDBGQlR5eExRVUZMTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJRenRSUVVOc1FpeFJRVUZSTEVWQlFVVXNTVUZCU1N4RFFVRkRMRTFCUVUwN1VVRkRja0lzVTBGQlV5eEZRVUZGTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVenRQUVVOb1F6dE5RVU5FTEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1VVRkJVVHRCUVVONlFpeExRVUZMTEVOQlFVTTdPMGRCUlVnN1FVRkRTQ3hEUVVGRExFTkJRVU1zUTBGQlF6czdRVUZGU0N4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExFOUJRVThzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4TlFVRk5MRXRCUVVzc1EwRkJReXhOUVVGTkxFTkJRVU1zVFVGQlRTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJUdEZRVU12UlN4TlFVRk5MRU5CUVVNc1RVRkJUU3hIUVVGSExFMUJRVTBzUTBGQlF6dEJRVU42UWl4RFFVRkRPenRCUVVWRUxFMUJRVTBzUTBGQlF5eFBRVUZQTEVkQlFVY3NUVUZCVFN4RFFVRkRJaXdpYzI5MWNtTmxjME52Ym5SbGJuUWlPbHNpZG1GeUlGSmxZV04wSUQwZ1oyeHZZbUZzTGxKbFlXTjBJSHg4SUhKbGNYVnBjbVVvSjNKbFlXTjBKeWs3WEc1MllYSWdSbTl5YlhONUlEMGdlMzA3WEc1MllYSWdkbUZzYVdSaGRHbHZibEoxYkdWeklEMGdjbVZ4ZFdseVpTZ25MaTkyWVd4cFpHRjBhVzl1VW5Wc1pYTXVhbk1uS1R0Y2JuWmhjaUIxZEdsc2N5QTlJSEpsY1hWcGNtVW9KeTR2ZFhScGJITXVhbk1uS1R0Y2JuWmhjaUJOYVhocGJpQTlJSEpsY1hWcGNtVW9KeTR2VFdsNGFXNHVhbk1uS1R0Y2JuWmhjaUJ2Y0hScGIyNXpJRDBnZTMwN1hHNWNia1p2Y20xemVTNU5hWGhwYmlBOUlFMXBlR2x1TzF4dVhHNUdiM0p0YzNrdVpHVm1ZWFZzZEhNZ1BTQm1kVzVqZEdsdmJpQW9jR0Z6YzJWa1QzQjBhVzl1Y3lrZ2UxeHVJQ0J2Y0hScGIyNXpJRDBnY0dGemMyVmtUM0IwYVc5dWN6dGNibjA3WEc1Y2JrWnZjbTF6ZVM1aFpHUldZV3hwWkdGMGFXOXVVblZzWlNBOUlHWjFibU4wYVc5dUlDaHVZVzFsTENCbWRXNWpLU0I3WEc0Z0lIWmhiR2xrWVhScGIyNVNkV3hsYzF0dVlXMWxYU0E5SUdaMWJtTTdYRzU5TzF4dVhHNUdiM0p0YzNrdVJtOXliU0E5SUZKbFlXTjBMbU55WldGMFpVTnNZWE56S0h0Y2JpQWdaMlYwU1c1cGRHbGhiRk4wWVhSbE9pQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdjbVYwZFhKdUlIdGNiaUFnSUNBZ0lHbHpWbUZzYVdRNklIUnlkV1VzWEc0Z0lDQWdJQ0JwYzFOMVltMXBkSFJwYm1jNklHWmhiSE5sTEZ4dUlDQWdJQ0FnWTJGdVEyaGhibWRsT2lCbVlXeHpaVnh1SUNBZ0lIMDdYRzRnSUgwc1hHNGdJR2RsZEVSbFptRjFiSFJRY205d2N6b2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjdYRzRnSUNBZ0lDQm9aV0ZrWlhKek9pQjdmU3hjYmlBZ0lDQWdJRzl1VTNWalkyVnpjem9nWm5WdVkzUnBiMjRnS0NrZ2UzMHNYRzRnSUNBZ0lDQnZia1Z5Y205eU9pQm1kVzVqZEdsdmJpQW9LU0I3ZlN4Y2JpQWdJQ0FnSUc5dVUzVmliV2wwT2lCbWRXNWpkR2x2YmlBb0tTQjdmU3hjYmlBZ0lDQWdJRzl1Vm1Gc2FXUlRkV0p0YVhRNklHWjFibU4wYVc5dUlDZ3BJSHQ5TEZ4dUlDQWdJQ0FnYjI1SmJuWmhiR2xrVTNWaWJXbDBPaUJtZFc1amRHbHZiaUFvS1NCN2ZTeGNiaUFnSUNBZ0lHOXVVM1ZpYldsMGRHVmtPaUJtZFc1amRHbHZiaUFvS1NCN2ZTeGNiaUFnSUNBZ0lHOXVWbUZzYVdRNklHWjFibU4wYVc5dUlDZ3BJSHQ5TEZ4dUlDQWdJQ0FnYjI1SmJuWmhiR2xrT2lCbWRXNWpkR2x2YmlBb0tTQjdmU3hjYmlBZ0lDQWdJRzl1UTJoaGJtZGxPaUJtZFc1amRHbHZiaUFvS1NCN2ZWeHVJQ0FnSUgwN1hHNGdJSDBzWEc1Y2JpQWdMeThnUVdSa0lHRWdiV0Z3SUhSdklITjBiM0psSUhSb1pTQnBibkIxZEhNZ2IyWWdkR2hsSUdadmNtMHNJR0VnYlc5a1pXd2dkRzhnYzNSdmNtVmNiaUFnTHk4Z2RHaGxJSFpoYkhWbGN5QnZaaUIwYUdVZ1ptOXliU0JoYm1RZ2NtVm5hWE4wWlhJZ1kyaHBiR1FnYVc1d2RYUnpYRzRnSUdOdmJYQnZibVZ1ZEZkcGJHeE5iM1Z1ZERvZ1puVnVZM1JwYjI0Z0tDa2dlMXh1SUNBZ0lIUm9hWE11YVc1d2RYUnpJRDBnZTMwN1hHNGdJQ0FnZEdocGN5NXRiMlJsYkNBOUlIdDlPMXh1SUNBZ0lIUm9hWE11Y21WbmFYTjBaWEpKYm5CMWRITW9kR2hwY3k1d2NtOXdjeTVqYUdsc1pISmxiaWs3WEc0Z0lIMHNYRzVjYmlBZ1kyOXRjRzl1Wlc1MFJHbGtUVzkxYm5RNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQjBhR2x6TG5aaGJHbGtZWFJsUm05eWJTZ3BPMXh1SUNCOUxGeHVYRzRnSUdOdmJYQnZibVZ1ZEZkcGJHeFZjR1JoZEdVNklHWjFibU4wYVc5dUlDZ3BJSHRjYmlBZ0lDQjJZWElnYVc1d2RYUkxaWGx6SUQwZ1QySnFaV04wTG10bGVYTW9kR2hwY3k1cGJuQjFkSE1wTzF4dVhHNGdJQ0FnTHk4Z1ZHaGxJSFZ3WkdGMFpXUWdZMmhwYkdSeVpXNGdZWEp5WVhrZ2FYTWdibTkwSUdGMllXbHNZV0pzWlNCb1pYSmxJR1p2Y2lCemIyMWxJSEpsWVhOdmJpeGNiaUFnSUNBdkx5QjNaU0J1WldWa0lIUnZJSGRoYVhRZ1ptOXlJRzVsZUhRZ1pYWmxiblFnYkc5dmNGeHVJQ0FnSUhObGRGUnBiV1Z2ZFhRb1puVnVZM1JwYjI0Z0tDa2dlMXh1WEc0Z0lDQWdJQ0F2THlCVWFHVWdZMjl0Y0c5dVpXNTBJRzFwWjJoMElHaGhkbVVnWW1WbGJpQjFibTF2ZFc1MFpXUWdiMjRnWVc1Y2JpQWdJQ0FnSUM4dklIVndaR0YwWlZ4dUlDQWdJQ0FnYVdZZ0tIUm9hWE11YVhOTmIzVnVkR1ZrS0NrcElIdGNibHh1SUNBZ0lDQWdJQ0IwYUdsekxuSmxaMmx6ZEdWeVNXNXdkWFJ6S0hSb2FYTXVjSEp2Y0hNdVkyaHBiR1J5Wlc0cE8xeHVYRzRnSUNBZ0lDQWdhV1lnS0hSb2FYTXVjSEp2Y0hNdWRtRnNhV1JoZEdsdmJrVnljbTl5Y3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJSFJvYVhNdWMyVjBTVzV3ZFhSV1lXeHBaR0YwYVc5dVJYSnliM0p6S0hSb2FYTXVjSEp2Y0hNdWRtRnNhV1JoZEdsdmJrVnljbTl5Y3lrN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0IyWVhJZ2JtVjNTVzV3ZFhSTFpYbHpJRDBnVDJKcVpXTjBMbXRsZVhNb2RHaHBjeTVwYm5CMWRITXBPMXh1SUNBZ0lDQWdJQ0JwWmlBb2RYUnBiSE11WVhKeVlYbHpSR2xtWm1WeUtHbHVjSFYwUzJWNWN5d2dibVYzU1c1d2RYUkxaWGx6S1NrZ2UxeHVJQ0FnSUNBZ0lDQWdJSFJvYVhNdWRtRnNhV1JoZEdWR2IzSnRLQ2s3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBMQ0F3S1R0Y2JpQWdmU3hjYmx4dUlDQXZMeUJWY0dSaGRHVWdiVzlrWld3c0lITjFZbTFwZENCMGJ5QjFjbXdnY0hKdmNDQmhibVFnYzJWdVpDQjBhR1VnYlc5a1pXeGNiaUFnYzNWaWJXbDBPaUJtZFc1amRHbHZiaUFvWlhabGJuUXBJSHRjYmlBZ0lDQmxkbVZ1ZEM1d2NtVjJaVzUwUkdWbVlYVnNkQ2dwTzF4dVhHNGdJQ0FnTHk4Z1ZISnBaMmRsY2lCbWIzSnRJR0Z6SUc1dmRDQndjbWx6ZEdsdVpTNWNiaUFnSUNBdkx5QkpaaUJoYm5rZ2FXNXdkWFJ6SUdoaGRtVWdibTkwSUdKbFpXNGdkRzkxWTJobFpDQjVaWFFnZEdocGN5QjNhV3hzSUcxaGEyVWdkR2hsYlNCa2FYSjBlVnh1SUNBZ0lDOHZJSE52SUhaaGJHbGtZWFJwYjI0Z1ltVmpiMjFsY3lCMmFYTnBZbXhsSUNocFppQmlZWE5sWkNCdmJpQnBjMUJ5YVhOMGFXNWxLVnh1SUNBZ0lIUm9hWE11YzJWMFJtOXliVkJ5YVhOMGFXNWxLR1poYkhObEtUdGNibHh1SUNBZ0lDOHZJRlJ2SUhOMWNIQnZjblFnZFhObElHTmhjMlZ6SUhkb1pYSmxJRzV2SUdGemVXNWpJRzl5SUhKbGNYVmxjM1FnYjNCbGNtRjBhVzl1SUdseklHNWxaV1JsWkM1Y2JpQWdJQ0F2THlCVWFHVWdYQ0p2YmxOMVltMXBkRndpSUdOaGJHeGlZV05ySUdseklHTmhiR3hsWkNCM2FYUm9JSFJvWlNCdGIyUmxiQ0JsTG1jdUlIdG1hV1ZzWkU1aGJXVTZJRndpYlhsV1lXeDFaVndpZlN4Y2JpQWdJQ0F2THlCcFppQjNZVzUwYVc1bklIUnZJSEpsYzJWMElIUm9aU0JsYm5ScGNtVWdabTl5YlNCMGJ5QnZjbWxuYVc1aGJDQnpkR0YwWlN3Z2RHaGxJSE5sWTI5dVpDQndZWEpoYlNCcGN5QmhJR05oYkd4aVlXTnJJR1p2Y2lCMGFHbHpMbHh1SUNBZ0lHbG1JQ2doZEdocGN5NXdjbTl3Y3k1MWNtd3BJSHRjYmlBZ0lDQWdJSFJvYVhNdWRYQmtZWFJsVFc5a1pXd29LVHRjYmlBZ0lDQWdJSFpoY2lCdGIyUmxiQ0E5SUhSb2FYTXViV0Z3VFc5a1pXd29LVHRjYmlBZ0lDQWdJSFJvYVhNdWNISnZjSE11YjI1VGRXSnRhWFFvYlc5a1pXd3NJSFJvYVhNdWNtVnpaWFJOYjJSbGJDd2dkR2hwY3k1MWNHUmhkR1ZKYm5CMWRITlhhWFJvUlhKeWIzSXBPMXh1SUNBZ0lDQWdkR2hwY3k1emRHRjBaUzVwYzFaaGJHbGtJRDhnZEdocGN5NXdjbTl3Y3k1dmJsWmhiR2xrVTNWaWJXbDBLRzF2WkdWc0xDQjBhR2x6TG5KbGMyVjBUVzlrWld3cElEb2dkR2hwY3k1d2NtOXdjeTV2YmtsdWRtRnNhV1JUZFdKdGFYUW9iVzlrWld3c0lIUm9hWE11Y21WelpYUk5iMlJsYkNrN1hHNGdJQ0FnSUNCeVpYUjFjbTQ3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdkR2hwY3k1MWNHUmhkR1ZOYjJSbGJDZ3BPMXh1SUNBZ0lIUm9hWE11YzJWMFUzUmhkR1VvZTF4dUlDQWdJQ0FnYVhOVGRXSnRhWFIwYVc1bk9pQjBjblZsWEc0Z0lDQWdmU2s3WEc1Y2JpQWdJQ0IwYUdsekxuQnliM0J6TG05dVUzVmliV2wwS0hSb2FYTXViV0Z3VFc5a1pXd29LU3dnZEdocGN5NXlaWE5sZEUxdlpHVnNMQ0IwYUdsekxuVndaR0YwWlVsdWNIVjBjMWRwZEdoRmNuSnZjaWs3WEc1Y2JpQWdJQ0IyWVhJZ2FHVmhaR1Z5Y3lBOUlDaFBZbXBsWTNRdWEyVjVjeWgwYUdsekxuQnliM0J6TG1obFlXUmxjbk1wTG14bGJtZDBhQ0FtSmlCMGFHbHpMbkJ5YjNCekxtaGxZV1JsY25NcElIeDhJRzl3ZEdsdmJuTXVhR1ZoWkdWeWN5QjhmQ0I3ZlR0Y2JseHVJQ0FnSUhaaGNpQnRaWFJvYjJRZ1BTQjBhR2x6TG5CeWIzQnpMbTFsZEdodlpDQW1KaUIxZEdsc2N5NWhhbUY0VzNSb2FYTXVjSEp2Y0hNdWJXVjBhRzlrTG5SdlRHOTNaWEpEWVhObEtDbGRJRDhnZEdocGN5NXdjbTl3Y3k1dFpYUm9iMlF1ZEc5TWIzZGxja05oYzJVb0tTQTZJQ2R3YjNOMEp6dGNiaUFnSUNCMWRHbHNjeTVoYW1GNFcyMWxkR2h2WkYwb2RHaHBjeTV3Y205d2N5NTFjbXdzSUhSb2FYTXViV0Z3VFc5a1pXd29LU3dnZEdocGN5NXdjbTl3Y3k1amIyNTBaVzUwVkhsd1pTQjhmQ0J2Y0hScGIyNXpMbU52Ym5SbGJuUlVlWEJsSUh4OElDZHFjMjl1Snl3Z2FHVmhaR1Z5Y3lsY2JpQWdJQ0FnSUM1MGFHVnVLR1oxYm1OMGFXOXVJQ2h5WlhOd2IyNXpaU2tnZTF4dUlDQWdJQ0FnSUNCMGFHbHpMbkJ5YjNCekxtOXVVM1ZqWTJWemN5aHlaWE53YjI1elpTazdYRzRnSUNBZ0lDQWdJSFJvYVhNdWNISnZjSE11YjI1VGRXSnRhWFIwWldRb0tUdGNiaUFnSUNBZ0lIMHVZbWx1WkNoMGFHbHpLU2xjYmlBZ0lDQWdJQzVqWVhSamFDaDBhR2x6TG1aaGFXeFRkV0p0YVhRcE8xeHVJQ0I5TEZ4dVhHNGdJRzFoY0UxdlpHVnNPaUJtZFc1amRHbHZiaUFvS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFJvYVhNdWNISnZjSE11YldGd2NHbHVaeUEvSUhSb2FYTXVjSEp2Y0hNdWJXRndjR2x1WnloMGFHbHpMbTF2WkdWc0tTQTZJSFJvYVhNdWJXOWtaV3c3WEc0Z0lIMHNYRzVjYmlBZ0x5OGdSMjlsY3lCMGFISnZkV2RvSUdGc2JDQnlaV2RwYzNSbGNtVmtJR052YlhCdmJtVnVkSE1nWVc1a1hHNGdJQzh2SUhWd1pHRjBaWE1nZEdobElHMXZaR1ZzSUhaaGJIVmxjMXh1SUNCMWNHUmhkR1ZOYjJSbGJEb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJRTlpYW1WamRDNXJaWGx6S0hSb2FYTXVhVzV3ZFhSektTNW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaHVZVzFsS1NCN1hHNGdJQ0FnSUNCMllYSWdZMjl0Y0c5dVpXNTBJRDBnZEdocGN5NXBibkIxZEhOYmJtRnRaVjA3WEc0Z0lDQWdJQ0IwYUdsekxtMXZaR1ZzVzI1aGJXVmRJRDBnWTI5dGNHOXVaVzUwTG5OMFlYUmxMbDkyWVd4MVpUdGNiaUFnSUNCOUxtSnBibVFvZEdocGN5a3BPMXh1SUNCOUxGeHVYRzRnSUM4dklGSmxjMlYwSUdWaFkyZ2dhMlY1SUdsdUlIUm9aU0J0YjJSbGJDQjBieUIwYUdVZ2IzSnBaMmx1WVd3Z0x5QnBibWwwYVdGc0lIWmhiSFZsWEc0Z0lISmxjMlYwVFc5a1pXdzZJR1oxYm1OMGFXOXVJQ2dwSUh0Y2JpQWdJQ0JQWW1wbFkzUXVhMlY1Y3loMGFHbHpMbWx1Y0hWMGN5a3VabTl5UldGamFDaG1kVzVqZEdsdmJpQW9ibUZ0WlNrZ2UxeHVJQ0FnSUNBZ2RHaHBjeTVwYm5CMWRITmJibUZ0WlYwdWNtVnpaWFJXWVd4MVpTZ3BPMXh1SUNBZ0lIMHVZbWx1WkNoMGFHbHpLU2s3WEc0Z0lDQWdkR2hwY3k1MllXeHBaR0YwWlVadmNtMG9LVHRjYmlBZ2ZTeGNibHh1SUNCelpYUkpibkIxZEZaaGJHbGtZWFJwYjI1RmNuSnZjbk02SUdaMWJtTjBhVzl1SUNobGNuSnZjbk1wSUh0Y2JpQWdJQ0FnVDJKcVpXTjBMbXRsZVhNb2RHaHBjeTVwYm5CMWRITXBMbVp2Y2tWaFkyZ29ablZ1WTNScGIyNGdLRzVoYldVc0lHbHVaR1Y0S1NCN1hHNGdJQ0FnSUNCMllYSWdZMjl0Y0c5dVpXNTBJRDBnZEdocGN5NXBibkIxZEhOYmJtRnRaVjA3WEc0Z0lDQWdJQ0IyWVhJZ1lYSm5jeUE5SUZ0N1hHNGdJQ0FnSUNBZ0lGOXBjMVpoYkdsa09pQWhLRzVoYldVZ2FXNGdaWEp5YjNKektTeGNiaUFnSUNBZ0lDQWdYM05sY25abGNrVnljbTl5T2lCbGNuSnZjbk5iYm1GdFpWMWNiaUFnSUNBZ0lIMWRPMXh1SUNBZ0lDQWdZMjl0Y0c5dVpXNTBMbk5sZEZOMFlYUmxMbUZ3Y0d4NUtHTnZiWEJ2Ym1WdWRDd2dZWEpuY3lrN1hHNGdJQ0FnZlM1aWFXNWtLSFJvYVhNcEtUc2dJQ0JjYmlBZ2ZTeGNibHh1SUNBdkx5QkhieUIwYUhKdmRXZG9JR1Z5Y205eWN5Qm1jbTl0SUhObGNuWmxjaUJoYm1RZ1ozSmhZaUIwYUdVZ1kyOXRjRzl1Wlc1MGMxeHVJQ0F2THlCemRHOXlaV1FnYVc0Z2RHaGxJR2x1Y0hWMGN5QnRZWEF1SUVOb1lXNW5aU0IwYUdWcGNpQnpkR0YwWlNCMGJ5QnBiblpoYkdsa1hHNGdJQzh2SUdGdVpDQnpaWFFnZEdobElITmxjblpsY2tWeWNtOXlJRzFsYzNOaFoyVmNiaUFnZFhCa1lYUmxTVzV3ZFhSelYybDBhRVZ5Y205eU9pQm1kVzVqZEdsdmJpQW9aWEp5YjNKektTQjdYRzRnSUNBZ1QySnFaV04wTG10bGVYTW9aWEp5YjNKektTNW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaHVZVzFsTENCcGJtUmxlQ2tnZTF4dUlDQWdJQ0FnZG1GeUlHTnZiWEJ2Ym1WdWRDQTlJSFJvYVhNdWFXNXdkWFJ6VzI1aGJXVmRPMXh1WEc0Z0lDQWdJQ0JwWmlBb0lXTnZiWEJ2Ym1WdWRDa2dlMXh1SUNBZ0lDQWdJQ0IwYUhKdmR5QnVaWGNnUlhKeWIzSW9KMWx2ZFNCaGNtVWdkSEo1YVc1bklIUnZJSFZ3WkdGMFpTQmhiaUJwYm5CMWRDQjBhR0YwSUdSdlpYTWdibTkwSUdWNGFYTjBjeTRnVm1WeWFXWjVJR1Z5Y205eWN5QnZZbXBsWTNRZ2QybDBhQ0JwYm5CMWRDQnVZVzFsY3k0Z0p5QXJJRXBUVDA0dWMzUnlhVzVuYVdaNUtHVnljbTl5Y3lrcE8xeHVJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQjJZWElnWVhKbmN5QTlJRnQ3WEc0Z0lDQWdJQ0FnSUY5cGMxWmhiR2xrT2lCbVlXeHpaU3hjYmlBZ0lDQWdJQ0FnWDNObGNuWmxja1Z5Y205eU9pQmxjbkp2Y25OYmJtRnRaVjFjYmlBZ0lDQWdJSDFkTzF4dUlDQWdJQ0FnWTI5dGNHOXVaVzUwTG5ObGRGTjBZWFJsTG1Gd2NHeDVLR052YlhCdmJtVnVkQ3dnWVhKbmN5azdYRzRnSUNBZ2ZTNWlhVzVrS0hSb2FYTXBLVHRjYmlBZ2ZTeGNibHh1SUNCbVlXbHNVM1ZpYldsME9pQm1kVzVqZEdsdmJpQW9aWEp5YjNKektTQjdYRzRnSUNBZ2RHaHBjeTUxY0dSaGRHVkpibkIxZEhOWGFYUm9SWEp5YjNJb1pYSnliM0p6S1R0Y2JpQWdJQ0IwYUdsekxuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lHbHpVM1ZpYldsMGRHbHVaem9nWm1Gc2MyVmNiaUFnSUNCOUtUdGNiaUFnSUNCMGFHbHpMbkJ5YjNCekxtOXVSWEp5YjNJb1pYSnliM0p6S1R0Y2JpQWdJQ0IwYUdsekxuQnliM0J6TG05dVUzVmliV2wwZEdWa0tDazdYRzRnSUgwc1hHNWNiaUFnTHk4Z1ZISmhkbVZ5YzJVZ2RHaGxJR05vYVd4a2NtVnVJR0Z1WkNCamFHbHNaSEpsYmlCdlppQmphR2xzWkhKbGJpQjBieUJtYVc1a1hHNGdJQzh2SUdGc2JDQnBibkIxZEhNZ1lua2dZMmhsWTJ0cGJtY2dkR2hsSUc1aGJXVWdjSEp2Y0M0Z1RXRjVZbVVnWkc4Z1lTQmlaWFIwWlhKY2JpQWdMeThnWTJobFkyc2dhR1Z5WlZ4dUlDQnlaV2RwYzNSbGNrbHVjSFYwY3pvZ1puVnVZM1JwYjI0Z0tHTm9hV3hrY21WdUtTQjdYRzRnSUNBZ1VtVmhZM1F1UTJocGJHUnlaVzR1Wm05eVJXRmphQ2hqYUdsc1pISmxiaXdnWm5WdVkzUnBiMjRnS0dOb2FXeGtLU0I3WEc1Y2JpQWdJQ0FnSUdsbUlDaGphR2xzWkNBbUppQmphR2xzWkM1d2NtOXdjeUFtSmlCamFHbHNaQzV3Y205d2N5NXVZVzFsS1NCN1hHNGdJQ0FnSUNBZ0lHTm9hV3hrTG5CeWIzQnpMbDloZEhSaFkyaFViMFp2Y20wZ1BTQjBhR2x6TG1GMGRHRmphRlJ2Um05eWJUdGNiaUFnSUNBZ0lDQWdZMmhwYkdRdWNISnZjSE11WDJSbGRHRmphRVp5YjIxR2IzSnRJRDBnZEdocGN5NWtaWFJoWTJoR2NtOXRSbTl5YlR0Y2JpQWdJQ0FnSUNBZ1kyaHBiR1F1Y0hKdmNITXVYM1poYkdsa1lYUmxJRDBnZEdocGN5NTJZV3hwWkdGMFpUdGNiaUFnSUNBZ0lDQWdZMmhwYkdRdWNISnZjSE11WDJselJtOXliVVJwYzJGaWJHVmtJRDBnZEdocGN5NXBjMFp2Y20xRWFYTmhZbXhsWkR0Y2JpQWdJQ0FnSUNBZ1kyaHBiR1F1Y0hKdmNITXVYMmx6Vm1Gc2FXUldZV3gxWlNBOUlIUm9hWE11Y25WdVZtRnNhV1JoZEdsdmJqdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdhV1lnS0dOb2FXeGtJQ1ltSUdOb2FXeGtMbkJ5YjNCeklDWW1JR05vYVd4a0xuQnliM0J6TG1Ob2FXeGtjbVZ1S1NCN1hHNGdJQ0FnSUNBZ0lIUm9hWE11Y21WbmFYTjBaWEpKYm5CMWRITW9ZMmhwYkdRdWNISnZjSE11WTJocGJHUnlaVzRwTzF4dUlDQWdJQ0FnZlZ4dVhHNGdJQ0FnZlM1aWFXNWtLSFJvYVhNcEtUdGNiaUFnZlN4Y2JseHVJQ0JwYzBadmNtMUVhWE5oWW14bFpEb2dablZ1WTNScGIyNGdLQ2tnZTF4dUlDQWdJSEpsZEhWeWJpQjBhR2x6TG5CeWIzQnpMbVJwYzJGaWJHVmtPMXh1SUNCOUxGeHVYRzRnSUdkbGRFTjFjbkpsYm5SV1lXeDFaWE02SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCeVpYUjFjbTRnVDJKcVpXTjBMbXRsZVhNb2RHaHBjeTVwYm5CMWRITXBMbkpsWkhWalpTaG1kVzVqZEdsdmJpQW9aR0YwWVN3Z2JtRnRaU2tnZTF4dUlDQWdJQ0FnZG1GeUlHTnZiWEJ2Ym1WdWRDQTlJSFJvYVhNdWFXNXdkWFJ6VzI1aGJXVmRPMXh1SUNBZ0lDQWdaR0YwWVZ0dVlXMWxYU0E5SUdOdmJYQnZibVZ1ZEM1emRHRjBaUzVmZG1Gc2RXVTdYRzRnSUNBZ0lDQnlaWFIxY200Z1pHRjBZVHRjYmlBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtzSUh0OUtUdGNiaUFnZlN4Y2JseHVJQ0J6WlhSR2IzSnRVSEpwYzNScGJtVTZJR1oxYm1OMGFXOXVJQ2hwYzFCeWFYTjBhVzVsS1NCN1hHNGdJQ0FnZG1GeUlHbHVjSFYwY3lBOUlIUm9hWE11YVc1d2RYUnpPMXh1SUNBZ0lIWmhjaUJwYm5CMWRFdGxlWE1nUFNCUFltcGxZM1F1YTJWNWN5aHBibkIxZEhNcE8xeHVYRzRnSUNBZ0x5OGdTWFJsY21GMFpTQjBhSEp2ZFdkb0lHVmhZMmdnWTI5dGNHOXVaVzUwSUdGdVpDQnpaWFFnYVhRZ1lYTWdjSEpwYzNScGJtVmNiaUFnSUNBdkx5QnZjaUJjSW1ScGNuUjVYQ0l1WEc0Z0lDQWdhVzV3ZFhSTFpYbHpMbVp2Y2tWaFkyZ29ablZ1WTNScGIyNGdLRzVoYldVc0lHbHVaR1Y0S1NCN1hHNGdJQ0FnSUNCMllYSWdZMjl0Y0c5dVpXNTBJRDBnYVc1d2RYUnpXMjVoYldWZE8xeHVJQ0FnSUNBZ1kyOXRjRzl1Wlc1MExuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lDQWdYMmx6VUhKcGMzUnBibVU2SUdselVISnBjM1JwYm1WY2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUgwdVltbHVaQ2gwYUdsektTazdYRzRnSUgwc1hHNWNiaUFnTHk4Z1ZYTmxJSFJvWlNCaWFXNWtaV1FnZG1Gc2RXVnpJR0Z1WkNCMGFHVWdZV04wZFdGc0lHbHVjSFYwSUhaaGJIVmxJSFJ2WEc0Z0lDOHZJSFpoYkdsa1lYUmxJSFJvWlNCcGJuQjFkQ0JoYm1RZ2MyVjBJR2wwY3lCemRHRjBaUzRnVkdobGJpQmphR1ZqYXlCMGFHVmNiaUFnTHk4Z2MzUmhkR1VnYjJZZ2RHaGxJR1p2Y20wZ2FYUnpaV3htWEc0Z0lIWmhiR2xrWVhSbE9pQm1kVzVqZEdsdmJpQW9ZMjl0Y0c5dVpXNTBLU0I3WEc1Y2JpQWdJQ0F2THlCVWNtbG5aMlZ5SUc5dVEyaGhibWRsWEc0Z0lDQWdhV1lnS0hSb2FYTXVjM1JoZEdVdVkyRnVRMmhoYm1kbEtTQjdYRzRnSUNBZ0lDQjBhR2x6TG5CeWIzQnpMbTl1UTJoaGJtZGxLSFJvYVhNdVoyVjBRM1Z5Y21WdWRGWmhiSFZsY3lncEtUdGNiaUFnSUNCOVhHNWNiaUFnSUNCMllYSWdhWE5XWVd4cFpDQTlJSFJ5ZFdVN1hHNGdJQ0FnYVdZZ0tHTnZiWEJ2Ym1WdWRDNTJZV3hwWkdGMFpTQW1KaUIwZVhCbGIyWWdZMjl0Y0c5dVpXNTBMblpoYkdsa1lYUmxJRDA5UFNBblpuVnVZM1JwYjI0bktTQjdYRzRnSUNBZ0lDQnBjMVpoYkdsa0lEMGdZMjl0Y0c5dVpXNTBMblpoYkdsa1lYUmxLQ2s3WEc0Z0lDQWdmU0JsYkhObElHbG1JQ2hqYjIxd2IyNWxiblF1Y0hKdmNITXVjbVZ4ZFdseVpXUWdmSHdnWTI5dGNHOXVaVzUwTGw5MllXeHBaR0YwYVc5dWN5a2dlMXh1SUNBZ0lDQWdhWE5XWVd4cFpDQTlJSFJvYVhNdWNuVnVWbUZzYVdSaGRHbHZiaWhqYjIxd2IyNWxiblFwTzF4dUlDQWdJSDFjYmx4dUlDQWdJQzh2SUZKMWJpQjBhSEp2ZFdkb0lIUm9aU0IyWVd4cFpHRjBhVzl1Y3l3Z2MzQnNhWFFnZEdobGJTQjFjQ0JoYm1RZ1kyRnNiRnh1SUNBZ0lDOHZJSFJvWlNCMllXeHBaR0YwYjNJZ1NVWWdkR2hsY21VZ2FYTWdZU0IyWVd4MVpTQnZjaUJwZENCcGN5QnlaWEYxYVhKbFpGeHVJQ0FnSUdOdmJYQnZibVZ1ZEM1elpYUlRkR0YwWlNoN1hHNGdJQ0FnSUNCZmFYTldZV3hwWkRvZ2FYTldZV3hwWkN4Y2JpQWdJQ0FnSUY5elpYSjJaWEpGY25KdmNqb2diblZzYkZ4dUlDQWdJSDBzSUhSb2FYTXVkbUZzYVdSaGRHVkdiM0p0S1R0Y2JseHVJQ0I5TEZ4dVhHNGdJQzh2SUVOb1pXTnJjeUIyWVd4cFpHRjBhVzl1SUc5dUlHTjFjbkpsYm5RZ2RtRnNkV1VnYjNJZ1lTQndZWE56WldRZ2RtRnNkV1ZjYmlBZ2NuVnVWbUZzYVdSaGRHbHZiam9nWm5WdVkzUnBiMjRnS0dOdmJYQnZibVZ1ZEN3Z2RtRnNkV1VwSUh0Y2JseHVJQ0FnSUhaaGNpQnBjMVpoYkdsa0lEMGdkSEoxWlR0Y2JpQWdJQ0JjYmlBZ0lDQjJZV3gxWlNBOUlHRnlaM1Z0Wlc1MGN5NXNaVzVuZEdnZ1BUMDlJRElnUHlCMllXeDFaU0E2SUdOdmJYQnZibVZ1ZEM1emRHRjBaUzVmZG1Gc2RXVTdYRzRnSUNBZ2FXWWdLR052YlhCdmJtVnVkQzVmZG1Gc2FXUmhkR2x2Ym5NdWJHVnVaM1JvSUNZbUlDaGpiMjF3YjI1bGJuUXVjSEp2Y0hNdWNtVnhkV2x5WldRZ2ZId2dkbUZzZFdVZ0lUMDlJQ2NuS1NrZ2UxeHVJQ0FnSUNBZ1kyOXRjRzl1Wlc1MExsOTJZV3hwWkdGMGFXOXVjeTV6Y0d4cGRDZ3ZYRndzS0Q4aFcxNTdYRnhiWFNwYmZWeGNYVjBwTDJjcExtWnZja1ZoWTJnb1puVnVZM1JwYjI0Z0tIWmhiR2xrWVhScGIyNHBJSHRjYmlBZ0lDQWdJQ0FnZG1GeUlHRnlaM01nUFNCMllXeHBaR0YwYVc5dUxuTndiR2wwS0NjNkp5azdYRzRnSUNBZ0lDQWdJSFpoY2lCMllXeHBaR0YwWlUxbGRHaHZaQ0E5SUdGeVozTXVjMmhwWm5Rb0tUdGNiaUFnSUNBZ0lDQWdZWEpuY3lBOUlHRnlaM011YldGd0tHWjFibU4wYVc5dUlDaGhjbWNwSUh0Y2JpQWdJQ0FnSUNBZ0lDQjBjbmtnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlFcFRUMDR1Y0dGeWMyVW9ZWEpuS1R0Y2JpQWdJQ0FnSUNBZ0lDQjlJR05oZEdOb0lDaGxLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1lYSm5PeUF2THlCSmRDQnBjeUJoSUhOMGNtbHVaeUJwWmlCcGRDQmpZVzRnYm05MElIQmhjbk5sSUdsMFhHNGdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUNBZ1lYSm5jeUE5SUZ0MllXeDFaVjB1WTI5dVkyRjBLR0Z5WjNNcE8xeHVJQ0FnSUNBZ0lDQnBaaUFvSVhaaGJHbGtZWFJwYjI1U2RXeGxjMXQyWVd4cFpHRjBaVTFsZEdodlpGMHBJSHRjYmlBZ0lDQWdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1JYSnliM0lvSjBadmNtMXplU0JrYjJWeklHNXZkQ0JvWVhabElIUm9aU0IyWVd4cFpHRjBhVzl1SUhKMWJHVTZJQ2NnS3lCMllXeHBaR0YwWlUxbGRHaHZaQ2s3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2FXWWdLQ0YyWVd4cFpHRjBhVzl1VW5Wc1pYTmJkbUZzYVdSaGRHVk5aWFJvYjJSZExtRndjR3g1S0hSb2FYTXVaMlYwUTNWeWNtVnVkRlpoYkhWbGN5Z3BMQ0JoY21kektTa2dlMXh1SUNBZ0lDQWdJQ0FnSUdselZtRnNhV1FnUFNCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlM1aWFXNWtLSFJvYVhNcEtUdGNiaUFnSUNCOVhHNGdJQ0FnYVdZZ0tIUjVjR1Z2WmlCamIyMXdiMjVsYm5RdVkyaGxZMnRXWVd4cFpHbDBlU0E5UFQwZ1hDSm1kVzVqZEdsdmJsd2lLU0I3WEc0Z0lDQWdJQ0F2THlCMGFHVWdZMjl0Y0c5dVpXNTBJR1JsWm1sdVpYTWdZVzRnWlhod2JHbGphWFFnWTJobFkydFdZV3hwWkdsMGVTQm1kVzVqZEdsdmJseHVJQ0FnSUNBZ2FYTldZV3hwWkNBOUlHTnZiWEJ2Ym1WdWRDNWphR1ZqYTFaaGJHbGthWFI1S0NsY2JpQWdJQ0I5WEc1Y2JpQWdJQ0J5WlhSMWNtNGdhWE5XWVd4cFpEdGNiaUFnZlN4Y2JseHVJQ0F2THlCV1lXeHBaR0YwWlNCMGFHVWdabTl5YlNCaWVTQm5iMmx1WnlCMGFISnZkV2RvSUdGc2JDQmphR2xzWkNCcGJuQjFkQ0JqYjIxd2IyNWxiblJ6WEc0Z0lDOHZJR0Z1WkNCamFHVmpheUIwYUdWcGNpQnpkR0YwWlZ4dUlDQjJZV3hwWkdGMFpVWnZjbTA2SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNCMllYSWdZV3hzU1hOV1lXeHBaQ0E5SUhSeWRXVTdYRzRnSUNBZ2RtRnlJR2x1Y0hWMGN5QTlJSFJvYVhNdWFXNXdkWFJ6TzF4dUlDQWdJSFpoY2lCcGJuQjFkRXRsZVhNZ1BTQlBZbXBsWTNRdWEyVjVjeWhwYm5CMWRITXBPMXh1WEc0Z0lDQWdMeThnVjJVZ2JtVmxaQ0JoSUdOaGJHeGlZV05ySUdGeklIZGxJR0Z5WlNCMllXeHBaR0YwYVc1bklHRnNiQ0JwYm5CMWRITWdZV2RoYVc0dUlGUm9hWE1nZDJsc2JGeHVJQ0FnSUM4dklISjFiaUIzYUdWdUlIUm9aU0JzWVhOMElHTnZiWEJ2Ym1WdWRDQm9ZWE1nYzJWMElHbDBjeUJ6ZEdGMFpWeHVJQ0FnSUhaaGNpQnZibFpoYkdsa1lYUnBiMjVEYjIxd2JHVjBaU0E5SUdaMWJtTjBhVzl1SUNncElIdGNiaUFnSUNBZ0lHbHVjSFYwUzJWNWN5NW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaHVZVzFsS1NCN1hHNGdJQ0FnSUNBZ0lHbG1JQ2doYVc1d2RYUnpXMjVoYldWZExuTjBZWFJsTGw5cGMxWmhiR2xrS1NCN1hHNGdJQ0FnSUNBZ0lDQWdZV3hzU1hOV1lXeHBaQ0E5SUdaaGJITmxPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5TG1KcGJtUW9kR2hwY3lrcE8xeHVYRzRnSUNBZ0lDQjBhR2x6TG5ObGRGTjBZWFJsS0h0Y2JpQWdJQ0FnSUNBZ2FYTldZV3hwWkRvZ1lXeHNTWE5XWVd4cFpGeHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJR2xtSUNoaGJHeEpjMVpoYkdsa0tTQjdYRzRnSUNBZ0lDQWdJSFJvYVhNdWNISnZjSE11YjI1V1lXeHBaQ2dwTzF4dUlDQWdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJQ0FnZEdocGN5NXdjbTl3Y3k1dmJrbHVkbUZzYVdRb0tUdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdMeThnVkdWc2JDQjBhR1VnWm05eWJTQjBhR0YwSUdsMElHTmhiaUJ6ZEdGeWRDQjBieUIwY21sbloyVnlJR05vWVc1blpTQmxkbVZ1ZEhOY2JpQWdJQ0FnSUhSb2FYTXVjMlYwVTNSaGRHVW9lMXh1SUNBZ0lDQWdJQ0JqWVc1RGFHRnVaMlU2SUhSeWRXVmNiaUFnSUNBZ0lIMHBPMXh1WEc0Z0lDQWdmUzVpYVc1a0tIUm9hWE1wTzF4dVhHNGdJQ0FnTHk4Z1VuVnVJSFpoYkdsa1lYUnBiMjRnWVdkaGFXNGdhVzRnWTJGelpTQmhabVpsWTNSbFpDQmllU0J2ZEdobGNpQnBibkIxZEhNdUlGUm9aVnh1SUNBZ0lDOHZJR3hoYzNRZ1kyOXRjRzl1Wlc1MElIWmhiR2xrWVhSbFpDQjNhV3hzSUhKMWJpQjBhR1VnYjI1V1lXeHBaR0YwYVc5dVEyOXRjR3hsZEdVZ1kyRnNiR0poWTJ0Y2JpQWdJQ0JwYm5CMWRFdGxlWE11Wm05eVJXRmphQ2htZFc1amRHbHZiaUFvYm1GdFpTd2dhVzVrWlhncElIdGNiaUFnSUNBZ0lIWmhjaUJqYjIxd2IyNWxiblFnUFNCcGJuQjFkSE5iYm1GdFpWMDdYRzRnSUNBZ0lDQjJZWElnYVhOV1lXeHBaQ0E5SUhSb2FYTXVjblZ1Vm1Gc2FXUmhkR2x2YmloamIyMXdiMjVsYm5RcE8xeHVJQ0FnSUNBZ1kyOXRjRzl1Wlc1MExuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lDQWdYMmx6Vm1Gc2FXUTZJR2x6Vm1Gc2FXUXNYRzRnSUNBZ0lDQWdJRjl6WlhKMlpYSkZjbkp2Y2pvZ2JuVnNiRnh1SUNBZ0lDQWdmU3dnYVc1a1pYZ2dQVDA5SUdsdWNIVjBTMlY1Y3k1c1pXNW5kR2dnTFNBeElEOGdiMjVXWVd4cFpHRjBhVzl1UTI5dGNHeGxkR1VnT2lCdWRXeHNLVHRjYmlBZ0lDQjlMbUpwYm1Rb2RHaHBjeWtwTzF4dVhHNGdJQ0FnTHk4Z1NXWWdkR2hsY21VZ1lYSmxJRzV2SUdsdWNIVjBjeXdnYzJWMElITjBZWFJsSUhkb1pYSmxJR1p2Y20wZ2FYTWdjbVZoWkhrZ2RHOGdkSEpwWjJkbGNseHVJQ0FnSUM4dklHTm9ZVzVuWlNCbGRtVnVkQzRnVG1WM0lHbHVjSFYwY3lCdGFXZG9kQ0JpWlNCaFpHUmxaQ0JzWVhSbGNseHVJQ0FnSUdsbUlDZ2hhVzV3ZFhSTFpYbHpMbXhsYm1kMGFDQW1KaUIwYUdsekxtbHpUVzkxYm5SbFpDZ3BLU0I3WEc0Z0lDQWdJQ0IwYUdsekxuTmxkRk4wWVhSbEtIdGNiaUFnSUNBZ0lDQWdZMkZ1UTJoaGJtZGxPaUIwY25WbFhHNGdJQ0FnSUNCOUtUdGNiaUFnSUNCOVhHNGdJSDBzWEc1Y2JpQWdMeThnVFdWMGFHOWtJSEIxZENCdmJpQmxZV05vSUdsdWNIVjBJR052YlhCdmJtVnVkQ0IwYnlCeVpXZHBjM1JsY2x4dUlDQXZMeUJwZEhObGJHWWdkRzhnZEdobElHWnZjbTFjYmlBZ1lYUjBZV05vVkc5R2IzSnRPaUJtZFc1amRHbHZiaUFvWTI5dGNHOXVaVzUwS1NCN1hHNGdJQ0FnZEdocGN5NXBibkIxZEhOYlkyOXRjRzl1Wlc1MExuQnliM0J6TG01aGJXVmRJRDBnWTI5dGNHOXVaVzUwTzF4dUlDQWdJSFJvYVhNdWJXOWtaV3hiWTI5dGNHOXVaVzUwTG5CeWIzQnpMbTVoYldWZElEMGdZMjl0Y0c5dVpXNTBMbk4wWVhSbExsOTJZV3gxWlR0Y2JpQWdJQ0IwYUdsekxuWmhiR2xrWVhSbEtHTnZiWEJ2Ym1WdWRDazdYRzRnSUgwc1hHNWNiaUFnTHk4Z1RXVjBhRzlrSUhCMWRDQnZiaUJsWVdOb0lHbHVjSFYwSUdOdmJYQnZibVZ1ZENCMGJ5QjFibkpsWjJsemRHVnlYRzRnSUM4dklHbDBjMlZzWmlCbWNtOXRJSFJvWlNCbWIzSnRYRzRnSUdSbGRHRmphRVp5YjIxR2IzSnRPaUJtZFc1amRHbHZiaUFvWTI5dGNHOXVaVzUwS1NCN1hHNGdJQ0FnWkdWc1pYUmxJSFJvYVhNdWFXNXdkWFJ6VzJOdmJYQnZibVZ1ZEM1d2NtOXdjeTV1WVcxbFhUdGNiaUFnSUNCa1pXeGxkR1VnZEdocGN5NXRiMlJsYkZ0amIyMXdiMjVsYm5RdWNISnZjSE11Ym1GdFpWMDdYRzRnSUgwc1hHNGdJSEpsYm1SbGNqb2dablZ1WTNScGIyNGdLQ2tnZTF4dVhHNGdJQ0FnY21WMGRYSnVJRkpsWVdOMExrUlBUUzVtYjNKdEtIdGNiaUFnSUNBZ0lDQWdiMjVUZFdKdGFYUTZJSFJvYVhNdWMzVmliV2wwTEZ4dUlDQWdJQ0FnSUNCamJHRnpjMDVoYldVNklIUm9hWE11Y0hKdmNITXVZMnhoYzNOT1lXMWxYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdkR2hwY3k1d2NtOXdjeTVqYUdsc1pISmxibHh1SUNBZ0lDazdYRzVjYmlBZ2ZWeHVmU2s3WEc1Y2JtbG1JQ2doWjJ4dlltRnNMbVY0Y0c5eWRITWdKaVlnSVdkc2IySmhiQzV0YjJSMWJHVWdKaVlnS0NGbmJHOWlZV3d1WkdWbWFXNWxJSHg4SUNGbmJHOWlZV3d1WkdWbWFXNWxMbUZ0WkNrcElIdGNiaUFnWjJ4dlltRnNMa1p2Y20xemVTQTlJRVp2Y20xemVUdGNibjFjYmx4dWJXOWtkV3hsTG1WNGNHOXlkSE1nUFNCR2IzSnRjM2s3WEc0aVhYMD0iLCJ2YXIgY3NyZlRva2VuU2VsZWN0b3IgPSB0eXBlb2YgZG9jdW1lbnQgIT0gJ3VuZGVmaW5lZCcgPyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdtZXRhW25hbWU9XCJjc3JmLXRva2VuXCJdJykgOiBudWxsO1xuXG52YXIgdG9VUkxFbmNvZGVkID0gZnVuY3Rpb24gKGVsZW1lbnQsIGtleSwgbGlzdCkge1xuICB2YXIgbGlzdCA9IGxpc3QgfHwgW107XG4gIGlmICh0eXBlb2YgKGVsZW1lbnQpID09ICdvYmplY3QnKSB7XG4gICAgZm9yICh2YXIgaWR4IGluIGVsZW1lbnQpXG4gICAgICB0b1VSTEVuY29kZWQoZWxlbWVudFtpZHhdLCBrZXkgPyBrZXkgKyAnWycgKyBpZHggKyAnXScgOiBpZHgsIGxpc3QpO1xuICB9IGVsc2Uge1xuICAgIGxpc3QucHVzaChrZXkgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQoZWxlbWVudCkpO1xuICB9XG4gIHJldHVybiBsaXN0LmpvaW4oJyYnKTtcbn07XG5cbnZhciByZXF1ZXN0ID0gZnVuY3Rpb24gKG1ldGhvZCwgdXJsLCBkYXRhLCBjb250ZW50VHlwZSwgaGVhZGVycykge1xuXG4gIHZhciBjb250ZW50VHlwZSA9IGNvbnRlbnRUeXBlID09PSAndXJsZW5jb2RlZCcgPyAnYXBwbGljYXRpb24vJyArIGNvbnRlbnRUeXBlLnJlcGxhY2UoJ3VybGVuY29kZWQnLCAneC13d3ctZm9ybS11cmxlbmNvZGVkJykgOiAnYXBwbGljYXRpb24vanNvbic7XG4gIGRhdGEgPSBjb250ZW50VHlwZSA9PT0gJ2FwcGxpY2F0aW9uL2pzb24nID8gSlNPTi5zdHJpbmdpZnkoZGF0YSkgOiB0b1VSTEVuY29kZWQoZGF0YSk7XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICB0cnkge1xuICAgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpO1xuICAgICAgeGhyLm9wZW4obWV0aG9kLCB1cmwsIHRydWUpO1xuICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ0FjY2VwdCcsICdhcHBsaWNhdGlvbi9qc29uJyk7XG4gICAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcignQ29udGVudC1UeXBlJywgY29udGVudFR5cGUpO1xuXG4gICAgICBpZiAoISFjc3JmVG9rZW5TZWxlY3RvciAmJiAhIWNzcmZUb2tlblNlbGVjdG9yLmNvbnRlbnQpIHtcbiAgICAgICAgeGhyLnNldFJlcXVlc3RIZWFkZXIoJ1gtQ1NSRi1Ub2tlbicsIGNzcmZUb2tlblNlbGVjdG9yLmNvbnRlbnQpO1xuICAgICAgfVxuXG4gICAgICAvLyBBZGQgcGFzc2VkIGhlYWRlcnNcbiAgICAgIE9iamVjdC5rZXlzKGhlYWRlcnMpLmZvckVhY2goZnVuY3Rpb24gKGhlYWRlcikge1xuICAgICAgICB4aHIuc2V0UmVxdWVzdEhlYWRlcihoZWFkZXIsIGhlYWRlcnNbaGVhZGVyXSk7XG4gICAgICB9KTtcblxuICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09PSA0KSB7XG5cbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgdmFyIHJlc3BvbnNlID0geGhyLnJlc3BvbnNlVGV4dCA/IEpTT04ucGFyc2UoeGhyLnJlc3BvbnNlVGV4dCkgOiBudWxsO1xuICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPj0gMjAwICYmIHhoci5zdGF0dXMgPCAzMDApIHtcbiAgICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZWplY3QocmVzcG9uc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHJlamVjdChlKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIHhoci5zZW5kKGRhdGEpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJlamVjdChlKTtcbiAgICB9XG4gIH0pO1xufTtcblxubW9kdWxlLmV4cG9ydHMgPSB7XG4gIGFycmF5c0RpZmZlcjogZnVuY3Rpb24gKGFycmF5QSwgYXJyYXlCKSB7XG4gICAgdmFyIGlzRGlmZmVyZW50ID0gZmFsc2U7XG4gICAgaWYgKGFycmF5QS5sZW5ndGggIT09IGFycmF5Qi5sZW5ndGgpIHtcbiAgICAgIGlzRGlmZmVyZW50ID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXJyYXlBLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7XG4gICAgICAgIGlmIChpdGVtICE9PSBhcnJheUJbaW5kZXhdKSB7XG4gICAgICAgICAgaXNEaWZmZXJlbnQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGlzRGlmZmVyZW50O1xuICB9LFxuICBhamF4OiB7XG4gICAgcG9zdDogcmVxdWVzdC5iaW5kKG51bGwsICdQT1NUJyksXG4gICAgcHV0OiByZXF1ZXN0LmJpbmQobnVsbCwgJ1BVVCcpXG4gIH1cbn07XG5cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaUwxVnpaWEp6TDJOb2NtbHpkR2xoYm1Gc1ptOXVhUzlFYjJOMWJXVnVkSE12WkdWMkwyWnZjbTF6ZVMxeVpXRmpkQzl6Y21NdmRYUnBiSE11YW5NaUxDSnpiM1Z5WTJWeklqcGJJaTlWYzJWeWN5OWphSEpwYzNScFlXNWhiR1p2Ym1rdlJHOWpkVzFsYm5SekwyUmxkaTltYjNKdGMza3RjbVZoWTNRdmMzSmpMM1YwYVd4ekxtcHpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSkJRVUZCTEVsQlFVa3NhVUpCUVdsQ0xFZEJRVWNzVDBGQlR5eFJRVUZSTEVsQlFVa3NWMEZCVnl4SFFVRkhMRkZCUVZFc1EwRkJReXhoUVVGaExFTkJRVU1zZVVKQlFYbENMRU5CUVVNc1IwRkJSeXhKUVVGSkxFTkJRVU03TzBGQlJXeElMRWxCUVVrc1dVRkJXU3hIUVVGSExGVkJRVlVzVDBGQlR5eEZRVUZGTEVkQlFVY3NSVUZCUlN4SlFVRkpMRVZCUVVVN1JVRkRMME1zU1VGQlNTeEpRVUZKTEVkQlFVY3NTVUZCU1N4SlFVRkpMRVZCUVVVc1EwRkJRenRGUVVOMFFpeEpRVUZKTEZGQlFWRXNUMEZCVHl4RFFVRkRMRWxCUVVrc1VVRkJVU3hGUVVGRk8wbEJRMmhETEV0QlFVc3NTVUZCU1N4SFFVRkhMRWxCUVVrc1QwRkJUenROUVVOeVFpeFpRVUZaTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWRCUVVjc1EwRkJReXhGUVVGRkxFZEJRVWNzUjBGQlJ5eEhRVUZITEVkQlFVY3NSMEZCUnl4SFFVRkhMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzUjBGQlJ5eEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMGRCUTNaRkxFMUJRVTA3U1VGRFRDeEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1IwRkJSeXhIUVVGSExFZEJRVWNzYTBKQlFXdENMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF6dEhRVU53UkR0RlFVTkVMRTlCUVU4c1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0QlFVTjRRaXhEUVVGRExFTkJRVU03TzBGQlJVWXNTVUZCU1N4UFFVRlBMRWRCUVVjc1ZVRkJWU3hOUVVGTkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVsQlFVa3NSVUZCUlN4WFFVRlhMRVZCUVVVc1QwRkJUeXhGUVVGRk96dEZRVVV2UkN4SlFVRkpMRmRCUVZjc1IwRkJSeXhYUVVGWExFdEJRVXNzV1VGQldTeEhRVUZITEdOQlFXTXNSMEZCUnl4WFFVRlhMRU5CUVVNc1QwRkJUeXhEUVVGRExGbEJRVmtzUlVGQlJTeDFRa0ZCZFVJc1EwRkJReXhIUVVGSExHdENRVUZyUWl4RFFVRkRPMEZCUTNCS0xFVkJRVVVzU1VGQlNTeEhRVUZITEZkQlFWY3NTMEZCU3l4clFrRkJhMElzUjBGQlJ5eEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExGbEJRVmtzUTBGQlF5eEpRVUZKTEVOQlFVTXNRMEZCUXpzN1JVRkZkRVlzVDBGQlR5eEpRVUZKTEU5QlFVOHNRMEZCUXl4VlFVRlZMRTlCUVU4c1JVRkJSU3hOUVVGTkxFVkJRVVU3U1VGRE5VTXNTVUZCU1R0TlFVTkdMRWxCUVVrc1IwRkJSeXhIUVVGSExFbEJRVWtzWTBGQll5eEZRVUZGTEVOQlFVTTdUVUZETDBJc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNSMEZCUnl4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8wMUJRelZDTEVkQlFVY3NRMEZCUXl4blFrRkJaMElzUTBGQlF5eFJRVUZSTEVWQlFVVXNhMEpCUVd0Q0xFTkJRVU1zUTBGQlF6dEJRVU42UkN4TlFVRk5MRWRCUVVjc1EwRkJReXhuUWtGQlowSXNRMEZCUXl4alFVRmpMRVZCUVVVc1YwRkJWeXhEUVVGRExFTkJRVU03TzAxQlJXeEVMRWxCUVVrc1EwRkJReXhEUVVGRExHbENRVUZwUWl4SlFVRkpMRU5CUVVNc1EwRkJReXhwUWtGQmFVSXNRMEZCUXl4UFFVRlBMRVZCUVVVN1VVRkRkRVFzUjBGQlJ5eERRVUZETEdkQ1FVRm5RaXhEUVVGRExHTkJRV01zUlVGQlJTeHBRa0ZCYVVJc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF6dEJRVU40UlN4UFFVRlBPMEZCUTFBN08wMUJSVTBzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zVlVGQlZTeE5RVUZOTEVWQlFVVTdVVUZETjBNc1IwRkJSeXhEUVVGRExHZENRVUZuUWl4RFFVRkRMRTFCUVUwc1JVRkJSU3hQUVVGUExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVTjBSQ3hQUVVGUExFTkJRVU1zUTBGQlF6czdUVUZGU0N4SFFVRkhMRU5CUVVNc2EwSkJRV3RDTEVkQlFVY3NXVUZCV1R0QlFVTXpReXhSUVVGUkxFbEJRVWtzUjBGQlJ5eERRVUZETEZWQlFWVXNTMEZCU3l4RFFVRkRMRVZCUVVVN08xVkJSWGhDTEVsQlFVazdXVUZEUml4SlFVRkpMRkZCUVZFc1IwRkJSeXhIUVVGSExFTkJRVU1zV1VGQldTeEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1IwRkJSeXhEUVVGRExGbEJRVmtzUTBGQlF5eEhRVUZITEVsQlFVa3NRMEZCUXp0WlFVTjBSU3hKUVVGSkxFZEJRVWNzUTBGQlF5eE5RVUZOTEVsQlFVa3NSMEZCUnl4SlFVRkpMRWRCUVVjc1EwRkJReXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEZRVUZGTzJOQlEzcERMRTlCUVU4c1EwRkJReXhSUVVGUkxFTkJRVU1zUTBGQlF6dGhRVU51UWl4TlFVRk5PMk5CUTB3c1RVRkJUU3hEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzJGQlEyeENPMWRCUTBZc1EwRkJReXhQUVVGUExFTkJRVU1zUlVGQlJUdFpRVU5XTEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1EwRkJRenRCUVVOMFFpeFhRVUZYT3p0VFFVVkdPMDlCUTBZc1EwRkJRenROUVVOR0xFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRU5CUVVNN1MwRkRhRUlzUTBGQlF5eFBRVUZQTEVOQlFVTXNSVUZCUlR0TlFVTldMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dExRVU5ZTzBkQlEwWXNRMEZCUXl4RFFVRkRPMEZCUTB3c1EwRkJReXhEUVVGRE96dEJRVVZHTEUxQlFVMHNRMEZCUXl4UFFVRlBMRWRCUVVjN1JVRkRaaXhaUVVGWkxFVkJRVVVzVlVGQlZTeE5RVUZOTEVWQlFVVXNUVUZCVFN4RlFVRkZPMGxCUTNSRExFbEJRVWtzVjBGQlZ5eEhRVUZITEV0QlFVc3NRMEZCUXp0SlFVTjRRaXhKUVVGSkxFMUJRVTBzUTBGQlF5eE5RVUZOTEV0QlFVc3NUVUZCVFN4RFFVRkRMRTFCUVUwc1JVRkJSVHROUVVOdVF5eFhRVUZYTEVkQlFVY3NTVUZCU1N4RFFVRkRPMHRCUTNCQ0xFMUJRVTA3VFVGRFRDeE5RVUZOTEVOQlFVTXNUMEZCVHl4RFFVRkRMRlZCUVZVc1NVRkJTU3hGUVVGRkxFdEJRVXNzUlVGQlJUdFJRVU53UXl4SlFVRkpMRWxCUVVrc1MwRkJTeXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEVWQlFVVTdWVUZETVVJc1YwRkJWeXhIUVVGSExFbEJRVWtzUTBGQlF6dFRRVU53UWp0UFFVTkdMRU5CUVVNc1EwRkJRenRMUVVOS08wbEJRMFFzVDBGQlR5eFhRVUZYTEVOQlFVTTdSMEZEY0VJN1JVRkRSQ3hKUVVGSkxFVkJRVVU3U1VGRFNpeEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFVkJRVVVzVFVGQlRTeERRVUZETzBsQlEyaERMRWRCUVVjc1JVRkJSU3hQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NSVUZCUlN4TFFVRkxMRU5CUVVNN1IwRkRMMEk3UTBGRFJpeERRVUZESWl3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaWRtRnlJR056Y21aVWIydGxibE5sYkdWamRHOXlJRDBnZEhsd1pXOW1JR1J2WTNWdFpXNTBJQ0U5SUNkMWJtUmxabWx1WldRbklEOGdaRzlqZFcxbGJuUXVjWFZsY25sVFpXeGxZM1J2Y2lnbmJXVjBZVnR1WVcxbFBWd2lZM055WmkxMGIydGxibHdpWFNjcElEb2diblZzYkR0Y2JseHVkbUZ5SUhSdlZWSk1SVzVqYjJSbFpDQTlJR1oxYm1OMGFXOXVJQ2hsYkdWdFpXNTBMQ0JyWlhrc0lHeHBjM1FwSUh0Y2JpQWdkbUZ5SUd4cGMzUWdQU0JzYVhOMElIeDhJRnRkTzF4dUlDQnBaaUFvZEhsd1pXOW1JQ2hsYkdWdFpXNTBLU0E5UFNBbmIySnFaV04wSnlrZ2UxeHVJQ0FnSUdadmNpQW9kbUZ5SUdsa2VDQnBiaUJsYkdWdFpXNTBLVnh1SUNBZ0lDQWdkRzlWVWt4RmJtTnZaR1ZrS0dWc1pXMWxiblJiYVdSNFhTd2dhMlY1SUQ4Z2EyVjVJQ3NnSjFzbklDc2dhV1I0SUNzZ0oxMG5JRG9nYVdSNExDQnNhWE4wS1R0Y2JpQWdmU0JsYkhObElIdGNiaUFnSUNCc2FYTjBMbkIxYzJnb2EyVjVJQ3NnSnowbklDc2daVzVqYjJSbFZWSkpRMjl0Y0c5dVpXNTBLR1ZzWlcxbGJuUXBLVHRjYmlBZ2ZWeHVJQ0J5WlhSMWNtNGdiR2x6ZEM1cWIybHVLQ2NtSnlrN1hHNTlPMXh1WEc1MllYSWdjbVZ4ZFdWemRDQTlJR1oxYm1OMGFXOXVJQ2h0WlhSb2IyUXNJSFZ5YkN3Z1pHRjBZU3dnWTI5dWRHVnVkRlI1Y0dVc0lHaGxZV1JsY25NcElIdGNibHh1SUNCMllYSWdZMjl1ZEdWdWRGUjVjR1VnUFNCamIyNTBaVzUwVkhsd1pTQTlQVDBnSjNWeWJHVnVZMjlrWldRbklEOGdKMkZ3Y0d4cFkyRjBhVzl1THljZ0t5QmpiMjUwWlc1MFZIbHdaUzV5WlhCc1lXTmxLQ2QxY214bGJtTnZaR1ZrSnl3Z0ozZ3RkM2QzTFdadmNtMHRkWEpzWlc1amIyUmxaQ2NwSURvZ0oyRndjR3hwWTJGMGFXOXVMMnB6YjI0bk8xeHVJQ0JrWVhSaElEMGdZMjl1ZEdWdWRGUjVjR1VnUFQwOUlDZGhjSEJzYVdOaGRHbHZiaTlxYzI5dUp5QS9JRXBUVDA0dWMzUnlhVzVuYVdaNUtHUmhkR0VwSURvZ2RHOVZVa3hGYm1OdlpHVmtLR1JoZEdFcE8xeHVYRzRnSUhKbGRIVnliaUJ1WlhjZ1VISnZiV2x6WlNobWRXNWpkR2x2YmlBb2NtVnpiMngyWlN3Z2NtVnFaV04wS1NCN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lIWmhjaUI0YUhJZ1BTQnVaWGNnV0UxTVNIUjBjRkpsY1hWbGMzUW9LVHRjYmlBZ0lDQWdJSGhvY2k1dmNHVnVLRzFsZEdodlpDd2dkWEpzTENCMGNuVmxLVHRjYmlBZ0lDQWdJSGhvY2k1elpYUlNaWEYxWlhOMFNHVmhaR1Z5S0NkQlkyTmxjSFFuTENBbllYQndiR2xqWVhScGIyNHZhbk52YmljcE8xeHVJQ0FnSUNBZ2VHaHlMbk5sZEZKbGNYVmxjM1JJWldGa1pYSW9KME52Ym5SbGJuUXRWSGx3WlNjc0lHTnZiblJsYm5SVWVYQmxLVHRjYmx4dUlDQWdJQ0FnYVdZZ0tDRWhZM055WmxSdmEyVnVVMlZzWldOMGIzSWdKaVlnSVNGamMzSm1WRzlyWlc1VFpXeGxZM1J2Y2k1amIyNTBaVzUwS1NCN1hHNGdJQ0FnSUNBZ0lIaG9jaTV6WlhSU1pYRjFaWE4wU0dWaFpHVnlLQ2RZTFVOVFVrWXRWRzlyWlc0bkxDQmpjM0ptVkc5clpXNVRaV3hsWTNSdmNpNWpiMjUwWlc1MEtUdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdMeThnUVdSa0lIQmhjM05sWkNCb1pXRmtaWEp6WEc0Z0lDQWdJQ0JQWW1wbFkzUXVhMlY1Y3lob1pXRmtaWEp6S1M1bWIzSkZZV05vS0daMWJtTjBhVzl1SUNob1pXRmtaWElwSUh0Y2JpQWdJQ0FnSUNBZ2VHaHlMbk5sZEZKbGNYVmxjM1JJWldGa1pYSW9hR1ZoWkdWeUxDQm9aV0ZrWlhKelcyaGxZV1JsY2wwcE8xeHVJQ0FnSUNBZ2ZTazdYRzVjYmlBZ0lDQWdJSGhvY2k1dmJuSmxZV1I1YzNSaGRHVmphR0Z1WjJVZ1BTQm1kVzVqZEdsdmJpQW9LU0I3WEc0Z0lDQWdJQ0FnSUdsbUlDaDRhSEl1Y21WaFpIbFRkR0YwWlNBOVBUMGdOQ2tnZTF4dVhHNGdJQ0FnSUNBZ0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJSFpoY2lCeVpYTndiMjV6WlNBOUlIaG9jaTV5WlhOd2IyNXpaVlJsZUhRZ1B5QktVMDlPTG5CaGNuTmxLSGhvY2k1eVpYTndiMjV6WlZSbGVIUXBJRG9nYm5Wc2JEdGNiaUFnSUNBZ0lDQWdJQ0FnSUdsbUlDaDRhSEl1YzNSaGRIVnpJRDQ5SURJd01DQW1KaUI0YUhJdWMzUmhkSFZ6SUR3Z016QXdLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSEpsYzI5c2RtVW9jbVZ6Y0c5dWMyVXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnY21WcVpXTjBLSEpsYzNCdmJuTmxLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0I5SUdOaGRHTm9JQ2hsS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0J5WldwbFkzUW9aU2s3WEc0Z0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDA3WEc0Z0lDQWdJQ0I0YUhJdWMyVnVaQ2hrWVhSaEtUdGNiaUFnSUNCOUlHTmhkR05vSUNobEtTQjdYRzRnSUNBZ0lDQnlaV3BsWTNRb1pTazdYRzRnSUNBZ2ZWeHVJQ0I5S1R0Y2JuMDdYRzVjYm0xdlpIVnNaUzVsZUhCdmNuUnpJRDBnZTF4dUlDQmhjbkpoZVhORWFXWm1aWEk2SUdaMWJtTjBhVzl1SUNoaGNuSmhlVUVzSUdGeWNtRjVRaWtnZTF4dUlDQWdJSFpoY2lCcGMwUnBabVpsY21WdWRDQTlJR1poYkhObE8xeHVJQ0FnSUdsbUlDaGhjbkpoZVVFdWJHVnVaM1JvSUNFOVBTQmhjbkpoZVVJdWJHVnVaM1JvS1NCN1hHNGdJQ0FnSUNCcGMwUnBabVpsY21WdWRDQTlJSFJ5ZFdVN1hHNGdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJR0Z5Y21GNVFTNW1iM0pGWVdOb0tHWjFibU4wYVc5dUlDaHBkR1Z0TENCcGJtUmxlQ2tnZTF4dUlDQWdJQ0FnSUNCcFppQW9hWFJsYlNBaFBUMGdZWEp5WVhsQ1cybHVaR1Y0WFNrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2x6UkdsbVptVnlaVzUwSUQwZ2RISjFaVHRjYmlBZ0lDQWdJQ0FnZlZ4dUlDQWdJQ0FnZlNrN1hHNGdJQ0FnZlZ4dUlDQWdJSEpsZEhWeWJpQnBjMFJwWm1abGNtVnVkRHRjYmlBZ2ZTeGNiaUFnWVdwaGVEb2dlMXh1SUNBZ0lIQnZjM1E2SUhKbGNYVmxjM1F1WW1sdVpDaHVkV3hzTENBblVFOVRWQ2NwTEZ4dUlDQWdJSEIxZERvZ2NtVnhkV1Z6ZEM1aWFXNWtLRzUxYkd3c0lDZFFWVlFuS1Z4dUlDQjlYRzU5TzF4dUlsMTkiLCJtb2R1bGUuZXhwb3J0cyA9IHtcbiAgJ2lzVmFsdWUnOiBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgIT09ICcnO1xuICB9LFxuICAnaXNFbWFpbCc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXigoKFthLXpdfFxcZHxbISNcXCQlJidcXCpcXCtcXC1cXC89XFw/XFxeX2B7XFx8fX5dfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSsoXFwuKFthLXpdfFxcZHxbISNcXCQlJidcXCpcXCtcXC1cXC89XFw/XFxeX2B7XFx8fX5dfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSspKil8KChcXHgyMikoKCgoXFx4MjB8XFx4MDkpKihcXHgwZFxceDBhKSk/KFxceDIwfFxceDA5KSspPygoW1xceDAxLVxceDA4XFx4MGJcXHgwY1xceDBlLVxceDFmXFx4N2ZdfFxceDIxfFtcXHgyMy1cXHg1Yl18W1xceDVkLVxceDdlXXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSl8KFxcXFwoW1xceDAxLVxceDA5XFx4MGJcXHgwY1xceDBkLVxceDdmXXxbXFx1MDBBMC1cXHVEN0ZGXFx1RjkwMC1cXHVGRENGXFx1RkRGMC1cXHVGRkVGXSkpKSkqKCgoXFx4MjB8XFx4MDkpKihcXHgwZFxceDBhKSk/KFxceDIwfFxceDA5KSspPyhcXHgyMikpKUAoKChbYS16XXxcXGR8W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pfCgoW2Etel18XFxkfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKShbYS16XXxcXGR8LXxcXC58X3x+fFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSooW2Etel18XFxkfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSkpXFwuKSsoKFthLXpdfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKXwoKFthLXpdfFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKShbYS16XXxcXGR8LXxcXC58X3x+fFtcXHUwMEEwLVxcdUQ3RkZcXHVGOTAwLVxcdUZEQ0ZcXHVGREYwLVxcdUZGRUZdKSooW2Etel18W1xcdTAwQTAtXFx1RDdGRlxcdUY5MDAtXFx1RkRDRlxcdUZERjAtXFx1RkZFRl0pKSkkL2kpO1xuICB9LFxuICAnaXNUcnVlJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlID09PSB0cnVlO1xuICB9LFxuICAnaXNOdW1lcmljJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB2YXIgbWF0Y2hSZXN1bHRzID0gdmFsdWUubWF0Y2goL1stK10/KFxcZCpbLl0pP1xcZCsvKTtcbiAgICAgIGlmICghISBtYXRjaFJlc3VsdHMpIHtcbiAgICAgICAgcmV0dXJuIG1hdGNoUmVzdWx0c1swXSA9PSB2YWx1ZTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH0sXG4gICdpc0FscGhhJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlLm1hdGNoKC9eW2EtekEtWl0rJC8pO1xuICB9LFxuICAnaXNXb3Jkcyc6IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5tYXRjaCgvXlthLXpBLVpcXHNdKyQvKTtcbiAgfSxcbiAgJ2lzU3BlY2lhbFdvcmRzJzogZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlLm1hdGNoKC9eW2EtekEtWlxcc1xcdTAwQzAtXFx1MDE3Rl0rJC8pO1xuICB9LFxuICBpc0xlbmd0aDogZnVuY3Rpb24gKHZhbHVlLCBtaW4sIG1heCkge1xuICAgIGlmIChtYXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHZhbHVlLmxlbmd0aCA+PSBtaW4gJiYgdmFsdWUubGVuZ3RoIDw9IG1heDtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlLmxlbmd0aCA+PSBtaW47XG4gIH0sXG4gIGVxdWFsczogZnVuY3Rpb24gKHZhbHVlLCBlcWwpIHtcbiAgICByZXR1cm4gdmFsdWUgPT0gZXFsO1xuICB9LFxuICBlcXVhbHNGaWVsZDogZnVuY3Rpb24gKHZhbHVlLCBmaWVsZCkge1xuICAgIHJldHVybiB2YWx1ZSA9PSB0aGlzW2ZpZWxkXTtcbiAgfVxufTtcblxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pTDFWelpYSnpMMk5vY21semRHbGhibUZzWm05dWFTOUViMk4xYldWdWRITXZaR1YyTDJadmNtMXplUzF5WldGamRDOXpjbU12ZG1Gc2FXUmhkR2x2YmxKMWJHVnpMbXB6SWl3aWMyOTFjbU5sY3lJNld5SXZWWE5sY25NdlkyaHlhWE4wYVdGdVlXeG1iMjVwTDBSdlkzVnRaVzUwY3k5a1pYWXZabTl5YlhONUxYSmxZV04wTDNOeVl5OTJZV3hwWkdGMGFXOXVVblZzWlhNdWFuTWlYU3dpYm1GdFpYTWlPbHRkTENKdFlYQndhVzVuY3lJNklrRkJRVUVzVFVGQlRTeERRVUZETEU5QlFVOHNSMEZCUnp0RlFVTm1MRk5CUVZNc1JVRkJSU3hWUVVGVkxFdEJRVXNzUlVGQlJUdEpRVU14UWl4UFFVRlBMRXRCUVVzc1MwRkJTeXhGUVVGRkxFTkJRVU03UjBGRGNrSTdSVUZEUkN4VFFVRlRMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3U1VGRE1VSXNUMEZCVHl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExIazBRa0ZCZVRSQ0xFTkJRVU1zUTBGQlF6dEhRVU12TlVJN1JVRkRSQ3hSUVVGUkxFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVTdTVUZEZWtJc1QwRkJUeXhMUVVGTExFdEJRVXNzU1VGQlNTeERRVUZETzBkQlEzWkNPMFZCUTBRc1YwRkJWeXhGUVVGRkxGVkJRVlVzUzBGQlN5eEZRVUZGTzBsQlF6VkNMRWxCUVVrc1QwRkJUeXhMUVVGTExFdEJRVXNzVVVGQlVTeEZRVUZGTzAxQlF6ZENMRTlCUVU4c1NVRkJTU3hEUVVGRE8wdEJRMklzVFVGQlRUdE5RVU5NTEVsQlFVa3NXVUZCV1N4SFFVRkhMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zYlVKQlFXMUNMRU5CUVVNc1EwRkJRenROUVVOd1JDeEpRVUZKTEVOQlFVTXNSVUZCUlN4WlFVRlpMRVZCUVVVN1VVRkRia0lzVDBGQlR5eFpRVUZaTEVOQlFVTXNRMEZCUXl4RFFVRkRMRWxCUVVrc1MwRkJTeXhEUVVGRE8wOUJRMnBETEUxQlFVMDdVVUZEVEN4UFFVRlBMRXRCUVVzc1EwRkJRenRQUVVOa08wdEJRMFk3UjBGRFJqdEZRVU5FTEZOQlFWTXNSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSVHRKUVVNeFFpeFBRVUZQTEV0QlFVc3NRMEZCUXl4TFFVRkxMRU5CUVVNc1lVRkJZU3hEUVVGRExFTkJRVU03UjBGRGJrTTdSVUZEUkN4VFFVRlRMRVZCUVVVc1ZVRkJWU3hMUVVGTExFVkJRVVU3U1VGRE1VSXNUMEZCVHl4TFFVRkxMRU5CUVVNc1MwRkJTeXhEUVVGRExHVkJRV1VzUTBGQlF5eERRVUZETzBkQlEzSkRPMFZCUTBRc1owSkJRV2RDTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVN1NVRkRha01zVDBGQlR5eExRVUZMTEVOQlFVTXNTMEZCU3l4RFFVRkRMRFJDUVVFMFFpeERRVUZETEVOQlFVTTdSMEZEYkVRN1JVRkRSQ3hSUVVGUkxFVkJRVVVzVlVGQlZTeExRVUZMTEVWQlFVVXNSMEZCUnl4RlFVRkZMRWRCUVVjc1JVRkJSVHRKUVVOdVF5eEpRVUZKTEVkQlFVY3NTMEZCU3l4VFFVRlRMRVZCUVVVN1RVRkRja0lzVDBGQlR5eExRVUZMTEVOQlFVTXNUVUZCVFN4SlFVRkpMRWRCUVVjc1NVRkJTU3hMUVVGTExFTkJRVU1zVFVGQlRTeEpRVUZKTEVkQlFVY3NRMEZCUXp0TFFVTnVSRHRKUVVORUxFOUJRVThzUzBGQlN5eERRVUZETEUxQlFVMHNTVUZCU1N4SFFVRkhMRU5CUVVNN1IwRkROVUk3UlVGRFJDeE5RVUZOTEVWQlFVVXNWVUZCVlN4TFFVRkxMRVZCUVVVc1IwRkJSeXhGUVVGRk8wbEJRelZDTEU5QlFVOHNTMEZCU3l4SlFVRkpMRWRCUVVjc1EwRkJRenRIUVVOeVFqdEZRVU5FTEZkQlFWY3NSVUZCUlN4VlFVRlZMRXRCUVVzc1JVRkJSU3hMUVVGTExFVkJRVVU3U1VGRGJrTXNUMEZCVHl4TFFVRkxMRWxCUVVrc1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzBkQlF6ZENPME5CUTBZc1EwRkJReUlzSW5OdmRYSmpaWE5EYjI1MFpXNTBJanBiSW0xdlpIVnNaUzVsZUhCdmNuUnpJRDBnZTF4dUlDQW5hWE5XWVd4MVpTYzZJR1oxYm1OMGFXOXVJQ2gyWVd4MVpTa2dlMXh1SUNBZ0lISmxkSFZ5YmlCMllXeDFaU0FoUFQwZ0p5YzdYRzRnSUgwc1hHNGdJQ2RwYzBWdFlXbHNKem9nWm5WdVkzUnBiMjRnS0haaGJIVmxLU0I3WEc0Z0lDQWdjbVYwZFhKdUlIWmhiSFZsTG0xaGRHTm9LQzllS0Nnb1cyRXRlbDE4WEZ4a2ZGc2hJMXhjSkNVbUoxeGNLbHhjSzF4Y0xWeGNMejFjWEQ5Y1hGNWZZSHRjWEh4OWZsMThXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS3loY1hDNG9XMkV0ZWwxOFhGeGtmRnNoSTF4Y0pDVW1KMXhjS2x4Y0sxeGNMVnhjTHoxY1hEOWNYRjVmWUh0Y1hIeDlmbDE4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEt5a3FLWHdvS0Z4Y2VESXlLU2dvS0NoY1hIZ3lNSHhjWEhnd09Ta3FLRnhjZURCa1hGeDRNR0VwS1Q4b1hGeDRNakI4WEZ4NE1Ea3BLeWsvS0NoYlhGeDRNREV0WEZ4NE1EaGNYSGd3WWx4Y2VEQmpYRng0TUdVdFhGeDRNV1pjWEhnM1psMThYRng0TWpGOFcxeGNlREl6TFZ4Y2VEVmlYWHhiWEZ4NE5XUXRYRng0TjJWZGZGdGNYSFV3TUVFd0xWeGNkVVEzUmtaY1hIVkdPVEF3TFZ4Y2RVWkVRMFpjWEhWR1JFWXdMVnhjZFVaR1JVWmRLWHdvWEZ4Y1hDaGJYRng0TURFdFhGeDRNRGxjWEhnd1lseGNlREJqWEZ4NE1HUXRYRng0TjJaZGZGdGNYSFV3TUVFd0xWeGNkVVEzUmtaY1hIVkdPVEF3TFZ4Y2RVWkVRMFpjWEhWR1JFWXdMVnhjZFVaR1JVWmRLU2twS1Nvb0tDaGNYSGd5TUh4Y1hIZ3dPU2txS0Z4Y2VEQmtYRng0TUdFcEtUOG9YRng0TWpCOFhGeDRNRGtwS3lrL0tGeGNlREl5S1NrcFFDZ29LRnRoTFhwZGZGeGNaSHhiWEZ4MU1EQkJNQzFjWEhWRU4wWkdYRngxUmprd01DMWNYSFZHUkVOR1hGeDFSa1JHTUMxY1hIVkdSa1ZHWFNsOEtDaGJZUzE2WFh4Y1hHUjhXMXhjZFRBd1FUQXRYRngxUkRkR1JseGNkVVk1TURBdFhGeDFSa1JEUmx4Y2RVWkVSakF0WEZ4MVJrWkZSbDBwS0Z0aExYcGRmRnhjWkh3dGZGeGNMbnhmZkg1OFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLaWhiWVMxNlhYeGNYR1I4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEtTbGNYQzRwS3lnb1cyRXRlbDE4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcGZDZ29XMkV0ZWwxOFcxeGNkVEF3UVRBdFhGeDFSRGRHUmx4Y2RVWTVNREF0WEZ4MVJrUkRSbHhjZFVaRVJqQXRYRngxUmtaRlJsMHBLRnRoTFhwZGZGeGNaSHd0ZkZ4Y0xueGZmSDU4VzF4Y2RUQXdRVEF0WEZ4MVJEZEdSbHhjZFVZNU1EQXRYRngxUmtSRFJseGNkVVpFUmpBdFhGeDFSa1pGUmwwcEtpaGJZUzE2WFh4YlhGeDFNREJCTUMxY1hIVkVOMFpHWEZ4MVJqa3dNQzFjWEhWR1JFTkdYRngxUmtSR01DMWNYSFZHUmtWR1hTa3BLU1F2YVNrN1hHNGdJSDBzWEc0Z0lDZHBjMVJ5ZFdVbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVWdQVDA5SUhSeWRXVTdYRzRnSUgwc1hHNGdJQ2RwYzA1MWJXVnlhV01uT2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VwSUh0Y2JpQWdJQ0JwWmlBb2RIbHdaVzltSUhaaGJIVmxJRDA5UFNBbmJuVnRZbVZ5SnlrZ2UxeHVJQ0FnSUNBZ2NtVjBkWEp1SUhSeWRXVTdYRzRnSUNBZ2ZTQmxiSE5sSUh0Y2JpQWdJQ0FnSUhaaGNpQnRZWFJqYUZKbGMzVnNkSE1nUFNCMllXeDFaUzV0WVhSamFDZ3ZXeTByWFQ4b1hGeGtLbHN1WFNrL1hGeGtLeThwTzF4dUlDQWdJQ0FnYVdZZ0tDRWhJRzFoZEdOb1VtVnpkV3gwY3lrZ2UxeHVJQ0FnSUNBZ0lDQnlaWFIxY200Z2JXRjBZMmhTWlhOMWJIUnpXekJkSUQwOUlIWmhiSFZsTzF4dUlDQWdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJQ0FnY21WMGRYSnVJR1poYkhObE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUgxY2JpQWdmU3hjYmlBZ0oybHpRV3h3YUdFbk9pQm1kVzVqZEdsdmJpQW9kbUZzZFdVcElIdGNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVXViV0YwWTJnb0wxNWJZUzE2UVMxYVhTc2tMeWs3WEc0Z0lIMHNYRzRnSUNkcGMxZHZjbVJ6SnpvZ1puVnVZM1JwYjI0Z0tIWmhiSFZsS1NCN1hHNGdJQ0FnY21WMGRYSnVJSFpoYkhWbExtMWhkR05vS0M5ZVcyRXRla0V0V2x4Y2MxMHJKQzhwTzF4dUlDQjlMRnh1SUNBbmFYTlRjR1ZqYVdGc1YyOXlaSE1uT2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VwSUh0Y2JpQWdJQ0J5WlhSMWNtNGdkbUZzZFdVdWJXRjBZMmdvTDE1YllTMTZRUzFhWEZ4elhGeDFNREJETUMxY1hIVXdNVGRHWFNza0x5azdYRzRnSUgwc1hHNGdJR2x6VEdWdVozUm9PaUJtZFc1amRHbHZiaUFvZG1Gc2RXVXNJRzFwYml3Z2JXRjRLU0I3WEc0Z0lDQWdhV1lnS0cxaGVDQWhQVDBnZFc1a1pXWnBibVZrS1NCN1hHNGdJQ0FnSUNCeVpYUjFjbTRnZG1Gc2RXVXViR1Z1WjNSb0lENDlJRzFwYmlBbUppQjJZV3gxWlM1c1pXNW5kR2dnUEQwZ2JXRjRPMXh1SUNBZ0lIMWNiaUFnSUNCeVpYUjFjbTRnZG1Gc2RXVXViR1Z1WjNSb0lENDlJRzFwYmp0Y2JpQWdmU3hjYmlBZ1pYRjFZV3h6T2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VzSUdWeGJDa2dlMXh1SUNBZ0lISmxkSFZ5YmlCMllXeDFaU0E5UFNCbGNXdzdYRzRnSUgwc1hHNGdJR1Z4ZFdGc2MwWnBaV3hrT2lCbWRXNWpkR2x2YmlBb2RtRnNkV1VzSUdacFpXeGtLU0I3WEc0Z0lDQWdjbVYwZFhKdUlIWmhiSFZsSUQwOUlIUm9hWE5iWm1sbGJHUmRPMXh1SUNCOVhHNTlPMXh1SWwxOSJdfQ== diff --git a/specs/Validation-spec.js b/specs/Validation-spec.js index fd2a79c..db58ac8 100644 --- a/specs/Validation-spec.js +++ b/specs/Validation-spec.js @@ -50,7 +50,7 @@ describe('Validation', function() { }); - it('should use provided checkValidity function', function () { + it('should use provided validate function', function () { var isValid = jasmine.createSpy('valid'); var TestInput = React.createClass({ @@ -64,7 +64,7 @@ describe('Validation', function() { } return }, - checkValidity: function () { + validate: function () { return this.getValue() === "checkValidity"; } }); @@ -75,7 +75,6 @@ describe('Validation', function() { ); var input = TestUtils.findRenderedDOMComponentWithTag(form, 'INPUT'); - expect(isValid).not.toHaveBeenCalled(); TestUtils.Simulate.change(input, {target: {value: 'checkValidity'}}); expect(isValid).toHaveBeenCalled(); diff --git a/src/main.js b/src/main.js index e897437..944a3f5 100644 --- a/src/main.js +++ b/src/main.js @@ -233,7 +233,7 @@ Formsy.Form = React.createClass({ } var isValid = true; - if (component.validate) { + if (component.validate && typeof component.validate === 'function') { isValid = component.validate(); } else if (component.props.required || component._validations) { isValid = this.runValidation(component);