1688054431
waR3U4bTeM%3A6e742014ccec871400e8e6f5434883ee-ba50143ecaf72f89fd8764cb7a9a5a7d
s:133976:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6ImJhNTAxNDNlY2FmNzJmODlmZDg3NjRjYjdhOWE1YTdkIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWUiO3M6MTE6IkNvbW1hbmQucGhwIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6NDU6InZlbmRvci9waHB1bml0L3BocHVuaXQvc3JjL1RleHRVSS9Db21tYW5kLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6MjczNzQ6Ijw/cGhwIGRlY2xhcmUoc3RyaWN0X3R5cGVzPTEpOwovKgogKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBQSFBVbml0LgogKgogKiAoYykgU2ViYXN0aWFuIEJlcmdtYW5uIDxzZWJhc3RpYW5AcGhwdW5pdC5kZT4KICoKICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0UKICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuCiAqLwpuYW1lc3BhY2UgUEhQVW5pdFxUZXh0VUk7Cgp1c2UgY29uc3QgUEFUSF9TRVBBUkFUT1I7CnVzZSBjb25zdCBQSFBfRU9MOwp1c2UgY29uc3QgU1RESU47CnVzZSBmdW5jdGlvbiBhcnJheV9rZXlzOwp1c2UgZnVuY3Rpb24gYXNzZXJ0Owp1c2UgZnVuY3Rpb24gY2xhc3NfZXhpc3RzOwp1c2UgZnVuY3Rpb24gY29weTsKdXNlIGZ1bmN0aW9uIGV4dGVuc2lvbl9sb2FkZWQ7CnVzZSBmdW5jdGlvbiBmZ2V0czsKdXNlIGZ1bmN0aW9uIGZpbGVfZ2V0X2NvbnRlbnRzOwp1c2UgZnVuY3Rpb24gZmlsZV9wdXRfY29udGVudHM7CnVzZSBmdW5jdGlvbiBnZXRfY2xhc3M7CnVzZSBmdW5jdGlvbiBnZXRjd2Q7CnVzZSBmdW5jdGlvbiBpbmlfZ2V0Owp1c2UgZnVuY3Rpb24gaW5pX3NldDsKdXNlIGZ1bmN0aW9uIGlzX2NhbGxhYmxlOwp1c2UgZnVuY3Rpb24gaXNfZGlyOwp1c2UgZnVuY3Rpb24gaXNfZmlsZTsKdXNlIGZ1bmN0aW9uIGlzX3N0cmluZzsKdXNlIGZ1bmN0aW9uIHByaW50ZjsKdXNlIGZ1bmN0aW9uIHJlYWxwYXRoOwp1c2UgZnVuY3Rpb24gc29ydDsKdXNlIGZ1bmN0aW9uIHNwcmludGY7CnVzZSBmdW5jdGlvbiBzdHJlYW1fcmVzb2x2ZV9pbmNsdWRlX3BhdGg7CnVzZSBmdW5jdGlvbiBzdHJwb3M7CnVzZSBmdW5jdGlvbiB0cmltOwp1c2UgZnVuY3Rpb24gdmVyc2lvbl9jb21wYXJlOwp1c2UgUEhQVW5pdFxGcmFtZXdvcmtcVGVzdFN1aXRlOwp1c2UgUEhQVW5pdFxSdW5uZXJcRXh0ZW5zaW9uXFBoYXJMb2FkZXI7CnVzZSBQSFBVbml0XFJ1bm5lclxTdGFuZGFyZFRlc3RTdWl0ZUxvYWRlcjsKdXNlIFBIUFVuaXRcUnVubmVyXFRlc3RTdWl0ZUxvYWRlcjsKdXNlIFBIUFVuaXRcUnVubmVyXFZlcnNpb247CnVzZSBQSFBVbml0XFRleHRVSVxDbGlBcmd1bWVudHNcQnVpbGRlcjsKdXNlIFBIUFVuaXRcVGV4dFVJXENsaUFyZ3VtZW50c1xDb25maWd1cmF0aW9uOwp1c2UgUEhQVW5pdFxUZXh0VUlcQ2xpQXJndW1lbnRzXEV4Y2VwdGlvbiBhcyBBcmd1bWVudHNFeGNlcHRpb247CnVzZSBQSFBVbml0XFRleHRVSVxDbGlBcmd1bWVudHNcTWFwcGVyOwp1c2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcRmlsdGVyTWFwcGVyOwp1c2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxHZW5lcmF0b3I7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjsKdXNlIFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTWlncmF0b3I7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXFBocEhhbmRsZXI7CnVzZSBQSFBVbml0XFV0aWxcRmlsZUxvYWRlcjsKdXNlIFBIUFVuaXRcVXRpbFxGaWxlc3lzdGVtOwp1c2UgUEhQVW5pdFxVdGlsXFByaW50ZXI7CnVzZSBQSFBVbml0XFV0aWxcVGV4dFRlc3RMaXN0UmVuZGVyZXI7CnVzZSBQSFBVbml0XFV0aWxcWG1sXFNjaGVtYURldGVjdG9yOwp1c2UgUEhQVW5pdFxVdGlsXFhtbFRlc3RMaXN0UmVuZGVyZXI7CnVzZSBSZWZsZWN0aW9uQ2xhc3M7CnVzZSBTZWJhc3RpYW5CZXJnbWFublxDb2RlQ292ZXJhZ2VcRmlsdGVyOwp1c2UgU2ViYXN0aWFuQmVyZ21hbm5cQ29kZUNvdmVyYWdlXFN0YXRpY0FuYWx5c2lzXENhY2hlV2FybWVyOwp1c2UgU2ViYXN0aWFuQmVyZ21hbm5cVGltZXJcVGltZXI7CnVzZSBUaHJvd2FibGU7CgovKioKICogQG5vLW5hbWVkLWFyZ3VtZW50cyBQYXJhbWV0ZXIgbmFtZXMgYXJlIG5vdCBjb3ZlcmVkIGJ5IHRoZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHByb21pc2UgZm9yIFBIUFVuaXQKICovCmNsYXNzIENvbW1hbmQKewogICAgLyoqCiAgICAgKiBAdmFyIGFycmF5PHN0cmluZyxtaXhlZD4KICAgICAqLwogICAgcHJvdGVjdGVkICRhcmd1bWVudHMgPSBbXTsKCiAgICAvKioKICAgICAqIEB2YXIgYXJyYXk8c3RyaW5nLG1peGVkPgogICAgICovCiAgICBwcm90ZWN0ZWQgJGxvbmdPcHRpb25zID0gW107CgogICAgLyoqCiAgICAgKiBAdmFyIGJvb2wKICAgICAqLwogICAgcHJpdmF0ZSAkdmVyc2lvblN0cmluZ1ByaW50ZWQgPSBmYWxzZTsKCiAgICAvKioKICAgICAqIEBwc2FsbS12YXIgbGlzdDxzdHJpbmc+CiAgICAgKi8KICAgIHByaXZhdGUgJHdhcm5pbmdzID0gW107CgogICAgLyoqCiAgICAgKiBAdGhyb3dzIEV4Y2VwdGlvbgogICAgICovCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIG1haW4oYm9vbCAkZXhpdCA9IHRydWUpOiBpbnQKICAgIHsKICAgICAgICB0cnkgewogICAgICAgICAgICByZXR1cm4gKG5ldyBzdGF0aWMpLT5ydW4oJF9TRVJWRVJbJ2FyZ3YnXSwgJGV4aXQpOwogICAgICAgIH0gY2F0Y2ggKFRocm93YWJsZSAkdCkgewogICAgICAgICAgICB0aHJvdyBuZXcgUnVudGltZUV4Y2VwdGlvbigKICAgICAgICAgICAgICAgICR0LT5nZXRNZXNzYWdlKCksCiAgICAgICAgICAgICAgICAoaW50KSAkdC0+Z2V0Q29kZSgpLAogICAgICAgICAgICAgICAgJHQKICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICB9CgogICAgLyoqCiAgICAgKiBAdGhyb3dzIEV4Y2VwdGlvbgogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gcnVuKGFycmF5ICRhcmd2LCBib29sICRleGl0ID0gdHJ1ZSk6IGludAogICAgewogICAgICAgICR0aGlzLT5oYW5kbGVBcmd1bWVudHMoJGFyZ3YpOwoKICAgICAgICAkcnVubmVyID0gJHRoaXMtPmNyZWF0ZVJ1bm5lcigpOwoKICAgICAgICBpZiAoJHRoaXMtPmFyZ3VtZW50c1sndGVzdCddIGluc3RhbmNlb2YgVGVzdFN1aXRlKSB7CiAgICAgICAgICAgICRzdWl0ZSA9ICR0aGlzLT5hcmd1bWVudHNbJ3Rlc3QnXTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkc3VpdGUgPSAkcnVubmVyLT5nZXRUZXN0KAogICAgICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1sndGVzdCddLAogICAgICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1sndGVzdFN1ZmZpeGVzJ10KICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGlmICgkdGhpcy0+YXJndW1lbnRzWydsaXN0R3JvdXBzJ10pIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5oYW5kbGVMaXN0R3JvdXBzKCRzdWl0ZSwgJGV4aXQpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCR0aGlzLT5hcmd1bWVudHNbJ2xpc3RTdWl0ZXMnXSkgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPmhhbmRsZUxpc3RTdWl0ZXMoJGV4aXQpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCR0aGlzLT5hcmd1bWVudHNbJ2xpc3RUZXN0cyddKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+aGFuZGxlTGlzdFRlc3RzKCRzdWl0ZSwgJGV4aXQpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCR0aGlzLT5hcmd1bWVudHNbJ2xpc3RUZXN0c1htbCddKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+aGFuZGxlTGlzdFRlc3RzWG1sKCRzdWl0ZSwgJHRoaXMtPmFyZ3VtZW50c1snbGlzdFRlc3RzWG1sJ10sICRleGl0KTsKICAgICAgICB9CgogICAgICAgIHVuc2V0KCR0aGlzLT5hcmd1bWVudHNbJ3Rlc3QnXSwgJHRoaXMtPmFyZ3VtZW50c1sndGVzdEZpbGUnXSk7CgogICAgICAgIHRyeSB7CiAgICAgICAgICAgICRyZXN1bHQgPSAkcnVubmVyLT5ydW4oJHN1aXRlLCAkdGhpcy0+YXJndW1lbnRzLCAkdGhpcy0+d2FybmluZ3MsICRleGl0KTsKICAgICAgICB9IGNhdGNoIChUaHJvd2FibGUgJHQpIHsKICAgICAgICAgICAgcHJpbnQgJHQtPmdldE1lc3NhZ2UoKSAuIFBIUF9FT0w7CiAgICAgICAgfQoKICAgICAgICAkcmV0dXJuID0gVGVzdFJ1bm5lcjo6RkFJTFVSRV9FWElUOwoKICAgICAgICBpZiAoaXNzZXQoJHJlc3VsdCkgJiYgJHJlc3VsdC0+d2FzU3VjY2Vzc2Z1bCgpKSB7CiAgICAgICAgICAgICRyZXR1cm4gPSBUZXN0UnVubmVyOjpTVUNDRVNTX0VYSVQ7CiAgICAgICAgfSBlbHNlaWYgKCFpc3NldCgkcmVzdWx0KSB8fCAkcmVzdWx0LT5lcnJvckNvdW50KCkgPiAwKSB7CiAgICAgICAgICAgICRyZXR1cm4gPSBUZXN0UnVubmVyOjpFWENFUFRJT05fRVhJVDsKICAgICAgICB9CgogICAgICAgIGlmICgkZXhpdCkgewogICAgICAgICAgICBleGl0KCRyZXR1cm4pOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRyZXR1cm47CiAgICB9CgogICAgLyoqCiAgICAgKiBDcmVhdGUgYSBUZXN0UnVubmVyLCBvdmVycmlkZSBpbiBzdWJjbGFzc2VzLgogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gY3JlYXRlUnVubmVyKCk6IFRlc3RSdW5uZXIKICAgIHsKICAgICAgICByZXR1cm4gbmV3IFRlc3RSdW5uZXIoJHRoaXMtPmFyZ3VtZW50c1snbG9hZGVyJ10pOwogICAgfQoKICAgIC8qKgogICAgICogSGFuZGxlcyB0aGUgY29tbWFuZC1saW5lIGFyZ3VtZW50cy4KICAgICAqCiAgICAgKiBBIGNoaWxkIGNsYXNzIG9mIFBIUFVuaXRcVGV4dFVJXENvbW1hbmQgY2FuIGhvb2sgaW50byB0aGUgYXJndW1lbnQKICAgICAqIHBhcnNpbmcgYnkgYWRkaW5nIHRoZSBzd2l0Y2goZXMpIHRvIHRoZSAkbG9uZ09wdGlvbnMgYXJyYXkgYW5kIHBvaW50IHRvIGEKICAgICAqIGNhbGxiYWNrIG1ldGhvZCB0aGF0IGhhbmRsZXMgdGhlIHN3aXRjaChlcykgaW4gdGhlIGNoaWxkIGNsYXNzIGxpa2UgdGhpcwogICAgICoKICAgICAqIDxjb2RlPgogICAgICogPD9waHAKICAgICAqIGNsYXNzIE15Q29tbWFuZCBleHRlbmRzIFBIUFVuaXRcVGV4dFVJXENvbW1hbmQKICAgICAqIHsKICAgICAqICAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKQogICAgICogICAgIHsKICAgICAqICAgICAgICAgLy8gbXktc3dpdGNoIHdvbid0IGFjY2VwdCBhIHZhbHVlLCBpdCdzIGFuIG9uL29mZgogICAgICogICAgICAgICAkdGhpcy0+bG9uZ09wdGlvbnNbJ215LXN3aXRjaCddID0gJ215SGFuZGxlcic7CiAgICAgKiAgICAgICAgIC8vIG15LXNlY29uZHN3aXRjaCB3aWxsIGFjY2VwdCBhIHZhbHVlIC0gbm90ZSB0aGUgZXF1YWxzIHNpZ24KICAgICAqICAgICAgICAgJHRoaXMtPmxvbmdPcHRpb25zWydteS1zZWNvbmRzd2l0Y2g9J10gPSAnbXlPdGhlckhhbmRsZXInOwogICAgICogICAgIH0KICAgICAqCiAgICAgKiAgICAgLy8gLS1teS1zd2l0Y2ggIC0+IG15SGFuZGxlcigpCiAgICAgKiAgICAgcHJvdGVjdGVkIGZ1bmN0aW9uIG15SGFuZGxlcigpCiAgICAgKiAgICAgewogICAgICogICAgIH0KICAgICAqCiAgICAgKiAgICAgLy8gLS1teS1zZWNvbmRzd2l0Y2ggZm9vIC0+IG15T3RoZXJIYW5kbGVyKCdmb28nKQogICAgICogICAgIHByb3RlY3RlZCBmdW5jdGlvbiBteU90aGVySGFuZGxlciAoJHZhbHVlKQogICAgICogICAgIHsKICAgICAqICAgICB9CiAgICAgKgogICAgICogICAgIC8vIFlvdSB3aWxsIGFsc28gbmVlZCB0aGlzIC0gdGhlIHN0YXRpYyBrZXl3b3JkIGluIHRoZQogICAgICogICAgIC8vIFBIUFVuaXRcVGV4dFVJXENvbW1hbmQgd2lsbCBtZWFuIHRoYXQgaXQnbGwgYmUKICAgICAqICAgICAvLyBQSFBVbml0XFRleHRVSVxDb21tYW5kIHRoYXQgZ2V0cyBpbnN0YW50aWF0ZWQsCiAgICAgKiAgICAgLy8gbm90IE15Q29tbWFuZAogICAgICogICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gbWFpbigkZXhpdCA9IHRydWUpCiAgICAgKiAgICAgewogICAgICogICAgICAgICAkY29tbWFuZCA9IG5ldyBzdGF0aWM7CiAgICAgKgogICAgICogICAgICAgICByZXR1cm4gJGNvbW1hbmQtPnJ1bigkX1NFUlZFUlsnYXJndiddLCAkZXhpdCk7CiAgICAgKiAgICAgfQogICAgICoKICAgICAqIH0KICAgICAqIDwvY29kZT4KICAgICAqCiAgICAgKiBAdGhyb3dzIEV4Y2VwdGlvbgogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gaGFuZGxlQXJndW1lbnRzKGFycmF5ICRhcmd2KTogdm9pZAogICAgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgICRhcmd1bWVudHMgPSAobmV3IEJ1aWxkZXIpLT5mcm9tUGFyYW1ldGVycygkYXJndiwgYXJyYXlfa2V5cygkdGhpcy0+bG9uZ09wdGlvbnMpKTsKICAgICAgICB9IGNhdGNoIChBcmd1bWVudHNFeGNlcHRpb24gJGUpIHsKICAgICAgICAgICAgJHRoaXMtPmV4aXRXaXRoRXJyb3JNZXNzYWdlKCRlLT5nZXRNZXNzYWdlKCkpOwogICAgICAgIH0KCiAgICAgICAgYXNzZXJ0KGlzc2V0KCRhcmd1bWVudHMpICYmICRhcmd1bWVudHMgaW5zdGFuY2VvZiBDb25maWd1cmF0aW9uKTsKCiAgICAgICAgaWYgKCRhcmd1bWVudHMtPmhhc0dlbmVyYXRlQ29uZmlndXJhdGlvbigpICYmICRhcmd1bWVudHMtPmdlbmVyYXRlQ29uZmlndXJhdGlvbigpKSB7CiAgICAgICAgICAgICR0aGlzLT5nZW5lcmF0ZUNvbmZpZ3VyYXRpb24oKTsKICAgICAgICB9CgogICAgICAgIGlmICgkYXJndW1lbnRzLT5oYXNBdExlYXN0VmVyc2lvbigpKSB7CiAgICAgICAgICAgIGlmICh2ZXJzaW9uX2NvbXBhcmUoVmVyc2lvbjo6aWQoKSwgJGFyZ3VtZW50cy0+YXRMZWFzdFZlcnNpb24oKSwgJz49JykpIHsKICAgICAgICAgICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6U1VDQ0VTU19FWElUKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZXhpdChUZXN0UnVubmVyOjpGQUlMVVJFX0VYSVQpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCRhcmd1bWVudHMtPmhhc1ZlcnNpb24oKSAmJiAkYXJndW1lbnRzLT52ZXJzaW9uKCkpIHsKICAgICAgICAgICAgJHRoaXMtPnByaW50VmVyc2lvblN0cmluZygpOwoKICAgICAgICAgICAgZXhpdChUZXN0UnVubmVyOjpTVUNDRVNTX0VYSVQpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCRhcmd1bWVudHMtPmhhc0NoZWNrVmVyc2lvbigpICYmICRhcmd1bWVudHMtPmNoZWNrVmVyc2lvbigpKSB7CiAgICAgICAgICAgICR0aGlzLT5oYW5kbGVWZXJzaW9uQ2hlY2soKTsKICAgICAgICB9CgogICAgICAgIGlmICgkYXJndW1lbnRzLT5oYXNIZWxwKCkpIHsKICAgICAgICAgICAgJHRoaXMtPnNob3dIZWxwKCk7CgogICAgICAgICAgICBleGl0KFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVCk7CiAgICAgICAgfQoKICAgICAgICBpZiAoJGFyZ3VtZW50cy0+aGFzVW5yZWNvZ25pemVkT3JkZXJCeSgpKSB7CiAgICAgICAgICAgICR0aGlzLT5leGl0V2l0aEVycm9yTWVzc2FnZSgKICAgICAgICAgICAgICAgIHNwcmludGYoCiAgICAgICAgICAgICAgICAgICAgJ3VucmVjb2duaXplZCAtLW9yZGVyLWJ5IG9wdGlvbjogJXMnLAogICAgICAgICAgICAgICAgICAgICRhcmd1bWVudHMtPnVucmVjb2duaXplZE9yZGVyQnkoKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgaWYgKCRhcmd1bWVudHMtPmhhc0luaVNldHRpbmdzKCkpIHsKICAgICAgICAgICAgZm9yZWFjaCAoJGFyZ3VtZW50cy0+aW5pU2V0dGluZ3MoKSBhcyAkbmFtZSA9PiAkdmFsdWUpIHsKICAgICAgICAgICAgICAgIGluaV9zZXQoJG5hbWUsICR2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICgkYXJndW1lbnRzLT5oYXNJbmNsdWRlUGF0aCgpKSB7CiAgICAgICAgICAgIGluaV9zZXQoCiAgICAgICAgICAgICAgICAnaW5jbHVkZV9wYXRoJywKICAgICAgICAgICAgICAgICRhcmd1bWVudHMtPmluY2x1ZGVQYXRoKCkgLiBQQVRIX1NFUEFSQVRPUiAuIGluaV9nZXQoJ2luY2x1ZGVfcGF0aCcpCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkdGhpcy0+YXJndW1lbnRzID0gKG5ldyBNYXBwZXIpLT5tYXBUb0xlZ2FjeUFycmF5KCRhcmd1bWVudHMpOwoKICAgICAgICAkdGhpcy0+aGFuZGxlQ3VzdG9tT3B0aW9ucygkYXJndW1lbnRzLT51bnJlY29nbml6ZWRPcHRpb25zKCkpOwogICAgICAgICR0aGlzLT5oYW5kbGVDdXN0b21UZXN0U3VpdGUoKTsKCiAgICAgICAgaWYgKCFpc3NldCgkdGhpcy0+YXJndW1lbnRzWyd0ZXN0U3VmZml4ZXMnXSkpIHsKICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1sndGVzdFN1ZmZpeGVzJ10gPSBbJ1Rlc3QucGhwJywgJy5waHB0J107CiAgICAgICAgfQoKICAgICAgICBpZiAoIWlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ3Rlc3QnXSkgJiYgJGFyZ3VtZW50cy0+aGFzQXJndW1lbnQoKSkgewogICAgICAgICAgICAkdGhpcy0+YXJndW1lbnRzWyd0ZXN0J10gPSByZWFscGF0aCgkYXJndW1lbnRzLT5hcmd1bWVudCgpKTsKCiAgICAgICAgICAgIGlmICgkdGhpcy0+YXJndW1lbnRzWyd0ZXN0J10gPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+ZXhpdFdpdGhFcnJvck1lc3NhZ2UoCiAgICAgICAgICAgICAgICAgICAgc3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAgICAgJ0Nhbm5vdCBvcGVuIGZpbGUgIiVzIi4nLAogICAgICAgICAgICAgICAgICAgICAgICAkYXJndW1lbnRzLT5hcmd1bWVudCgpCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYgKCR0aGlzLT5hcmd1bWVudHNbJ2xvYWRlciddICE9PSBudWxsKSB7CiAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ2xvYWRlciddID0gJHRoaXMtPmhhbmRsZUxvYWRlcigkdGhpcy0+YXJndW1lbnRzWydsb2FkZXInXSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbiddKSkgewogICAgICAgICAgICBpZiAoaXNfZGlyKCR0aGlzLT5hcmd1bWVudHNbJ2NvbmZpZ3VyYXRpb24nXSkpIHsKICAgICAgICAgICAgICAgICRjYW5kaWRhdGUgPSAkdGhpcy0+Y29uZmlndXJhdGlvbkZpbGVJbkRpcmVjdG9yeSgkdGhpcy0+YXJndW1lbnRzWydjb25maWd1cmF0aW9uJ10pOwoKICAgICAgICAgICAgICAgIGlmICgkY2FuZGlkYXRlICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbiddID0gJGNhbmRpZGF0ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZWlmICgkdGhpcy0+YXJndW1lbnRzWyd1c2VEZWZhdWx0Q29uZmlndXJhdGlvbiddKSB7CiAgICAgICAgICAgICRjYW5kaWRhdGUgPSAkdGhpcy0+Y29uZmlndXJhdGlvbkZpbGVJbkRpcmVjdG9yeShnZXRjd2QoKSk7CgogICAgICAgICAgICBpZiAoJGNhbmRpZGF0ZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbiddID0gJGNhbmRpZGF0ZTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYgKCRhcmd1bWVudHMtPmhhc01pZ3JhdGVDb25maWd1cmF0aW9uKCkgJiYgJGFyZ3VtZW50cy0+bWlncmF0ZUNvbmZpZ3VyYXRpb24oKSkgewogICAgICAgICAgICBpZiAoIWlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ2NvbmZpZ3VyYXRpb24nXSkpIHsKICAgICAgICAgICAgICAgIHByaW50ICdObyBjb25maWd1cmF0aW9uIGZpbGUgZm91bmQgdG8gbWlncmF0ZS4nIC4gUEhQX0VPTDsKCiAgICAgICAgICAgICAgICBleGl0KFRlc3RSdW5uZXI6OkVYQ0VQVElPTl9FWElUKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHRoaXMtPm1pZ3JhdGVDb25maWd1cmF0aW9uKHJlYWxwYXRoKCR0aGlzLT5hcmd1bWVudHNbJ2NvbmZpZ3VyYXRpb24nXSkpOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ2NvbmZpZ3VyYXRpb24nXSkpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ2NvbmZpZ3VyYXRpb25PYmplY3QnXSA9IChuZXcgTG9hZGVyKS0+bG9hZCgkdGhpcy0+YXJndW1lbnRzWydjb25maWd1cmF0aW9uJ10pOwogICAgICAgICAgICB9IGNhdGNoIChUaHJvd2FibGUgJGUpIHsKICAgICAgICAgICAgICAgIHByaW50ICRlLT5nZXRNZXNzYWdlKCkgLiBQSFBfRU9MOwoKICAgICAgICAgICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6RkFJTFVSRV9FWElUKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHBocHVuaXRDb25maWd1cmF0aW9uID0gJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbk9iamVjdCddLT5waHB1bml0KCk7CgogICAgICAgICAgICAobmV3IFBocEhhbmRsZXIpLT5oYW5kbGUoJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbk9iamVjdCddLT5waHAoKSk7CgogICAgICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1snYm9vdHN0cmFwJ10pKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+aGFuZGxlQm9vdHN0cmFwKCR0aGlzLT5hcmd1bWVudHNbJ2Jvb3RzdHJhcCddKTsKICAgICAgICAgICAgfSBlbHNlaWYgKCRwaHB1bml0Q29uZmlndXJhdGlvbi0+aGFzQm9vdHN0cmFwKCkpIHsKICAgICAgICAgICAgICAgICR0aGlzLT5oYW5kbGVCb290c3RyYXAoJHBocHVuaXRDb25maWd1cmF0aW9uLT5ib290c3RyYXAoKSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1snc3RkZXJyJ10pKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+YXJndW1lbnRzWydzdGRlcnInXSA9ICRwaHB1bml0Q29uZmlndXJhdGlvbi0+c3RkZXJyKCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1snbm9FeHRlbnNpb25zJ10pICYmICRwaHB1bml0Q29uZmlndXJhdGlvbi0+aGFzRXh0ZW5zaW9uc0RpcmVjdG9yeSgpICYmIGV4dGVuc2lvbl9sb2FkZWQoJ3BoYXInKSkgewogICAgICAgICAgICAgICAgJHJlc3VsdCA9IChuZXcgUGhhckxvYWRlciktPmxvYWRQaGFyRXh0ZW5zaW9uc0luRGlyZWN0b3J5KCRwaHB1bml0Q29uZmlndXJhdGlvbi0+ZXh0ZW5zaW9uc0RpcmVjdG9yeSgpKTsKCiAgICAgICAgICAgICAgICAkdGhpcy0+YXJndW1lbnRzWydsb2FkZWRFeHRlbnNpb25zJ10gICAgPSAkcmVzdWx0Wydsb2FkZWRFeHRlbnNpb25zJ107CiAgICAgICAgICAgICAgICAkdGhpcy0+YXJndW1lbnRzWydub3RMb2FkZWRFeHRlbnNpb25zJ10gPSAkcmVzdWx0Wydub3RMb2FkZWRFeHRlbnNpb25zJ107CgogICAgICAgICAgICAgICAgdW5zZXQoJHJlc3VsdCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1snY29sdW1ucyddKSkgewogICAgICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1snY29sdW1ucyddID0gJHBocHVuaXRDb25maWd1cmF0aW9uLT5jb2x1bW5zKCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1sncHJpbnRlciddKSAmJiAkcGhwdW5pdENvbmZpZ3VyYXRpb24tPmhhc1ByaW50ZXJDbGFzcygpKSB7CiAgICAgICAgICAgICAgICAkZmlsZSA9ICRwaHB1bml0Q29uZmlndXJhdGlvbi0+aGFzUHJpbnRlckZpbGUoKSA/ICRwaHB1bml0Q29uZmlndXJhdGlvbi0+cHJpbnRlckZpbGUoKSA6ICcnOwoKICAgICAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ3ByaW50ZXInXSA9ICR0aGlzLT5oYW5kbGVQcmludGVyKAogICAgICAgICAgICAgICAgICAgICRwaHB1bml0Q29uZmlndXJhdGlvbi0+cHJpbnRlckNsYXNzKCksCiAgICAgICAgICAgICAgICAgICAgJGZpbGUKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICgkcGhwdW5pdENvbmZpZ3VyYXRpb24tPmhhc1Rlc3RTdWl0ZUxvYWRlckNsYXNzKCkpIHsKICAgICAgICAgICAgICAgICRmaWxlID0gJHBocHVuaXRDb25maWd1cmF0aW9uLT5oYXNUZXN0U3VpdGVMb2FkZXJGaWxlKCkgPyAkcGhwdW5pdENvbmZpZ3VyYXRpb24tPnRlc3RTdWl0ZUxvYWRlckZpbGUoKSA6ICcnOwoKICAgICAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ2xvYWRlciddID0gJHRoaXMtPmhhbmRsZUxvYWRlcigKICAgICAgICAgICAgICAgICAgICAkcGhwdW5pdENvbmZpZ3VyYXRpb24tPnRlc3RTdWl0ZUxvYWRlckNsYXNzKCksCiAgICAgICAgICAgICAgICAgICAgJGZpbGUKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1sndGVzdHN1aXRlJ10pICYmICRwaHB1bml0Q29uZmlndXJhdGlvbi0+aGFzRGVmYXVsdFRlc3RTdWl0ZSgpKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+YXJndW1lbnRzWyd0ZXN0c3VpdGUnXSA9ICRwaHB1bml0Q29uZmlndXJhdGlvbi0+ZGVmYXVsdFRlc3RTdWl0ZSgpOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoIWlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ3Rlc3QnXSkpIHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmFyZ3VtZW50c1sndGVzdCddID0gKG5ldyBUZXN0U3VpdGVNYXBwZXIpLT5tYXAoCiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ2NvbmZpZ3VyYXRpb25PYmplY3QnXS0+dGVzdFN1aXRlKCksCiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ3Rlc3RzdWl0ZSddID8/ICcnCiAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5wcmludFZlcnNpb25TdHJpbmcoKTsKCiAgICAgICAgICAgICAgICAgICAgcHJpbnQgJGUtPmdldE1lc3NhZ2UoKSAuIFBIUF9FT0w7CgogICAgICAgICAgICAgICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6RVhDRVBUSU9OX0VYSVQpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlaWYgKGlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ2Jvb3RzdHJhcCddKSkgewogICAgICAgICAgICAkdGhpcy0+aGFuZGxlQm9vdHN0cmFwKCR0aGlzLT5hcmd1bWVudHNbJ2Jvb3RzdHJhcCddKTsKICAgICAgICB9CgogICAgICAgIGlmIChpc3NldCgkdGhpcy0+YXJndW1lbnRzWydwcmludGVyJ10pICYmIGlzX3N0cmluZygkdGhpcy0+YXJndW1lbnRzWydwcmludGVyJ10pKSB7CiAgICAgICAgICAgICR0aGlzLT5hcmd1bWVudHNbJ3ByaW50ZXInXSA9ICR0aGlzLT5oYW5kbGVQcmludGVyKCR0aGlzLT5hcmd1bWVudHNbJ3ByaW50ZXInXSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbk9iamVjdCddLCAkdGhpcy0+YXJndW1lbnRzWyd3YXJtQ292ZXJhZ2VDYWNoZSddKSkgewogICAgICAgICAgICAkdGhpcy0+aGFuZGxlV2FybUNvdmVyYWdlQ2FjaGUoJHRoaXMtPmFyZ3VtZW50c1snY29uZmlndXJhdGlvbk9iamVjdCddKTsKICAgICAgICB9CgogICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmFyZ3VtZW50c1sndGVzdCddKSkgewogICAgICAgICAgICAkdGhpcy0+c2hvd0hlbHAoKTsKCiAgICAgICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6RVhDRVBUSU9OX0VYSVQpOwogICAgICAgIH0KICAgIH0KCiAgICAvKioKICAgICAqIEhhbmRsZXMgdGhlIGxvYWRpbmcgb2YgdGhlIFBIUFVuaXRcUnVubmVyXFRlc3RTdWl0ZUxvYWRlciBpbXBsZW1lbnRhdGlvbi4KICAgICAqCiAgICAgKiBAZGVwcmVjYXRlZCBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3NlYmFzdGlhbmJlcmdtYW5uL3BocHVuaXQvaXNzdWVzLzQwMzkKICAgICAqLwogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIGhhbmRsZUxvYWRlcihzdHJpbmcgJGxvYWRlckNsYXNzLCBzdHJpbmcgJGxvYWRlckZpbGUgPSAnJyk6ID9UZXN0U3VpdGVMb2FkZXIKICAgIHsKICAgICAgICAkdGhpcy0+d2FybmluZ3NbXSA9ICdVc2luZyBhIGN1c3RvbSB0ZXN0IHN1aXRlIGxvYWRlciBpcyBkZXByZWNhdGVkJzsKCiAgICAgICAgaWYgKCFjbGFzc19leGlzdHMoJGxvYWRlckNsYXNzLCBmYWxzZSkpIHsKICAgICAgICAgICAgaWYgKCRsb2FkZXJGaWxlID09ICcnKSB7CiAgICAgICAgICAgICAgICAkbG9hZGVyRmlsZSA9IEZpbGVzeXN0ZW06OmNsYXNzTmFtZVRvRmlsZW5hbWUoCiAgICAgICAgICAgICAgICAgICAgJGxvYWRlckNsYXNzCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkbG9hZGVyRmlsZSA9IHN0cmVhbV9yZXNvbHZlX2luY2x1ZGVfcGF0aCgkbG9hZGVyRmlsZSk7CgogICAgICAgICAgICBpZiAoJGxvYWRlckZpbGUpIHsKICAgICAgICAgICAgICAgIC8qKgogICAgICAgICAgICAgICAgICogQG5vaW5zcGVjdGlvbiBQaHBJbmNsdWRlSW5zcGVjdGlvbgogICAgICAgICAgICAgICAgICogQHBzYWxtLXN1cHByZXNzIFVucmVzb2x2YWJsZUluY2x1ZGUKICAgICAgICAgICAgICAgICAqLwogICAgICAgICAgICAgICAgcmVxdWlyZSAkbG9hZGVyRmlsZTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYgKGNsYXNzX2V4aXN0cygkbG9hZGVyQ2xhc3MsIGZhbHNlKSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgJGNsYXNzID0gbmV3IFJlZmxlY3Rpb25DbGFzcygkbG9hZGVyQ2xhc3MpOwogICAgICAgICAgICAgICAgLy8gQGNvZGVDb3ZlcmFnZUlnbm9yZVN0YXJ0CiAgICAgICAgICAgIH0gY2F0Y2ggKFxSZWZsZWN0aW9uRXhjZXB0aW9uICRlKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgUmVmbGVjdGlvbkV4Y2VwdGlvbigKICAgICAgICAgICAgICAgICAgICAkZS0+Z2V0TWVzc2FnZSgpLAogICAgICAgICAgICAgICAgICAgIChpbnQpICRlLT5nZXRDb2RlKCksCiAgICAgICAgICAgICAgICAgICAgJGUKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLy8gQGNvZGVDb3ZlcmFnZUlnbm9yZUVuZAoKICAgICAgICAgICAgaWYgKCRjbGFzcy0+aW1wbGVtZW50c0ludGVyZmFjZShUZXN0U3VpdGVMb2FkZXI6OmNsYXNzKSAmJiAkY2xhc3MtPmlzSW5zdGFudGlhYmxlKCkpIHsKICAgICAgICAgICAgICAgICRvYmplY3QgPSAkY2xhc3MtPm5ld0luc3RhbmNlKCk7CgogICAgICAgICAgICAgICAgYXNzZXJ0KCRvYmplY3QgaW5zdGFuY2VvZiBUZXN0U3VpdGVMb2FkZXIpOwoKICAgICAgICAgICAgICAgIHJldHVybiAkb2JqZWN0OwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoJGxvYWRlckNsYXNzID09IFN0YW5kYXJkVGVzdFN1aXRlTG9hZGVyOjpjbGFzcykgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CgogICAgICAgICR0aGlzLT5leGl0V2l0aEVycm9yTWVzc2FnZSgKICAgICAgICAgICAgc3ByaW50ZigKICAgICAgICAgICAgICAgICdDb3VsZCBub3QgdXNlICIlcyIgYXMgbG9hZGVyLicsCiAgICAgICAgICAgICAgICAkbG9hZGVyQ2xhc3MKICAgICAgICAgICAgKQogICAgICAgICk7CgogICAgICAgIHJldHVybiBudWxsOwogICAgfQoKICAgIC8qKgogICAgICogSGFuZGxlcyB0aGUgbG9hZGluZyBvZiB0aGUgUEhQVW5pdFxVdGlsXFByaW50ZXIgaW1wbGVtZW50YXRpb24uCiAgICAgKgogICAgICogQHJldHVybiBudWxsfFByaW50ZXJ8c3RyaW5nCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBoYW5kbGVQcmludGVyKHN0cmluZyAkcHJpbnRlckNsYXNzLCBzdHJpbmcgJHByaW50ZXJGaWxlID0gJycpCiAgICB7CiAgICAgICAgaWYgKCFjbGFzc19leGlzdHMoJHByaW50ZXJDbGFzcywgZmFsc2UpKSB7CiAgICAgICAgICAgIGlmICgkcHJpbnRlckZpbGUgPT09ICcnKSB7CiAgICAgICAgICAgICAgICAkcHJpbnRlckZpbGUgPSBGaWxlc3lzdGVtOjpjbGFzc05hbWVUb0ZpbGVuYW1lKAogICAgICAgICAgICAgICAgICAgICRwcmludGVyQ2xhc3MKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRwcmludGVyRmlsZSA9IHN0cmVhbV9yZXNvbHZlX2luY2x1ZGVfcGF0aCgkcHJpbnRlckZpbGUpOwoKICAgICAgICAgICAgaWYgKCRwcmludGVyRmlsZSkgewogICAgICAgICAgICAgICAgLyoqCiAgICAgICAgICAgICAgICAgKiBAbm9pbnNwZWN0aW9uIFBocEluY2x1ZGVJbnNwZWN0aW9uCiAgICAgICAgICAgICAgICAgKiBAcHNhbG0tc3VwcHJlc3MgVW5yZXNvbHZhYmxlSW5jbHVkZQogICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICByZXF1aXJlICRwcmludGVyRmlsZTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYgKCFjbGFzc19leGlzdHMoJHByaW50ZXJDbGFzcykpIHsKICAgICAgICAgICAgJHRoaXMtPmV4aXRXaXRoRXJyb3JNZXNzYWdlKAogICAgICAgICAgICAgICAgc3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAnQ291bGQgbm90IHVzZSAiJXMiIGFzIHByaW50ZXI6IGNsYXNzIGRvZXMgbm90IGV4aXN0JywKICAgICAgICAgICAgICAgICAgICAkcHJpbnRlckNsYXNzCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICB0cnkgewogICAgICAgICAgICAkY2xhc3MgPSBuZXcgUmVmbGVjdGlvbkNsYXNzKCRwcmludGVyQ2xhc3MpOwogICAgICAgICAgICAvLyBAY29kZUNvdmVyYWdlSWdub3JlU3RhcnQKICAgICAgICB9IGNhdGNoIChcUmVmbGVjdGlvbkV4Y2VwdGlvbiAkZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgUmVmbGVjdGlvbkV4Y2VwdGlvbigKICAgICAgICAgICAgICAgICRlLT5nZXRNZXNzYWdlKCksCiAgICAgICAgICAgICAgICAoaW50KSAkZS0+Z2V0Q29kZSgpLAogICAgICAgICAgICAgICAgJGUKICAgICAgICAgICAgKTsKICAgICAgICAgICAgLy8gQGNvZGVDb3ZlcmFnZUlnbm9yZUVuZAogICAgICAgIH0KCiAgICAgICAgaWYgKCEkY2xhc3MtPmltcGxlbWVudHNJbnRlcmZhY2UoUmVzdWx0UHJpbnRlcjo6Y2xhc3MpKSB7CiAgICAgICAgICAgICR0aGlzLT5leGl0V2l0aEVycm9yTWVzc2FnZSgKICAgICAgICAgICAgICAgIHNwcmludGYoCiAgICAgICAgICAgICAgICAgICAgJ0NvdWxkIG5vdCB1c2UgIiVzIiBhcyBwcmludGVyOiBjbGFzcyBkb2VzIG5vdCBpbXBsZW1lbnQgJXMnLAogICAgICAgICAgICAgICAgICAgICRwcmludGVyQ2xhc3MsCiAgICAgICAgICAgICAgICAgICAgUmVzdWx0UHJpbnRlcjo6Y2xhc3MKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGlmICghJGNsYXNzLT5pc0luc3RhbnRpYWJsZSgpKSB7CiAgICAgICAgICAgICR0aGlzLT5leGl0V2l0aEVycm9yTWVzc2FnZSgKICAgICAgICAgICAgICAgIHNwcmludGYoCiAgICAgICAgICAgICAgICAgICAgJ0NvdWxkIG5vdCB1c2UgIiVzIiBhcyBwcmludGVyOiBjbGFzcyBjYW5ub3QgYmUgaW5zdGFudGlhdGVkJywKICAgICAgICAgICAgICAgICAgICAkcHJpbnRlckNsYXNzCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICBpZiAoJGNsYXNzLT5pc1N1YmNsYXNzT2YoUmVzdWx0UHJpbnRlcjo6Y2xhc3MpKSB7CiAgICAgICAgICAgIHJldHVybiAkcHJpbnRlckNsYXNzOwogICAgICAgIH0KCiAgICAgICAgJG91dHB1dFN0cmVhbSA9IGlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ3N0ZGVyciddKSA/ICdwaHA6Ly9zdGRlcnInIDogbnVsbDsKCiAgICAgICAgcmV0dXJuICRjbGFzcy0+bmV3SW5zdGFuY2UoJG91dHB1dFN0cmVhbSk7CiAgICB9CgogICAgLyoqCiAgICAgKiBMb2FkcyBhIGJvb3RzdHJhcCBmaWxlLgogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gaGFuZGxlQm9vdHN0cmFwKHN0cmluZyAkZmlsZW5hbWUpOiB2b2lkCiAgICB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgRmlsZUxvYWRlcjo6Y2hlY2tBbmRMb2FkKCRmaWxlbmFtZSk7CiAgICAgICAgfSBjYXRjaCAoVGhyb3dhYmxlICR0KSB7CiAgICAgICAgICAgIGlmICgkdCBpbnN0YW5jZW9mIFxQSFBVbml0XEV4Y2VwdGlvbikgewogICAgICAgICAgICAgICAgJHRoaXMtPmV4aXRXaXRoRXJyb3JNZXNzYWdlKCR0LT5nZXRNZXNzYWdlKCkpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkdGhpcy0+ZXhpdFdpdGhFcnJvck1lc3NhZ2UoCiAgICAgICAgICAgICAgICBzcHJpbnRmKAogICAgICAgICAgICAgICAgICAgICdFcnJvciBpbiBib290c3RyYXAgc2NyaXB0OiAlczolcyVzJXMlcycsCiAgICAgICAgICAgICAgICAgICAgZ2V0X2NsYXNzKCR0KSwKICAgICAgICAgICAgICAgICAgICBQSFBfRU9MLAogICAgICAgICAgICAgICAgICAgICR0LT5nZXRNZXNzYWdlKCksCiAgICAgICAgICAgICAgICAgICAgUEhQX0VPTCwKICAgICAgICAgICAgICAgICAgICAkdC0+Z2V0VHJhY2VBc1N0cmluZygpCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQogICAgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBoYW5kbGVWZXJzaW9uQ2hlY2soKTogdm9pZAogICAgewogICAgICAgICR0aGlzLT5wcmludFZlcnNpb25TdHJpbmcoKTsKCiAgICAgICAgJGxhdGVzdFZlcnNpb24gPSBmaWxlX2dldF9jb250ZW50cygnaHR0cHM6Ly9waGFyLnBocHVuaXQuZGUvbGF0ZXN0LXZlcnNpb24tb2YvcGhwdW5pdCcpOwogICAgICAgICRpc091dGRhdGVkICAgID0gdmVyc2lvbl9jb21wYXJlKCRsYXRlc3RWZXJzaW9uLCBWZXJzaW9uOjppZCgpLCAnPicpOwoKICAgICAgICBpZiAoJGlzT3V0ZGF0ZWQpIHsKICAgICAgICAgICAgcHJpbnRmKAogICAgICAgICAgICAgICAgJ1lvdSBhcmUgbm90IHVzaW5nIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiBQSFBVbml0LicgLiBQSFBfRU9MIC4KICAgICAgICAgICAgICAgICdUaGUgbGF0ZXN0IHZlcnNpb24gaXMgUEhQVW5pdCAlcy4nIC4gUEhQX0VPTCwKICAgICAgICAgICAgICAgICRsYXRlc3RWZXJzaW9uCiAgICAgICAgICAgICk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcHJpbnQgJ1lvdSBhcmUgdXNpbmcgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIFBIUFVuaXQuJyAuIFBIUF9FT0w7CiAgICAgICAgfQoKICAgICAgICBleGl0KFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBTaG93IHRoZSBoZWxwIG1lc3NhZ2UuCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBzaG93SGVscCgpOiB2b2lkCiAgICB7CiAgICAgICAgJHRoaXMtPnByaW50VmVyc2lvblN0cmluZygpOwogICAgICAgIChuZXcgSGVscCktPndyaXRlVG9Db25zb2xlKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBDdXN0b20gY2FsbGJhY2sgZm9yIHRlc3Qgc3VpdGUgZGlzY292ZXJ5LgogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gaGFuZGxlQ3VzdG9tVGVzdFN1aXRlKCk6IHZvaWQKICAgIHsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIHByaW50VmVyc2lvblN0cmluZygpOiB2b2lkCiAgICB7CiAgICAgICAgaWYgKCR0aGlzLT52ZXJzaW9uU3RyaW5nUHJpbnRlZCkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICBwcmludCBWZXJzaW9uOjpnZXRWZXJzaW9uU3RyaW5nKCkgLiBQSFBfRU9MIC4gUEhQX0VPTDsKCiAgICAgICAgJHRoaXMtPnZlcnNpb25TdHJpbmdQcmludGVkID0gdHJ1ZTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGV4aXRXaXRoRXJyb3JNZXNzYWdlKHN0cmluZyAkbWVzc2FnZSk6IHZvaWQKICAgIHsKICAgICAgICAkdGhpcy0+cHJpbnRWZXJzaW9uU3RyaW5nKCk7CgogICAgICAgIHByaW50ICRtZXNzYWdlIC4gUEhQX0VPTDsKCiAgICAgICAgZXhpdChUZXN0UnVubmVyOjpGQUlMVVJFX0VYSVQpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlTGlzdEdyb3VwcyhUZXN0U3VpdGUgJHN1aXRlLCBib29sICRleGl0KTogaW50CiAgICB7CiAgICAgICAgJHRoaXMtPnByaW50VmVyc2lvblN0cmluZygpOwoKICAgICAgICBwcmludCAnQXZhaWxhYmxlIHRlc3QgZ3JvdXAocyk6JyAuIFBIUF9FT0w7CgogICAgICAgICRncm91cHMgPSAkc3VpdGUtPmdldEdyb3VwcygpOwogICAgICAgIHNvcnQoJGdyb3Vwcyk7CgogICAgICAgIGZvcmVhY2ggKCRncm91cHMgYXMgJGdyb3VwKSB7CiAgICAgICAgICAgIGlmIChzdHJwb3MoJGdyb3VwLCAnX19waHB1bml0XycpID09PSAwKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcHJpbnRmKAogICAgICAgICAgICAgICAgJyAtICVzJyAuIFBIUF9FT0wsCiAgICAgICAgICAgICAgICAkZ3JvdXAKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGlmICgkZXhpdCkgewogICAgICAgICAgICBleGl0KFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVCk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gVGVzdFJ1bm5lcjo6U1VDQ0VTU19FWElUOwogICAgfQoKICAgIC8qKgogICAgICogQHRocm93cyBcUEhQVW5pdFxGcmFtZXdvcmtcRXhjZXB0aW9uCiAgICAgKiBAdGhyb3dzIFxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXEV4Y2VwdGlvbgogICAgICovCiAgICBwcml2YXRlIGZ1bmN0aW9uIGhhbmRsZUxpc3RTdWl0ZXMoYm9vbCAkZXhpdCk6IGludAogICAgewogICAgICAgICR0aGlzLT5wcmludFZlcnNpb25TdHJpbmcoKTsKCiAgICAgICAgcHJpbnQgJ0F2YWlsYWJsZSB0ZXN0IHN1aXRlKHMpOicgLiBQSFBfRU9MOwoKICAgICAgICBmb3JlYWNoICgkdGhpcy0+YXJndW1lbnRzWydjb25maWd1cmF0aW9uT2JqZWN0J10tPnRlc3RTdWl0ZSgpIGFzICR0ZXN0U3VpdGUpIHsKICAgICAgICAgICAgcHJpbnRmKAogICAgICAgICAgICAgICAgJyAtICVzJyAuIFBIUF9FT0wsCiAgICAgICAgICAgICAgICAkdGVzdFN1aXRlLT5uYW1lKCkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIGlmICgkZXhpdCkgewogICAgICAgICAgICBleGl0KFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVCk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gVGVzdFJ1bm5lcjo6U1VDQ0VTU19FWElUOwogICAgfQoKICAgIC8qKgogICAgICogQHRocm93cyBcU2ViYXN0aWFuQmVyZ21hbm5cUmVjdXJzaW9uQ29udGV4dFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLwogICAgcHJpdmF0ZSBmdW5jdGlvbiBoYW5kbGVMaXN0VGVzdHMoVGVzdFN1aXRlICRzdWl0ZSwgYm9vbCAkZXhpdCk6IGludAogICAgewogICAgICAgICR0aGlzLT5wcmludFZlcnNpb25TdHJpbmcoKTsKCiAgICAgICAgJHJlbmRlcmVyID0gbmV3IFRleHRUZXN0TGlzdFJlbmRlcmVyOwoKICAgICAgICBwcmludCAkcmVuZGVyZXItPnJlbmRlcigkc3VpdGUpOwoKICAgICAgICBpZiAoJGV4aXQpIHsKICAgICAgICAgICAgZXhpdChUZXN0UnVubmVyOjpTVUNDRVNTX0VYSVQpOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVDsKICAgIH0KCiAgICAvKioKICAgICAqIEB0aHJvd3MgXFNlYmFzdGlhbkJlcmdtYW5uXFJlY3Vyc2lvbkNvbnRleHRcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAgICAgKi8KICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlTGlzdFRlc3RzWG1sKFRlc3RTdWl0ZSAkc3VpdGUsIHN0cmluZyAkdGFyZ2V0LCBib29sICRleGl0KTogaW50CiAgICB7CiAgICAgICAgJHRoaXMtPnByaW50VmVyc2lvblN0cmluZygpOwoKICAgICAgICAkcmVuZGVyZXIgPSBuZXcgWG1sVGVzdExpc3RSZW5kZXJlcjsKCiAgICAgICAgZmlsZV9wdXRfY29udGVudHMoJHRhcmdldCwgJHJlbmRlcmVyLT5yZW5kZXIoJHN1aXRlKSk7CgogICAgICAgIHByaW50ZigKICAgICAgICAgICAgJ1dyb3RlIGxpc3Qgb2YgdGVzdHMgdGhhdCB3b3VsZCBoYXZlIGJlZW4gcnVuIHRvICVzJyAuIFBIUF9FT0wsCiAgICAgICAgICAgICR0YXJnZXQKICAgICAgICApOwoKICAgICAgICBpZiAoJGV4aXQpIHsKICAgICAgICAgICAgZXhpdChUZXN0UnVubmVyOjpTVUNDRVNTX0VYSVQpOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVDsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGdlbmVyYXRlQ29uZmlndXJhdGlvbigpOiB2b2lkCiAgICB7CiAgICAgICAgJHRoaXMtPnByaW50VmVyc2lvblN0cmluZygpOwoKICAgICAgICBwcmludCAnR2VuZXJhdGluZyBwaHB1bml0LnhtbCBpbiAnIC4gZ2V0Y3dkKCkgLiBQSFBfRU9MIC4gUEhQX0VPTDsKICAgICAgICBwcmludCAnQm9vdHN0cmFwIHNjcmlwdCAocmVsYXRpdmUgdG8gcGF0aCBzaG93biBhYm92ZTsgZGVmYXVsdDogdmVuZG9yL2F1dG9sb2FkLnBocCk6ICc7CgogICAgICAgICRib290c3RyYXBTY3JpcHQgPSB0cmltKGZnZXRzKFNURElOKSk7CgogICAgICAgIHByaW50ICdUZXN0cyBkaXJlY3RvcnkgKHJlbGF0aXZlIHRvIHBhdGggc2hvd24gYWJvdmU7IGRlZmF1bHQ6IHRlc3RzKTogJzsKCiAgICAgICAgJHRlc3RzRGlyZWN0b3J5ID0gdHJpbShmZ2V0cyhTVERJTikpOwoKICAgICAgICBwcmludCAnU291cmNlIGRpcmVjdG9yeSAocmVsYXRpdmUgdG8gcGF0aCBzaG93biBhYm92ZTsgZGVmYXVsdDogc3JjKTogJzsKCiAgICAgICAgJHNyYyA9IHRyaW0oZmdldHMoU1RESU4pKTsKCiAgICAgICAgcHJpbnQgJ0NhY2hlIGRpcmVjdG9yeSAocmVsYXRpdmUgdG8gcGF0aCBzaG93biBhYm92ZTsgZGVmYXVsdDogLnBocHVuaXQuY2FjaGUpOiAnOwoKICAgICAgICAkY2FjaGVEaXJlY3RvcnkgPSB0cmltKGZnZXRzKFNURElOKSk7CgogICAgICAgIGlmICgkYm9vdHN0cmFwU2NyaXB0ID09PSAnJykgewogICAgICAgICAgICAkYm9vdHN0cmFwU2NyaXB0ID0gJ3ZlbmRvci9hdXRvbG9hZC5waHAnOwogICAgICAgIH0KCiAgICAgICAgaWYgKCR0ZXN0c0RpcmVjdG9yeSA9PT0gJycpIHsKICAgICAgICAgICAgJHRlc3RzRGlyZWN0b3J5ID0gJ3Rlc3RzJzsKICAgICAgICB9CgogICAgICAgIGlmICgkc3JjID09PSAnJykgewogICAgICAgICAgICAkc3JjID0gJ3NyYyc7CiAgICAgICAgfQoKICAgICAgICBpZiAoJGNhY2hlRGlyZWN0b3J5ID09PSAnJykgewogICAgICAgICAgICAkY2FjaGVEaXJlY3RvcnkgPSAnLnBocHVuaXQuY2FjaGUnOwogICAgICAgIH0KCiAgICAgICAgJGdlbmVyYXRvciA9IG5ldyBHZW5lcmF0b3I7CgogICAgICAgIGZpbGVfcHV0X2NvbnRlbnRzKAogICAgICAgICAgICAncGhwdW5pdC54bWwnLAogICAgICAgICAgICAkZ2VuZXJhdG9yLT5nZW5lcmF0ZURlZmF1bHRDb25maWd1cmF0aW9uKAogICAgICAgICAgICAgICAgVmVyc2lvbjo6c2VyaWVzKCksCiAgICAgICAgICAgICAgICAkYm9vdHN0cmFwU2NyaXB0LAogICAgICAgICAgICAgICAgJHRlc3RzRGlyZWN0b3J5LAogICAgICAgICAgICAgICAgJHNyYywKICAgICAgICAgICAgICAgICRjYWNoZURpcmVjdG9yeQogICAgICAgICAgICApCiAgICAgICAgKTsKCiAgICAgICAgcHJpbnQgUEhQX0VPTCAuICdHZW5lcmF0ZWQgcGhwdW5pdC54bWwgaW4gJyAuIGdldGN3ZCgpIC4gJy4nIC4gUEhQX0VPTDsKICAgICAgICBwcmludCAnTWFrZSBzdXJlIHRvIGV4Y2x1ZGUgdGhlICcgLiAkY2FjaGVEaXJlY3RvcnkgLiAnIGRpcmVjdG9yeSBmcm9tIHZlcnNpb24gY29udHJvbC4nIC4gUEhQX0VPTDsKCiAgICAgICAgZXhpdChUZXN0UnVubmVyOjpTVUNDRVNTX0VYSVQpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gbWlncmF0ZUNvbmZpZ3VyYXRpb24oc3RyaW5nICRmaWxlbmFtZSk6IHZvaWQKICAgIHsKICAgICAgICAkdGhpcy0+cHJpbnRWZXJzaW9uU3RyaW5nKCk7CgogICAgICAgIGlmICghKG5ldyBTY2hlbWFEZXRlY3RvciktPmRldGVjdCgkZmlsZW5hbWUpLT5kZXRlY3RlZCgpKSB7CiAgICAgICAgICAgIHByaW50ICRmaWxlbmFtZSAuICcgZG9lcyBub3QgbmVlZCB0byBiZSBtaWdyYXRlZC4nIC4gUEhQX0VPTDsKCiAgICAgICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6RVhDRVBUSU9OX0VYSVQpOwogICAgICAgIH0KCiAgICAgICAgY29weSgkZmlsZW5hbWUsICRmaWxlbmFtZSAuICcuYmFrJyk7CgogICAgICAgIHByaW50ICdDcmVhdGVkIGJhY2t1cDogICAgICAgICAnIC4gJGZpbGVuYW1lIC4gJy5iYWsnIC4gUEhQX0VPTDsKCiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZmlsZV9wdXRfY29udGVudHMoCiAgICAgICAgICAgICAgICAkZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAobmV3IE1pZ3JhdG9yKS0+bWlncmF0ZSgkZmlsZW5hbWUpCiAgICAgICAgICAgICk7CgogICAgICAgICAgICBwcmludCAnTWlncmF0ZWQgY29uZmlndXJhdGlvbjogJyAuICRmaWxlbmFtZSAuIFBIUF9FT0w7CiAgICAgICAgfSBjYXRjaCAoVGhyb3dhYmxlICR0KSB7CiAgICAgICAgICAgIHByaW50ICdNaWdyYXRpb24gZmFpbGVkOiAnIC4gJHQtPmdldE1lc3NhZ2UoKSAuIFBIUF9FT0w7CgogICAgICAgICAgICBleGl0KFRlc3RSdW5uZXI6OkVYQ0VQVElPTl9FWElUKTsKICAgICAgICB9CgogICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6U1VDQ0VTU19FWElUKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGhhbmRsZUN1c3RvbU9wdGlvbnMoYXJyYXkgJHVucmVjb2duaXplZE9wdGlvbnMpOiB2b2lkCiAgICB7CiAgICAgICAgZm9yZWFjaCAoJHVucmVjb2duaXplZE9wdGlvbnMgYXMgJG5hbWUgPT4gJHZhbHVlKSB7CiAgICAgICAgICAgIGlmIChpc3NldCgkdGhpcy0+bG9uZ09wdGlvbnNbJG5hbWVdKSkgewogICAgICAgICAgICAgICAgJGhhbmRsZXIgPSAkdGhpcy0+bG9uZ09wdGlvbnNbJG5hbWVdOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkbmFtZSAuPSAnPSc7CgogICAgICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPmxvbmdPcHRpb25zWyRuYW1lXSkpIHsKICAgICAgICAgICAgICAgICRoYW5kbGVyID0gJHRoaXMtPmxvbmdPcHRpb25zWyRuYW1lXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGlzc2V0KCRoYW5kbGVyKSAmJiBpc19jYWxsYWJsZShbJHRoaXMsICRoYW5kbGVyXSkpIHsKICAgICAgICAgICAgICAgICR0aGlzLT57JGhhbmRsZXJ9KCR2YWx1ZSk7CgogICAgICAgICAgICAgICAgdW5zZXQoJGhhbmRsZXIpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlV2FybUNvdmVyYWdlQ2FjaGUoWG1sQ29uZmlndXJhdGlvblxDb25maWd1cmF0aW9uICRjb25maWd1cmF0aW9uKTogdm9pZAogICAgewogICAgICAgICR0aGlzLT5wcmludFZlcnNpb25TdHJpbmcoKTsKCiAgICAgICAgaWYgKGlzc2V0KCR0aGlzLT5hcmd1bWVudHNbJ2NvdmVyYWdlQ2FjaGVEaXJlY3RvcnknXSkpIHsKICAgICAgICAgICAgJGNhY2hlRGlyZWN0b3J5ID0gJHRoaXMtPmFyZ3VtZW50c1snY292ZXJhZ2VDYWNoZURpcmVjdG9yeSddOwogICAgICAgIH0gZWxzZWlmICgkY29uZmlndXJhdGlvbi0+Y29kZUNvdmVyYWdlKCktPmhhc0NhY2hlRGlyZWN0b3J5KCkpIHsKICAgICAgICAgICAgJGNhY2hlRGlyZWN0b3J5ID0gJGNvbmZpZ3VyYXRpb24tPmNvZGVDb3ZlcmFnZSgpLT5jYWNoZURpcmVjdG9yeSgpLT5wYXRoKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcHJpbnQgJ0NhY2hlIGZvciBzdGF0aWMgYW5hbHlzaXMgaGFzIG5vdCBiZWVuIGNvbmZpZ3VyZWQnIC4gUEhQX0VPTDsKCiAgICAgICAgICAgIGV4aXQoVGVzdFJ1bm5lcjo6RVhDRVBUSU9OX0VYSVQpOwogICAgICAgIH0KCiAgICAgICAgJGZpbHRlciA9IG5ldyBGaWx0ZXI7CgogICAgICAgIGlmICgkY29uZmlndXJhdGlvbi0+Y29kZUNvdmVyYWdlKCktPmhhc05vbkVtcHR5TGlzdE9mRmlsZXNUb0JlSW5jbHVkZWRJbkNvZGVDb3ZlcmFnZVJlcG9ydCgpKSB7CiAgICAgICAgICAgIChuZXcgRmlsdGVyTWFwcGVyKS0+bWFwKAogICAgICAgICAgICAgICAgJGZpbHRlciwKICAgICAgICAgICAgICAgICRjb25maWd1cmF0aW9uLT5jb2RlQ292ZXJhZ2UoKQogICAgICAgICAgICApOwogICAgICAgIH0gZWxzZWlmIChpc3NldCgkdGhpcy0+YXJndW1lbnRzWydjb3ZlcmFnZUZpbHRlciddKSkgewogICAgICAgICAgICBpZiAoIWlzX2FycmF5KCR0aGlzLT5hcmd1bWVudHNbJ2NvdmVyYWdlRmlsdGVyJ10pKSB7CiAgICAgICAgICAgICAgICAkY292ZXJhZ2VGaWx0ZXJEaXJlY3RvcmllcyA9IFskdGhpcy0+YXJndW1lbnRzWydjb3ZlcmFnZUZpbHRlciddXTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICRjb3ZlcmFnZUZpbHRlckRpcmVjdG9yaWVzID0gJHRoaXMtPmFyZ3VtZW50c1snY292ZXJhZ2VGaWx0ZXInXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZm9yZWFjaCAoJGNvdmVyYWdlRmlsdGVyRGlyZWN0b3JpZXMgYXMgJGNvdmVyYWdlRmlsdGVyRGlyZWN0b3J5KSB7CiAgICAgICAgICAgICAgICAkZmlsdGVyLT5pbmNsdWRlRGlyZWN0b3J5KCRjb3ZlcmFnZUZpbHRlckRpcmVjdG9yeSk7CiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwcmludCAnRmlsdGVyIGZvciBjb2RlIGNvdmVyYWdlIGhhcyBub3QgYmVlbiBjb25maWd1cmVkJyAuIFBIUF9FT0w7CgogICAgICAgICAgICBleGl0KFRlc3RSdW5uZXI6OkVYQ0VQVElPTl9FWElUKTsKICAgICAgICB9CgogICAgICAgICR0aW1lciA9IG5ldyBUaW1lcjsKICAgICAgICAkdGltZXItPnN0YXJ0KCk7CgogICAgICAgIHByaW50ICdXYXJtaW5nIGNhY2hlIGZvciBzdGF0aWMgYW5hbHlzaXMgLi4uICc7CgogICAgICAgIChuZXcgQ2FjaGVXYXJtZXIpLT53YXJtQ2FjaGUoCiAgICAgICAgICAgICRjYWNoZURpcmVjdG9yeSwKICAgICAgICAgICAgISRjb25maWd1cmF0aW9uLT5jb2RlQ292ZXJhZ2UoKS0+ZGlzYWJsZUNvZGVDb3ZlcmFnZUlnbm9yZSgpLAogICAgICAgICAgICAkY29uZmlndXJhdGlvbi0+Y29kZUNvdmVyYWdlKCktPmlnbm9yZURlcHJlY2F0ZWRDb2RlVW5pdHMoKSwKICAgICAgICAgICAgJGZpbHRlcgogICAgICAgICk7CgogICAgICAgIHByaW50ICdkb25lIFsnIC4gJHRpbWVyLT5zdG9wKCktPmFzU3RyaW5nKCkgLiAnXScgLiBQSFBfRU9MOwoKICAgICAgICBleGl0KFRlc3RSdW5uZXI6OlNVQ0NFU1NfRVhJVCk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBjb25maWd1cmF0aW9uRmlsZUluRGlyZWN0b3J5KHN0cmluZyAkZGlyZWN0b3J5KTogP3N0cmluZwogICAgewogICAgICAgICRjYW5kaWRhdGVzID0gWwogICAgICAgICAgICAkZGlyZWN0b3J5IC4gJy9waHB1bml0LnhtbCcsCiAgICAgICAgICAgICRkaXJlY3RvcnkgLiAnL3BocHVuaXQueG1sLmRpc3QnLAogICAgICAgIF07CgogICAgICAgIGZvcmVhY2ggKCRjYW5kaWRhdGVzIGFzICRjYW5kaWRhdGUpIHsKICAgICAgICAgICAgaWYgKGlzX2ZpbGUoJGNhbmRpZGF0ZSkpIHsKICAgICAgICAgICAgICAgIHJldHVybiByZWFscGF0aCgkY2FuZGlkYXRlKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0KIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MTp7czoxNToiXFBIUFVuaXRcVGV4dFVJIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTU6IlxQSFBVbml0XFRleHRVSSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6IlRleHRVSSI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YToxOntzOjIzOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZCI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjEzOntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJDb21tYW5kIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czoxODoibm8tbmFtZWQtYXJndW1lbnRzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo4MToiUGFyYW1ldGVyIG5hbWVzIGFyZSBub3QgY292ZXJlZCBieSB0aGUgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBwcm9taXNlIGZvciBQSFBVbml0IjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MTQ6IlBIUFVuaXRcVGV4dFVJIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YToyNTp7czo5OiJUZXN0U3VpdGUiO3M6Mjc6IlBIUFVuaXRcRnJhbWV3b3JrXFRlc3RTdWl0ZSI7czoxMDoiUGhhckxvYWRlciI7czozNToiUEhQVW5pdFxSdW5uZXJcRXh0ZW5zaW9uXFBoYXJMb2FkZXIiO3M6MjM6IlN0YW5kYXJkVGVzdFN1aXRlTG9hZGVyIjtzOjM4OiJQSFBVbml0XFJ1bm5lclxTdGFuZGFyZFRlc3RTdWl0ZUxvYWRlciI7czoxNToiVGVzdFN1aXRlTG9hZGVyIjtzOjMwOiJQSFBVbml0XFJ1bm5lclxUZXN0U3VpdGVMb2FkZXIiO3M6NzoiVmVyc2lvbiI7czoyMjoiUEhQVW5pdFxSdW5uZXJcVmVyc2lvbiI7czo3OiJCdWlsZGVyIjtzOjM1OiJQSFBVbml0XFRleHRVSVxDbGlBcmd1bWVudHNcQnVpbGRlciI7czoxMzoiQ29uZmlndXJhdGlvbiI7czo0MToiUEhQVW5pdFxUZXh0VUlcQ2xpQXJndW1lbnRzXENvbmZpZ3VyYXRpb24iO3M6MTg6IkFyZ3VtZW50c0V4Y2VwdGlvbiI7czozNzoiUEhQVW5pdFxUZXh0VUlcQ2xpQXJndW1lbnRzXEV4Y2VwdGlvbiI7czo2OiJNYXBwZXIiO3M6MzQ6IlBIUFVuaXRcVGV4dFVJXENsaUFyZ3VtZW50c1xNYXBwZXIiO3M6MTI6IkZpbHRlck1hcHBlciI7czo1NzoiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcRmlsdGVyTWFwcGVyIjtzOjk6IkdlbmVyYXRvciI7czo0MToiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxHZW5lcmF0b3IiO3M6NjoiTG9hZGVyIjtzOjM4OiJQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlciI7czo4OiJNaWdyYXRvciI7czo0MDoiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxNaWdyYXRvciI7czoxMDoiUGhwSGFuZGxlciI7czo0MjoiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxQaHBIYW5kbGVyIjtzOjEwOiJGaWxlTG9hZGVyIjtzOjIzOiJQSFBVbml0XFV0aWxcRmlsZUxvYWRlciI7czoxMDoiRmlsZXN5c3RlbSI7czoyMzoiUEhQVW5pdFxVdGlsXEZpbGVzeXN0ZW0iO3M6NzoiUHJpbnRlciI7czoyMDoiUEhQVW5pdFxVdGlsXFByaW50ZXIiO3M6MjA6IlRleHRUZXN0TGlzdFJlbmRlcmVyIjtzOjMzOiJQSFBVbml0XFV0aWxcVGV4dFRlc3RMaXN0UmVuZGVyZXIiO3M6MTQ6IlNjaGVtYURldGVjdG9yIjtzOjMxOiJQSFBVbml0XFV0aWxcWG1sXFNjaGVtYURldGVjdG9yIjtzOjE5OiJYbWxUZXN0TGlzdFJlbmRlcmVyIjtzOjMyOiJQSFBVbml0XFV0aWxcWG1sVGVzdExpc3RSZW5kZXJlciI7czoxNToiUmVmbGVjdGlvbkNsYXNzIjtzOjE1OiJSZWZsZWN0aW9uQ2xhc3MiO3M6NjoiRmlsdGVyIjtzOjM3OiJTZWJhc3RpYW5CZXJnbWFublxDb2RlQ292ZXJhZ2VcRmlsdGVyIjtzOjExOiJDYWNoZVdhcm1lciI7czo1NzoiU2ViYXN0aWFuQmVyZ21hbm5cQ29kZUNvdmVyYWdlXFN0YXRpY0FuYWx5c2lzXENhY2hlV2FybWVyIjtzOjU6IlRpbWVyIjtzOjI5OiJTZWJhc3RpYW5CZXJnbWFublxUaW1lclxUaW1lciI7czo5OiJUaHJvd2FibGUiO3M6OToiVGhyb3dhYmxlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHBhcmVudCI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHByb3BlcnRpZXMiO2E6NDp7czozNToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OiRhcmd1bWVudHMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM1OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6JGFyZ3VtZW50cyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6ImFyZ3VtZW50cyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO3M6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtzOjI6IltdIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjczO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mzc6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjokbG9uZ09wdGlvbnMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6JGxvbmdPcHRpb25zIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6ImxvbmdPcHRpb25zIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMwO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO3M6MjoiW10iO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjk6InByb3RlY3RlZCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0NjoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OiR2ZXJzaW9uU3RyaW5nUHJpbnRlZCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjokdmVyc2lvblN0cmluZ1ByaW50ZWQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMDoidmVyc2lvblN0cmluZ1ByaW50ZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MDoiIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjtzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtzOjU6ImZhbHNlIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjM0OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6JHdhcm5pbmdzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozNDoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OiR3YXJuaW5ncyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6Indhcm5pbmdzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjk6InBzYWxtLXZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTI6Imxpc3Q8c3RyaW5nPiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7czoyOiJbXSI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRob2RzIjthOjIxOntzOjMxOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6bWFpbigpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MDoiIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xUaHJvd3MiOjM6e3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI1OiJcUEhQVW5pdFxUZXh0VUlcRXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiRXhjZXB0aW9uIjt9fXM6NzoiACoAbmFtZSI7czo2OiJ0aHJvd3MiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6Om1haW4oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6Im1haW4iO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiZXhpdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjQ6InRydWUiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjMwOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6cnVuKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFRocm93cyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjU6IlxQSFBVbml0XFRleHRVSVxFeGNlcHRpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJFeGNlcHRpb24iO319czo3OiIAKgBuYW1lIjtzOjY6InRocm93cyI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMwOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6cnVuKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czozOiJydW4iO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiYXJndiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiZXhpdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjQ6InRydWUiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czozOToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmNyZWF0ZVJ1bm5lcigpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDQ6IkNyZWF0ZSBhIFRlc3RSdW5uZXIsIG92ZXJyaWRlIGluIHN1YmNsYXNzZXMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmNyZWF0ZVJ1bm5lcigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6ImNyZWF0ZVJ1bm5lciI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyNjoiXFBIUFVuaXRcVGV4dFVJXFRlc3RSdW5uZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoiVGVzdFJ1bm5lciI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlQXJndW1lbnRzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNToiSGFuZGxlcyB0aGUgY29tbWFuZC1saW5lIGFyZ3VtZW50cy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTExNDoiQSBjaGlsZCBjbGFzcyBvZiBQSFBVbml0XFRleHRVSVxDb21tYW5kIGNhbiBob29rIGludG8gdGhlIGFyZ3VtZW50CnBhcnNpbmcgYnkgYWRkaW5nIHRoZSBzd2l0Y2goZXMpIHRvIHRoZSAkbG9uZ09wdGlvbnMgYXJyYXkgYW5kIHBvaW50IHRvIGEKY2FsbGJhY2sgbWV0aG9kIHRoYXQgaGFuZGxlcyB0aGUgc3dpdGNoKGVzKSBpbiB0aGUgY2hpbGQgY2xhc3MgbGlrZSB0aGlzCgo8Y29kZT4KPD9waHAKY2xhc3MgTXlDb21tYW5kIGV4dGVuZHMgUEhQVW5pdFxUZXh0VUlcQ29tbWFuZAp7CiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKQogICAgewogICAgICAgIC8vIG15LXN3aXRjaCB3b24ndCBhY2NlcHQgYSB2YWx1ZSwgaXQncyBhbiBvbi9vZmYKICAgICAgICAkdGhpcy0+bG9uZ09wdGlvbnNbJ215LXN3aXRjaCddID0gJ215SGFuZGxlcic7CiAgICAgICAgLy8gbXktc2Vjb25kc3dpdGNoIHdpbGwgYWNjZXB0IGEgdmFsdWUgLSBub3RlIHRoZSBlcXVhbHMgc2lnbgogICAgICAgICR0aGlzLT5sb25nT3B0aW9uc1snbXktc2Vjb25kc3dpdGNoPSddID0gJ215T3RoZXJIYW5kbGVyJzsKICAgIH0KCiAgICAvLyAtLW15LXN3aXRjaCAgLT4gbXlIYW5kbGVyKCkKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBteUhhbmRsZXIoKQogICAgewogICAgfQoKICAgIC8vIC0tbXktc2Vjb25kc3dpdGNoIGZvbyAtPiBteU90aGVySGFuZGxlcignZm9vJykKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBteU90aGVySGFuZGxlciAoJHZhbHVlKQogICAgewogICAgfQoKICAgIC8vIFlvdSB3aWxsIGFsc28gbmVlZCB0aGlzIC0gdGhlIHN0YXRpYyBrZXl3b3JkIGluIHRoZQogICAgLy8gUEhQVW5pdFxUZXh0VUlcQ29tbWFuZCB3aWxsIG1lYW4gdGhhdCBpdCdsbCBiZQogICAgLy8gUEhQVW5pdFxUZXh0VUlcQ29tbWFuZCB0aGF0IGdldHMgaW5zdGFudGlhdGVkLAogICAgLy8gbm90IE15Q29tbWFuZAogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBtYWluKCRleGl0ID0gdHJ1ZSkKICAgIHsKICAgICAgICAkY29tbWFuZCA9IG5ldyBzdGF0aWM7CgogICAgICAgIHJldHVybiAkY29tbWFuZC0+cnVuKCRfU0VSVkVSWydhcmd2J10sICRleGl0KTsKICAgIH0KCn0KPC9jb2RlPiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xUaHJvd3MiOjM6e3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI1OiJcUEhQVW5pdFxUZXh0VUlcRXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiRXhjZXB0aW9uIjt9fXM6NzoiACoAbmFtZSI7czo2OiJ0aHJvd3MiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUFyZ3VtZW50cygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6ImhhbmRsZUFyZ3VtZW50cyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJhcmd2IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mzk6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpoYW5kbGVMb2FkZXIoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjczOiJIYW5kbGVzIHRoZSBsb2FkaW5nIG9mIHRoZSBQSFBVbml0XFJ1bm5lclxUZXN0U3VpdGVMb2FkZXIgaW1wbGVtZW50YXRpb24uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xEZXByZWNhdGVkIjozOntzOjc6IgAqAG5hbWUiO3M6MTA6ImRlcHJlY2F0ZWQiO3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xEZXByZWNhdGVkAHZlcnNpb24iO047czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjA6InNlZSBodHRwczovL2dpdGh1Yi5jb20vc2ViYXN0aWFuYmVyZ21hbm4vcGhwdW5pdC9pc3N1ZXMvNDAzOSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUxvYWRlcigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6ImhhbmRsZUxvYWRlciI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToibG9hZGVyQ2xhc3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTA6ImxvYWRlckZpbGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ4MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlIjoxOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlAHJlYWxUeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzE6IlxQSFBVbml0XFJ1bm5lclxUZXN0U3VpdGVMb2FkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiVGVzdFN1aXRlTG9hZGVyIjt9fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQwOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlUHJpbnRlcigpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NjM6IkhhbmRsZXMgdGhlIGxvYWRpbmcgb2YgdGhlIFBIUFVuaXRcVXRpbFxQcmludGVyIGltcGxlbWVudGF0aW9uLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mzp7aTowO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjE6IlxQSFBVbml0XFV0aWxcUHJpbnRlciI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6IlByaW50ZXIiO319aToyO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fXM6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MDoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZVByaW50ZXIoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEzOiJoYW5kbGVQcmludGVyIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJwcmludGVyQ2xhc3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6InByaW50ZXJGaWxlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0ODc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1NTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlQm9vdHN0cmFwKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyMzoiTG9hZHMgYSBib290c3RyYXAgZmlsZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlQm9vdHN0cmFwKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiaGFuZGxlQm9vdHN0cmFwIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImZpbGVuYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU1OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU3OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZVZlcnNpb25DaGVjaygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZVZlcnNpb25DaGVjaygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTg6ImhhbmRsZVZlcnNpb25DaGVjayI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1ODE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1OTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6MzU6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpzaG93SGVscCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjI6IlNob3cgdGhlIGhlbHAgbWVzc2FnZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM1OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6c2hvd0hlbHAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6InNob3dIZWxwIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYwNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYwODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0ODoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUN1c3RvbVRlc3RTdWl0ZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDE6IkN1c3RvbSBjYWxsYmFjayBmb3IgdGVzdCBzdWl0ZSBkaXNjb3ZlcnkuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0ODoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUN1c3RvbVRlc3RTdWl0ZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjE6ImhhbmRsZUN1c3RvbVRlc3RTdWl0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2MTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2MTU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpwcmludFZlcnNpb25TdHJpbmcoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDU6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpwcmludFZlcnNpb25TdHJpbmcoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJwcmludFZlcnNpb25TdHJpbmciO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYxNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYyNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NzoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmV4aXRXaXRoRXJyb3JNZXNzYWdlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6ZXhpdFdpdGhFcnJvck1lc3NhZ2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIwOiJleGl0V2l0aEVycm9yTWVzc2FnZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NzoibWVzc2FnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2Mjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2MzU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpoYW5kbGVMaXN0R3JvdXBzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQzOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlTGlzdEdyb3VwcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTY6ImhhbmRsZUxpc3RHcm91cHMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InN1aXRlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjg6IlxQSFBVbml0XEZyYW1ld29ya1xUZXN0U3VpdGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJUZXN0U3VpdGUiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiZXhpdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2Mzc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2NjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MzoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUxpc3RTdWl0ZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXFBIUFVuaXRcRnJhbWV3b3JrXEV4Y2VwdGlvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IkV4Y2VwdGlvbiI7fX1zOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjE7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cRXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiRXhjZXB0aW9uIjt9fXM6NzoiACoAbmFtZSI7czo2OiJ0aHJvd3MiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MzoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUxpc3RTdWl0ZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJoYW5kbGVMaXN0U3VpdGVzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJleGl0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjY2ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjY4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlTGlzdFRlc3RzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFRocm93cyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjA6IlxTZWJhc3RpYW5CZXJnbWFublxSZWN1cnNpb25Db250ZXh0XEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI0OiJJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24iO319czo3OiIAKgBuYW1lIjtzOjY6InRocm93cyI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlTGlzdFRlc3RzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiaGFuZGxlTGlzdFRlc3RzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJzdWl0ZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcUEhQVW5pdFxGcmFtZXdvcmtcVGVzdFN1aXRlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiVGVzdFN1aXRlIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImV4aXQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjkxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzA0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpoYW5kbGVMaXN0VGVzdHNYbWwoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2MDoiXFNlYmFzdGlhbkJlcmdtYW5uXFJlY3Vyc2lvbkNvbnRleHRcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6IkludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiI7fX1zOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMwO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDU6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpoYW5kbGVMaXN0VGVzdHNYbWwoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJoYW5kbGVMaXN0VGVzdHNYbWwiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InN1aXRlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjg6IlxQSFBVbml0XEZyYW1ld29ya1xUZXN0U3VpdGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJUZXN0U3VpdGUiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NjoidGFyZ2V0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImV4aXQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzA5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzI3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDg6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpnZW5lcmF0ZUNvbmZpZ3VyYXRpb24oKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDg6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpnZW5lcmF0ZUNvbmZpZ3VyYXRpb24oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIxOiJnZW5lcmF0ZUNvbmZpZ3VyYXRpb24iO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjcyOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc4MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NzoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6Om1pZ3JhdGVDb25maWd1cmF0aW9uKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6bWlncmF0ZUNvbmZpZ3VyYXRpb24oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIwOiJtaWdyYXRlQ29uZmlndXJhdGlvbiI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzg1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODEzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ2OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlQ3VzdG9tT3B0aW9ucygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NjoiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmhhbmRsZUN1c3RvbU9wdGlvbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJoYW5kbGVDdXN0b21PcHRpb25zIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxOToidW5yZWNvZ25pemVkT3B0aW9ucyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODE1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUwOiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6aGFuZGxlV2FybUNvdmVyYWdlQ2FjaGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxQSFBVbml0XFRleHRVSVxDb21tYW5kOjpoYW5kbGVXYXJtQ292ZXJhZ2VDYWNoZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjM6ImhhbmRsZVdhcm1Db3ZlcmFnZUNhY2hlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoiY29uZmlndXJhdGlvbiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb25maWd1cmF0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6IkNvbmZpZ3VyYXRpb24iO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODM2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODg4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU1OiJcUEhQVW5pdFxUZXh0VUlcQ29tbWFuZDo6Y29uZmlndXJhdGlvbkZpbGVJbkRpcmVjdG9yeSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NToiXFBIUFVuaXRcVGV4dFVJXENvbW1hbmQ6OmNvbmZpZ3VyYXRpb25GaWxlSW5EaXJlY3RvcnkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI4OiJjb25maWd1cmF0aW9uRmlsZUluRGlyZWN0b3J5Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJkaXJlY3RvcnkiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODkwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTA0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTnVsbGFibGUiOjE6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTnVsbGFibGUAcmVhbFR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjkwNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0YWRhdGEiO2E6MDp7fX19czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";