REDROOM
PHP 8.2.30
Path:
Logout
Edit File
Size: 107.28 KB
Close
//opt/hc_python/lib/python3.12/site-packages/alembic/operations/__pycache__/ops.cpython-312.pyc
Text
Base64
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ZVarAwAAAAAAAFpZAgBHAGSKhABki2VAqwMAAAAAAABaWnkDKYzpAAAAACkB2gthbm5vdGF0aW9ucykB2g5hYnN0cmFjdG1ldGhvZE4pAdoDQW55KQHaCENhbGxhYmxlKQHaBGNhc3QpAdoERGljdCkB2glGcm96ZW5TZXQpAdoISXRlcmF0b3IpAdoETGlzdCkB2g5NdXRhYmxlTWFwcGluZykB2ghPcHRpb25hbCkB2ghTZXF1ZW5jZSkB2gNTZXQpAdoFVHVwbGUpAdoEVHlwZSkB2g1UWVBFX0NIRUNLSU5HKQHaB1R5cGVWYXIpAdoFVW5pb24pAdoITlVMTFRZUEXpAQAAACkB2glzY2hlbWFvYmopAdoPQmF0Y2hPcGVyYXRpb25zKQHaCk9wZXJhdGlvbnPpAgAAACkB2gR1dGlsKQHaC3NxbGFfY29tcGF0KQHaB0xpdGVyYWwpAdoKRXhlY3V0YWJsZSkB2g1Db2x1bW5FbGVtZW50KQHaBGNvbnYpAdoLcXVvdGVkX25hbWUpAdoKVGV4dENsYXVzZSkB2g9DaGVja0NvbnN0cmFpbnQpAdoGQ29sdW1uKQHaCENvbXB1dGVkKQHaCkNvbnN0cmFpbnQpAdoURm9yZWlnbktleUNvbnN0cmFpbnQpAdoISWRlbnRpdHkpAdoFSW5kZXgpAdoITWV0YURhdGEpAdoUUHJpbWFyeUtleUNvbnN0cmFpbnQpAdoKU2NoZW1hSXRlbSkB2gVUYWJsZSkB2hBVbmlxdWVDb25zdHJhaW50KQHaC1RhYmxlQ2xhdXNlKQHaClR5cGVFbmdpbmUpAdoIUmV3cml0ZXIpAdoQTWlncmF0aW9uQ29udGV4dCkB2gpfUmV2SWRUeXBl2gJfVCkB2gVib3VuZNoDX0FD2g9BZGRDb25zdHJhaW50T3BjAAAAAAAAAAAAAAAAAwAAAAAAAAHzYAAAAJcAZQBaAWQAWgJVAGQBWgNlBGoKAAAAAAAAAAAAAAAAAAAAAAAAZAhkAoQEqwAAAAAAAABaBgIAZQerAAAAAAAAAFoIZANlCWQEPAAAAGQJZAWEBFoKZApkBoQEWgt5BykL2hBNaWdyYXRlT3BlcmF0aW9uevhiYXNlIGNsYXNzIGZvciBtaWdyYXRpb24gY29tbWFuZCBhbmQgb3JnYW5pemF0aW9uIG9iamVjdHMuCgogICAgVGhpcyBzeXN0ZW0gaXMgcGFydCBvZiB0aGUgb3BlcmF0aW9uIGV4dGVuc2liaWxpdHkgQVBJLgoKICAgIC4uIHNlZWFsc286OgoKICAgICAgICA6cmVmOmBvcGVyYXRpb25fb2JqZWN0c2AKCiAgICAgICAgOnJlZjpgb3BlcmF0aW9uX3BsdWdpbnNgCgogICAgICAgIDpyZWY6YGN1c3RvbWl6aW5nX3JldmlzaW9uYAoKICAgIGMBAAAAAAAAAAAAAAABAAAAAwAAAfMGAAAAlwBpAFMAKQF6gUEgZGljdGlvbmFyeSB0aGF0IG1heSBiZSB1c2VkIHRvIHN0b3JlIGFyYml0cmFyeSBpbmZvcm1hdGlvbgogICAgICAgIGFsb25nIHdpdGggdGhpcyA6Y2xhc3M6YC5NaWdyYXRlT3BlcmF0aW9uYCBvYmplY3QuCgogICAgICAgIKkAqQHaBHNlbGZzAQAAACD6RS9vcHQvaGNfcHl0aG9uL2xpYi9weXRob24zLjEyL3NpdGUtcGFja2FnZXMvYWxlbWJpYy9vcGVyYXRpb25zL29wcy5wedoEaW5mb3oVTWlncmF0ZU9wZXJhdGlvbi5pbmZvTAAAAHMJAAAAgADwDAAQEogJ8wAAAAB6E0Zyb3plblNldFtSZXdyaXRlcl3aCl9tdXRhdGlvbnNjAQAAAAAAAAAAAAAAAQAAAAMAAAHzDgAAAJcAdAAAAAAAAAAAAIIBqQFOqQHaE05vdEltcGxlbWVudGVkRXJyb3JyPAAAAHMBAAAAIHI+AAAA2gdyZXZlcnNlehhNaWdyYXRlT3BlcmF0aW9uLnJldmVyc2VWAAAA8wgAAACAANwOIdAIIXJAAAAAYwEAAAAAAAAAAAAAAAEAAAADAAAB8w4AAACXAHQAAAAAAAAAAACCAXJDAAAAckQAAAByPAAAAHMBAAAAIHI+AAAA2g10b19kaWZmX3R1cGxleh5NaWdyYXRlT3BlcmF0aW9uLnRvX2RpZmZfdHVwbGVZAAAAckcAAAByQAAAAE4pAtoGcmV0dXJueg5EaWN0W0FueSwgQW55XSkCckoAAAByOQAAAKkCckoAAAB6D1R1cGxlW0FueSwgLi4uXSkM2ghfX25hbWVfX9oKX19tb2R1bGVfX9oMX19xdWFsbmFt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YmxlIiwgIm15X3RhYmxlIiwgWyJpZCIsICJ2ZXJzaW9uIl0pCgogICAgICAgIFRoaXMgaW50ZXJuYWxseSBnZW5lcmF0ZXMgYSA6Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5UYWJsZWAgb2JqZWN0CiAgICAgICAgY29udGFpbmluZyB0aGUgbmVjZXNzYXJ5IGNvbHVtbnMsIHRoZW4gZ2VuZXJhdGVzIGEgbmV3CiAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuUHJpbWFyeUtleUNvbnN0cmFpbnRgCiAgICAgICAgb2JqZWN0IHdoaWNoIGl0IHRoZW4gYXNzb2NpYXRlcyB3aXRoIHRoZQogICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLlRhYmxlYC4KICAgICAgICBBbnkgZXZlbnQgbGlzdGVuZXJzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIGFjdGlvbiB3aWxsIGJlIGZpcmVkCiAgICAgICAgb2ZmIG5vcm1hbGx5LiAgIFRoZSA6Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5BZGRDb25zdHJhaW50YAogICAgICAgIGNvbnN0cnVjdCBpcyB1bHRpbWF0ZWx5IHVzZWQgdG8gZ2VuZXJhdGUgdGhlIEFMVEVSIHN0YXRlbWVudC4KCiAgICAgICAgOnBhcmFtIGNvbnN0cmFpbnRfbmFtZTogTmFtZSBvZiB0aGUgcHJpbWFyeSBrZXkgY29uc3RyYWludC4gIFRoZSBuYW1lCiAgICAgICAgIGlzIG5lY2Vzc2FyeSBzbyB0aGF0IGFuIEFMVEVSIHN0YXRlbWVudCBjYW4gYmUgZW1pdHRlZC4gIEZvciBzZXR1cHMKICAgICAgICAgdGhhdCB1c2UgYW4gYXV0b21hdGVkIG5hbWluZyBzY2hlbWUgc3VjaCBhcyB0aGF0IGRlc2NyaWJlZCBhdAogICAgICAgICA6cmVmOmBzcWxhOmNvbnN0cmFpbnRfbmFtaW5nX2NvbnZlbnRpb25zYAogICAgICAgICBgYG5hbWVgYCBoZXJlIGNhbiBiZSBgYE5vbmVgYCwgYXMgdGhlIGV2ZW50IGxpc3RlbmVyIHdpbGwKICAgICAgICAgYXBwbHkgdGhl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ACAgIHI+AAAAcmcAAAB6JkNyZWF0ZVVuaXF1ZUNvbnN0cmFpbnRPcC50b19jb25zdHJhaW50pQEAAHNdAAAAgAD0BgAWH9cVLNEVLNAtPtMVP4gK2A8riHrXDyvRDyvYDBDXDCDRDCDYDBCPT4lP2AwQj0yJTPEHBhAK8AgAFBiXO5E78AkGEArwCgAPE49niWfxCwYQCvAABgkKckAAAABjBQAAAAAAAAABAAAABQAAAAsAAAHzPgAAAJcAAgB8AHwCfAN8BGYDZAF8BWkBfAakAY4BfQd8AWoBAAAAAAAAAAAAAAAAAAAAAAAAfAerAQAAAAAAAFMAKQJh8gYAAElzc3VlIGEgImNyZWF0ZSB1bmlxdWUgY29uc3RyYWludCIgaW5zdHJ1Y3Rpb24gdXNpbmcgdGhlCiAgICAgICAgY3VycmVudCBtaWdyYXRpb24gY29udGV4dC4KCiAgICAgICAgZS5nLjo6CgogICAgICAgICAgICBmcm9tIGFsZW1iaWMgaW1wb3J0IG9wCiAgICAgICAgICAgIG9wLmNyZWF0ZV91bmlxdWVfY29uc3RyYWludCgidXFfdXNlcl9uYW1lIiwgInVzZXIiLCBbIm5hbWUiXSkKCiAgICAgICAgVGhpcyBpbnRlcm5hbGx5IGdlbmVyYXRlcyBhIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLlRhYmxlYCBvYmplY3QKICAgICAgICBjb250YWluaW5nIHRoZSBuZWNlc3NhcnkgY29sdW1ucywgdGhlbiBnZW5lcmF0ZXMgYSBuZXcKICAgICAgICA6Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5VbmlxdWVDb25zdHJhaW50YAogICAgICAgIG9iamVjdCB3aGljaCBpdCB0aGVuIGFzc29jaWF0ZXMgd2l0aCB0aGUKICAgICAgICA6Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5UYWJsZWAuCiAgICAgICAgQW55IGV2ZW50IGxpc3RlbmVycyBhc3NvY2lhdGVkIHdpdGggdGhpcyBhY3Rpb24gd2lsbCBiZSBmaXJlZAogICAgICAgIG9mZiBub3JtYWxseS4gICBUaGUgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuQWRkQ29uc3RyYWludGAKICAgICAgICBjb25zdHJ1Y3QgaXMgdWx0aW1hdGVseSB1c2VkIHRvIGdlbmVyYXRlIHRoZSBBTFRFUiBzdGF0ZW1lbnQuCgogICAgICAgIDpwYXJhbSBuYW1lOiBOYW1lIG9mIHRoZSB1bmlxdWUgY29uc3RyYWludC4gIFRoZSBuYW1lIGlzIG5lY2Vzc2FyeQogICAgICAgICBzbyB0aGF0IGFuIEFMVEVSIHN0YXRlbWVudCBjYW4gYmUgZW1pdHRlZC4gIEZvciBzZXR1cHMgdGhhdAogICAgICAgICB1c2UgYW4gYXV0b21hdGVkIG5hbWluZyBzY2hlbWUgc3VjaCBhcyB0aGF0IGRlc2NyaWJlZCBhdAogICAgICAgICA6cmVmOmBzcWxhOmNvbnN0cmFpbnRfbmFtaW5nX2NvbnZlbnRpb25zYCwKICAgICAgICAgYGBuYW1lYGAgaGVyZSBjYW4gYmUgYGBOb25lYGAsIGFzIHRoZSBldmVudCBsaXN0ZW5lciB3aWxsCiAgICAgICAgIGFwcGx5IHRoZSBuYW1lIHRvIHRoZSBjb25zdHJhaW50IG9iamVjdCB3aGVuIGl0IGlzIGFzc29jaWF0ZWQKICAgICAgICAgd2l0aCB0aGUgdGFibGUuCiAgICAgICAgOnBhcmFtIHRhYmxlX25hbWU6IFN0cmluZyBuYW1lIG9mIHRoZSBzb3VyY2UgdGFibGUuCiAgICAgICAgOnBhcmFtIGNvbHVtbnM6IGEgbGlzdCBvZiBzdHJpbmcgY29sdW1uIG5hbWVzIGluIHRoZQogICAgICAgICBzb3VyY2UgdGFibGUuCiAgICAgICAgOnBhcmFtIGRlZmVycmFibGU6IG9wdGlvbmFsIGJvb2wuIElmIHNldCwgZW1pdCBERUZFUlJBQkxFIG9yCiAgICAgICAgIE5PVCBERUZFUlJBQkxFIHdoZW4gaXNzdWluZyBEREwgZm9yIHRoaXMgY29uc3RyYWludC4KICAgICAgICA6cGFyYW0gaW5pdGlhbGx5OiBvcHRpb25hbCBzdHJpbmcuIElmIHNldCwgZW1pdCBJTklUSUFMTFkgPHZhbHVlPgogICAgICAgICB3aGVuIGlzc3VpbmcgRERMIGZvciB0aGlzIGNvbnN0cmFpbnQuCiAgICAgICAg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AAAAAAAAAHwPqwEAAAAAAABTACkCYbYIAABJc3N1ZSBhICJjcmVhdGUgZm9yZWlnbiBrZXkiIGluc3RydWN0aW9uIHVzaW5nIHRoZQogICAgICAgIGN1cnJlbnQgbWlncmF0aW9uIGNvbnRleHQuCgogICAgICAgIGUuZy46OgoKICAgICAgICAgICAgZnJvbSBhbGVtYmljIGltcG9ydCBvcAoKICAgICAgICAgICAgb3AuY3JlYXRlX2ZvcmVpZ25fa2V5KAogICAgICAgICAgICAgICAgImZrX3VzZXJfYWRkcmVzcyIsCiAgICAgICAgICAgICAgICAiYWRkcmVzcyIsCiAgICAgICAgICAgICAgICAidXNlciIsCiAgICAgICAgICAgICAgICBbInVzZXJfaWQiXSwKICAgICAgICAgICAgICAgIFsiaWQiXSwKICAgICAgICAgICAgKQoKICAgICAgICBUaGlzIGludGVybmFsbHkgZ2VuZXJhdGVzIGEgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuVGFibGVgIG9iamVjdAogICAgICAgIGNvbnRhaW5pbmcgdGhlIG5lY2Vzc2FyeSBjb2x1bW5zLCB0aGVuIGdlbmVyYXRlcyBhIG5ldwogICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLkZvcmVpZ25LZXlDb25zdHJhaW50YAogICAgICAgIG9iamVjdCB3aGljaCBpdCB0aGVuIGFzc29jaWF0ZXMgd2l0aCB0aGUKICAgICAgICA6Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5UYWJsZWAuCiAgICAgICAgQW55IGV2ZW50IGxpc3RlbmVycyBhc3NvY2lhdGVkIHdpdGggdGhpcyBhY3Rpb24gd2lsbCBiZSBmaXJlZAogICAgICAgIG9mZiBub3JtYWxseS4gICBUaGUgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuQWRkQ29uc3RyYWludGAKICAgICAgICBjb25zdHJ1Y3QgaXMgdWx0aW1hdGVseSB1c2VkIHRvIGdlbmVyYXRlIHRoZSBBTFRFUiBzdGF0ZW1lbnQuCgogICAgICAgIDpwYXJhbSBjb25zdHJhaW50X25hbWU6IE5hbWUgb2YgdGhlIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQuICBUaGUgbmFtZQogICAgICAgICBpcyBuZWNlc3Nhcnkgc28gdGhhdCBhbiBBTFRFUiBzdGF0ZW1lbnQgY2FuIGJlIGVtaXR0ZWQuICBGb3Igc2V0dXBzCiAgICAgICAgIHRoYXQgdXNlIGFuIGF1dG9tYXRlZCBuYW1pbmcgc2NoZW1lIHN1Y2ggYXMgdGhhdCBkZXNjcmliZWQgYXQKICAgICAgICAgOnJlZjpgc3FsYTpjb25zdHJhaW50X25hbWluZ19jb252ZW50aW9uc2AsCiAgICAgICAgIGBgbmFtZWBgIGhlcmUgY2FuIGJlIGBgTm9uZWBgLCBhcyB0aGUgZXZlbnQgbGlzdGVuZXIgd2lsbAogICAgICAgICBhcHBseSB0aGUgbmFtZSB0byB0aGUgY29uc3RyYWludCBvYmplY3Qgd2hlbiBpdCBpcyBhc3NvY2lhdGVkCiAgICAgICAgIHdpdGggdGhlIHRhYmxlLgogICAgICAgIDpwYXJhbSBzb3VyY2VfdGFibGU6IFN0cmluZyBuYW1lIG9mIHRoZSBzb3VyY2UgdGFibGUuCiAgICAgICAgOnBhcmFtIHJlZmVyZW50X3RhYmxlOiBTdHJpbmcgbmFtZSBvZiB0aGUgZGVzdGluYXRpb24gdGFibGUuCiAgICAgICAgOnBhcmFtIGxvY2FsX2NvbHM6IGEgbGlzdCBvZiBzdHJpbmcgY29sdW1uIG5hbWVzIGluIHRoZQogICAgICAgICBzb3VyY2UgdGFibGUuCiAgICAgICAgOnBhcmFtIHJlbW90ZV9jb2xzOiBhIGxpc3Qgb2Ygc3RyaW5nIGNvbHVtbiBuYW1lcyBpbiB0aGUKICAgICAgICAgcmVtb3RlIHRhYmxlLgogICAgICAgIDpwYXJhbSBvbnVwZGF0ZTogT3B0aW9uYWwgc3RyaW5nLiBJZiBzZXQsIGVtaXQgT04gVVBEQVRFIDx2YWx1ZT4gd2hlbgogICAgICAgICBpc3N1aW5nIERETCBmb3IgdGhpcyBjb25zdHJhaW50LiBUeXBpY2FsIHZhbHVlcyBpbmNsdWRlIENBU0NBREUsCiAgICAgICAgIERFTEVURSBhbmQgUkVTVFJJQ1QuCiAgICAgICAgOnBhcmFtIG9uZGVsZXRlOiBPcHRpb25hbCBzdHJpbmcuIElmIHNldCwgZW1pdCBPTiBERUxFVEUgPHZhbHVlPiB3aGVuCiAgICAgICAgIGlzc3VpbmcgRERMIGZvciB0aGlzIGNvbnN0cmFpbnQuIFR5cGljYWwgdmFsdWVzIGluY2x1ZGUgQ0FTQ0FERSwKICAgICAgICAgREVMRVRFIGFuZCBSRVNUUklDVC4KICAgICAgICA6cGFyYW0gZGVmZXJyYWJsZTogb3B0aW9uYWwgYm9vbC4gSWYgc2V0LCBlbWl0IERFRkVSUkFCTEUgb3IgTk9UCiAgICAgICAgIERFRkVSUkFCTEUgd2hlbiBpc3N1aW5nIERETCBmb3IgdGhpcyBjb25zdHJhaW50LgogICAgICAgIDpwYXJhbSBzb3VyY2Vfc2NoZW1hOiBPcHRpb25hbCBzY2hlbWEgbmFtZSBvZiB0aGUgc291cmNlIHRhYmxlLgogICAgICAgIDpwYXJhbSByZWZlcmVudF9zY2hlbWE6IE9wdGlvbmFsIHNjaGVtYSBuYW1lIG9mIHRoZSBkZXN0aW5hdGlvbiB0YWJsZS4KCiAgICAgICAgqQdy0wAAAHLUAAAAcr8AAABy1wAAAHLYAAAAcsAAAABy1gAAAHKWAAAAKRByXAAAAHKYAAAAcnkAAAByzAAAAHLNAAAAcs4AAAByzwAAAHLTAAAActQAAAByvwAAAHLAAAAActYAAABy1wAAAHLYAAAA2gpkaWFsZWN0X2t3cpkAAABzEAAAACAgICAgICAgICAgICAgICByPgAAAHLHAAAAeiVDcmVhdGVGb3JlaWduS2V5T3AuY3JlYXRlX2ZvcmVpZ25fa2V5UQIAAHNXAAAAgADxSgIADhHYDBvYDBjYDBrYDBbYDBfwCw4OCvAMABYe2BUd2Bch2Bon2Bwr2BYf2BIX8RkODgrwGgAPGfEbDg4KiALwHgAQGtcPINEPIKAS0w8k0AgkckAAAAApBnLYAAAActMAAABy1AAAAHK/AAAAcsAAAABy1gAAAGMGAAAAAAAAAAYAAAALAAAACwAAAfOeAAAAlwACAHwAfAJ8AWoAAAAAAAAAAAAAAAAAAAAAAAAAagIAAAAAAAAAAAAAAAAAAAAAAAB8A3wEfAVmBXwHfAh8CXwBagAAAAAAAAAAAAAAAAAAAAAAAABqBAAAAAAAAAAAAAAAAAAAAAAAAHwGfAp8C2QBnAd8DKQBjgF9DXwBagcAAAAAAAAAAAAAAAAAAAAAAAB8DasBAAAAAAAAUwApAmErAgAASXNzdWUgYSAiY3JlYXRlIGZvcmVpZ24ga2V5IiBpbnN0cnVjdGlvbiB1c2luZyB0aGUKICAgICAgICBjdXJyZW50IGJhdGNoIG1pZ3JhdGlvbiBjb250ZXh0LgoKICAgICAgICBUaGUgYmF0Y2ggZm9ybSBvZiB0aGlzIGNhbGwgb21pdHMgdGhlIGBgc291cmNlYGAgYW5kIGBgc291cmNlX3NjaGVtYWBgCiAgICAgICAgYXJndW1lbnRzIGZyb20gdGhlIGNhbGwuCgogICAgICAgIGUuZy46OgoKICAgICAgICAgICAgd2l0aCBiYXRjaF9hbHRlcl90YWJsZSgiYWRkcmVzcyIpIGFzIGJhdGNoX29wOgogICAgICAgICAgICAgICAgYmF0Y2hfb3AuY3JlYXRlX2ZvcmVpZ25fa2V5KAogICAgICAgICAgICAgICAgICAgICJma191c2VyX2FkZHJlc3MiLAogICAgICAgICAgICAgICAgICAgICJ1c2VyIiwKICAgICAgICAgICAgICAgICAgICBbInVzZXJfaWQiXSwKICAgICAgICAgICAgICAgICAgICBbImlkIl0sCiAgICAgICAgICAgICAgICApCgogICAgICAgIC4uIHNlZWFsc286OgoKICAgICAgICAgICAgOm1ldGg6YC5PcGVyYXRpb25zLmNyZWF0ZV9mb3JlaWduX2tleWAKCiAgICAgICAgcuEAAABymwAAACkOclwAAABymAAAAHJ5AAAAcs0AAAByzgAAAHLPAAAActgAAABy0wAAAHLUAAAAcr8AAABywAAAAHLWAAAAcuIAAABymQAAAHMOAAAAICAgICAgICAgICAgICByPgAAAHLIAAAAeitDcmVhdGVGb3JlaWduS2V5T3AuYmF0Y2hfY3JlYXRlX2ZvcmVpZ25fa2V5pwIAAHNrAAAAgADxTAEADhHYDBvYDBaPT4lP1wwm0Qwm2Awa2AwW2AwX8AsODgrwDAAWHtgVHdgXIdgaJJ8vmS/XGjDRGjDYHCvYFh/YEhfxGQ4OCvAaAA8Z8RsODgqIAvAeABAa1w8g0Q8goBLTDyTQCCRyQAAAACkOcnkAAABynQAAAHLMAAAAcm0AAAByzQAAAHJtAAAAcs4AAAByuAAAAHLPAAAAcrgAAAByqAAAAHIFAAAAckoAAABynwAAACkCckoAAAB6IFR1cGxlW3N0ciwgRm9yZWlnbktleUNvbnN0cmFpbnRdKQRyZAAAAHImAAAAckoAAAByygAAAHJDAAAAKQRyZgAAAHJuAAAAckoAAAByJwAAACkecpgAAAByGQAAAHJ5AAAAcp4AAAByzAAAAHJtAAAAcs0AAABybQAAAHLOAAAAcrgAAAByzwAAAHK4AAAActMAAAByngAAAHLUAAAAcp4AAAByvwAAAPoOT3B0aW9uYWxbYm9vbF1ywAAAAHKeAAAActYAAAByngAAAHLXAAAAcp4AAABy2AAAAHKeAAAAcuIAAAByBQAAAHJKAAAAcp8AAAApGnKYAAAAchgAAAByeQAAAHKeAAAAcs0AAABybQAAAHLOAAAAcrgAAAByzwAAAHK4AAAActgAAAByngAAAHLTAAAAcp4AAABy1AAAAHKeAAAAcr8AAABy5AAAAHLAAAAAcp4AAABy1gAAAHKeAAAAcuIAAAByBQAAAHJKAAAAcp8AAAApDHJMAAAAck0AAAByTgAAAHJPAAAAclUAAAByewAAAHJJAAAAcnEAAAByWgAAAHJnAAAAcscAAAByyAAAAHI7AAAAckAAAAByPgAAAHLKAAAAcsoAAAD9AQAAcwMCAACEAPEMAAU/4BYigE/wBA4FFeAZRfAFDgUV8AYAFxrwBw4FFfAIABkc8AkOBRXwCgAVHvALDgUV8AwAFh/wDQ4FFfAOAA8S8A8OBRXwEAAKDvMRDgUV8yABBTDwBgAGEfICJwUK8wMABhHwAicFCvBUAQA/QwHwAwsFCtghO/ADCwUK4Akd8wULBQrwGgAGEfAUACMn2CIm2CUp2CMn2B8j2Ccr2Ckt8R9TAQUl4BQe8AVTAQUl8AYAGifwB1MBBSXwCAAXGvAJUwEFJfAKABkc8AtTAQUl8AwAFR7wDVMBBSXwDgAWH/APUwEFJfASABMg8BNTAQUl8BQAEyDwFVMBBSXwFgAVI/AXUwEFJfAYABQh8BlTAQUl8BoAEB3wG1MBBSXwHAAYJfAdUwEFJfAeABon8B9TAQUl8CAAFxrwIVMBBSXwIgAKDvIjUwEFJfMDAAYR8AJTAQUl8GoCAAYR8BIAKi7YIibYIibYJSnYIyfYHyPxGzQFJeAUI/AFNAUl8AYAGifwBzQFJfAIABkc8Ak0BSXwCgAVHvALNAUl8AwAFh/wDTQFJfAQABon8BE0BSXwEgATIPATNAUl8BQAEyDwFTQFJfAWABUj8Bc0BSXwGAAUIfAZNAUl8BoAEB3wGzQFJfAcABca8B00BSXwHgAKDvIfNAUl8wMABhHxAjQFJXJAAAAAcsoAAADaF2NyZWF0ZV9jaGVja19jb25zdHJhaW502h1iYXRjaF9jcmVhdGVfY2hlY2tfY29uc3RyYWludHKIAAAAcooAAAByiQAAAGMAAAAAAAAAAAAAAAAEAAAAAAAAAfO8AAAAlwBlAFoBZABaAmQBWgNkAloEZANkBJwBCQAJAAkACQAJAAkACQAJAAkACQAJAGQKZAWEBloFZQYJAAkACQAJAGQLZAaEBKsAAAAAAAAAWgcJAGQMCQAJAAkAZA1kB4QFWghlBmQDZAScAQkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAZA5kCIQGqwAAAAAAAABaCWUGCQAJAAkACQAJAAkACQAJAAkACQBkD2QJhASrAAAAAAAAAFoKeQMpENoXQ3JlYXRlQ2hlY2tDb25zdHJhaW50T3B6LlJlcHJlc2VudCBhIGNyZWF0ZSBjaGVjayBjb25zdHJhaW50IG9wZXJhdGlvbi5yhAAAAE5ykwAAAGMEAAAAAAAAAAEAAAACAAAACwAAAfNKAAAAlwB8AXwAXwAAAAAAAAAAAHwCfABfAQAAAAAAAAAAfAN8AF8CAAAAAAAAAAB8BHwAXwMAAAAAAAAAAHwFfABfBAAAAAAAAAAAeQByQwAAACkFcnkAAAByegAAANoJY29uZGl0aW9ucnYAAAByqAAAACkGcj0AAAByeQAAAHJ6AAAAcuoAAABydgAAAHKoAAAAcwYAAAAgICAgICByPgAAAHJ7AAAAeiBDcmVhdGVDaGVja0NvbnN0cmFpbnRPcC5fX2luaXRfX+sCAABzKAAAAIAA8BIAIC+IBNQIHNgaJIgEjA/YGSKIBIwO2BYciASMC9gSFIgEjQdyQAAAAGMCAAAAAAAAAAAAAAAIAAAAAwAAAfP8AAAAlwB0AQAAAAAAAAAAagIAAAAAAAAAAAAAAAAAAAAAAAB8AasBAAAAAAAAfQJ0BQAAAAAAAAAAZAF8AasCAAAAAAAAfQMCAHwAdAEAAAAAAAAAAGoGAAAAAAAAAAAAAAAAAAAAAAAAfANqCAAAAAAAAAAAAAAAAAAAAAAAAKsBAAAAAAAAfAJqCAAAAAAAAAAAAAAAAAAAAAAAAHQFAAAAAAAAAABkAnwDagoAAAAAAAAAAAAAAAAAAAAAAACrAgAAAAAAAGYDZAN8AmoMAAAAAAAAAAAAAAAAAAAAAAAAaQF8A2oOAAAAAAAAAAAAAAAAAAAAAAAApAGOAVMAKQROciMAAAB6EkNvbHVtbkVsZW1lbnRbQW55XXJ2AAAAKQhyHAAAAHKLAAAAcgcAAAByjAAAAHKNAAAA2gdzcWx0ZXh0cnYAAAByrQAAACkEclwAAAByZAAAAHKQAAAA2g1ja19jb25zdHJhaW50cwQAAAAgICAgcj4AAAByWgAAAHonQ3JlYXRlQ2hlY2tDb25zdHJhaW50T3AuZnJvbV9jb25zdHJhaW50+gIAAHN9AAAAgAD0CAAcJ9cbPNEbPLha0xtI0AgY5Bgc0B0usArTGDuIDdkPEtwMF9cML9EML7AN1zBC0TBC0wxD2Awc1wwh0Qwh3AwQ0BEloH3XJzzRJzzTDD3xBwYQCvAIABQk1xMq0RMq8AkGEArwCgAPHNcOKtEOKvELBhAK8AAGCQpyQAAAAGMCAAAAAAAAAAAAAAAFAAAAAwAAAfO+AAAAlwB0AQAAAAAAAAAAagIAAAAAAAAAAAAAAAAAAAAAAAB8AasBAAAAAAAAfQICAHwCagQAAAAAAAAAAAAAAAAAAAAAAAB8AGoGAAAAAAAAAAAAAAAAAAAAAAAAfABqCAAAAAAAAAAAAAAAAAAAAAAAAHwAagoAAAAAAAAAAAAAAAAAAAAAAABmA2QBfABqDAAAAAAAAAAAAAAAAAAAAAAAAGkBfABqDgAAAAAAAAAAAAAAAAAAAAAAAKQBjgFTAHKwAAAAKQhyFwAAAHKxAAAAcogAAAByeQAAAHJ6AAAAcuoAAABydgAAAHKoAAAAcrIAAABzAwAAACAgIHI+AAAAcmcAAAB6JUNyZWF0ZUNoZWNrQ29uc3RyYWludE9wLnRvX2NvbnN0cmFpbnQJAwAAc10AAACAAPQGABYf1xUs0RUs0C0+0xU/iArYDyqIetcPKtEPKtgMENcMINEMINgMEI9PiU/YDBCPTolO8QcGEArwCAAUGJc7kTvwCQYQCvAKAA8Tj2eJZ/ELBhAK8AAGCQpyQAAAAGMFAAAAAAAAAAEAAAAFAAAACwAAAfM+AAAAlwACAHwAfAJ8A3wEZgNkAXwFaQF8BqQBjgF9B3wBagEAAAAAAAAAAAAAAAAAAAAAAAB8B6sBAAAAAAAAUwApAmEBBwAASXNzdWUgYSAiY3JlYXRlIGNoZWNrIGNvbnN0cmFpbnQiIGluc3RydWN0aW9uIHVzaW5nIHRoZQogICAgICAgIGN1cnJlbnQgbWlncmF0aW9uIGNvbnRleHQuCgogICAgICAgIGUuZy46OgoKICAgICAgICAgICAgZnJvbSBhbGVtYmljIGltcG9ydCBvcAogICAgICAgICAgICBmcm9tIHNxbGFsY2hlbXkuc3FsIGltcG9ydCBjb2x1bW4sIGZ1bmMKCiAgICAgICAgICAgIG9wLmNyZWF0ZV9jaGVja19jb25zdHJhaW50KAogICAgICAgICAgICAgICAgImNrX3VzZXJfbmFtZV9sZW4iLAogICAgICAgICAgICAgICAgInVzZXIiLAogICAgICAgICAgICAgICAgZnVuYy5sZW4oY29sdW1uKCJuYW1lIikpID4gNSwKICAgICAgICAgICAgKQoKICAgICAgICBDSEVDSyBjb25zdHJhaW50cyBhcmUgdXN1YWxseSBhZ2FpbnN0IGEgU1FMIGV4cHJlc3Npb24sIHNvIGFkLWhvYwogICAgICAgIHRhYmxlIG1ldGFkYXRhIGlzIHVzdWFsbHkgbmVlZGVkLiAgIFRoZSBmdW5jdGlvbiB3aWxsIGNvbnZlcnQgdGhlIGdpdmVuCiAgICAgICAgYXJndW1lbnRzIGludG8gYSA6Y2xhc3M6YHNxbGFsY2hlbXkuc2NoZW1hLkNoZWNrQ29uc3RyYWludGAgYm91bmQKICAgICAgICB0byBhbiBhbm9ueW1vdXMgdGFibGUgaW4gb3JkZXIgdG8gZW1pdCB0aGUgQ1JFQVRFIHN0YXRlbWVudC4KCiAgICAgICAgOnBhcmFtIG5hbWU6IE5hbWUgb2YgdGhlIGNoZWNrIGNvbnN0cmFpbnQuICBUaGUgbmFtZSBpcyBuZWNlc3NhcnkKICAgICAgICAgc28gdGhhdCBhbiBBTFRFUiBzdGF0ZW1lbnQgY2FuIGJlIGVtaXR0ZWQuICBGb3Igc2V0dXBzIHRoYXQKICAgICAgICAgdXNlIGFuIGF1dG9tYXRlZCBuYW1pbmcgc2NoZW1lIHN1Y2ggYXMgdGhhdCBkZXNjcmliZWQgYXQKICAgICAgICAgOnJlZjpgc3FsYTpjb25zdHJhaW50X25hbWluZ19jb252ZW50aW9uc2AsCiAgICAgICAgIGBgbmFtZWBgIGhlcmUgY2FuIGJlIGBgTm9uZWBgLCBhcyB0aGUgZXZlbnQgbGlzdGVuZXIgd2lsbAogICAgICAgICBhcHBseSB0aGUgbmFtZSB0byB0aGUgY29uc3RyYWludCBvYmplY3Qgd2hlbiBpdCBpcyBhc3NvY2lhdGVkCiAgICAgICAgIHdpdGggdGhlIHRhYmxlLgogICAgICAgIDpwYXJhbSB0YWJsZV9uYW1lOiBTdHJpbmcgbmFtZSBvZiB0aGUgc291cmNlIHRhYmxlLgogICAgICAgIDpwYXJhbSBjb25kaXRpb246IFNRTCBleHByZXNzaW9uIHRoYXQncyB0aGUgY29uZGl0aW9uIG9mIHRoZQogICAgICAgICBjb25zdHJhaW50LiBDYW4gYmUgYSBzdHJpbmcgb3IgU1FMQWxjaGVteSBleHByZXNzaW9uIGxhbmd1YWdlCiAgICAgICAgIHN0cnVjdHVyZS4KICAgICAgICA6cGFyYW0gZGVmZXJyYWJsZTogb3B0aW9uYWwgYm9vbC4gSWYgc2V0LCBlbWl0IERFRkVSUkFCTEUgb3IKICAgICAgICAgTk9UIERFRkVSUkFCTEUgd2hlbiBpc3N1aW5nIERETCBmb3IgdGhpcyBjb25zdHJhaW50LgogICAgICAgIDpwYXJhbSBpbml0aWFsbHk6IG9wdGlvbmFsIHN0cmluZy4gSWYgc2V0LCBlbWl0IElOSVRJQUxMWSA8dmFsdWU+CiAgICAgICAgIHdoZW4gaXNzdWluZyBEREwgZm9yIHRoaXMgY29uc3RyYWludC4KICAgICAgICA6cGFyYW0gc2NoZW1hOiBPcHRpb25hbCBzY2hlbWEgbmFtZSB0byBvcGVyYXRlIHdpdGhpbi4gIFRvIGNvbnRyb2wKICAgICAgICAgcXVvdGluZyBv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ICA6ZnVuYzpgfnNxbGFsY2hlbXkuc3FsLmV4cHJlc3Npb24udGV4dGAgY29uc3RydWN0cy4KICAgICAgICA6cGFyYW0gc2NoZW1hOiBPcHRpb25hbCBzY2hlbWEgbmFtZSB0byBvcGVyYXRlIHdpdGhpbi4gIFRvIGNvbnRyb2wKICAgICAgICAgcXVvdGluZyBvZiB0aGUgc2NoZW1hIG91dHNpZGUgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQogICAgICAgICB0aGUgU1FMQWxjaGVteSBjb25zdHJ1Y3QKICAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS5zcWwuZWxlbWVudHMucXVvdGVkX25hbWVgLgogICAgICAgIDpwYXJhbSB1bmlxdWU6IElmIFRydWUsIGNyZWF0ZSBhIHVuaXF1ZSBpbmRleC4KCiAgICAgICAgOnBhcmFtIHF1b3RlOiBGb3JjZSBxdW90aW5nIG9mIHRoaXMgY29sdW1uJ3MgbmFtZSBvbiBvciBvZmYsCiAgICAgICAgIGNvcnJlc3BvbmRpbmcgdG8gYGBUcnVlYGAgb3IgYGBGYWxzZWBgLiBXaGVuIGxlZnQgYXQgaXRzIGRlZmF1bHQKICAgICAgICAgb2YgYGBOb25lYGAsIHRoZSBjb2x1bW4gaWRlbnRpZmllciB3aWxsIGJlIHF1b3RlZCBhY2NvcmRpbmcgdG8KICAgICAgICAgd2hldGhlciB0aGUgbmFtZSBpcyBjYXNlIHNlbnNpdGl2ZSAoaWRlbnRpZmllcnMgd2l0aCBhdCBsZWFzdCBvbmUKICAgICAgICAgdXBwZXIgY2FzZSBjaGFyYWN0ZXIgYXJlIHRyZWF0ZWQgYXMgY2FzZSBzZW5zaXRpdmUpLCBvciBpZiBpdCdzIGEKICAgICAgICAgcmVzZXJ2ZWQgd29yZC4gVGhpcyBmbGFnIGlzIG9ubHkgbmVlZGVkIHRvIGZvcmNlIHF1b3Rpbmcgb2YgYQogICAgICAgICByZXNlcnZlZCB3b3JkIHdoaWNoIGlzIG5vdCBrbm93biBieSB0aGUgU1FMQWxjaGVteSBkaWFsZWN0LgoKICAgICAgICA6cGFyYW0gaWZfbm90X2V4aXN0czogSWYgVHJ1ZSwgYWRkcyBJRiBOT1Qg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Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5Db2x1bW5gCiAgICAgICAgY29uc3RydWN0cyBkaXJlY3RseSBmcm9tIHRoZSBTUUxBbGNoZW15IGxpYnJhcnkuICBJbiBwYXJ0aWN1bGFyLAogICAgICAgIGRlZmF1bHQgdmFsdWVzIHRvIGJlIGNyZWF0ZWQgb24gdGhlIGRhdGFiYXNlIHNpZGUgYXJlCiAgICAgICAgc3BlY2lmaWVkIHVzaW5nIHRoZSBgYHNlcnZlcl9kZWZhdWx0YGAgcGFyYW1ldGVyLCBhbmQgbm90CiAgICAgICAgYGBkZWZhdWx0YGAgd2hpY2ggb25seSBzcGVjaWZpZXMgUHl0aG9uLXNpZGUgZGVmYXVsdHM6OgoKICAgICAgICAgICAgZnJvbSBhbGVtYmljIGltcG9ydCBvcAogICAgICAgICAgICBmcm9tIHNxbGFsY2hlbXkgaW1wb3J0IENvbHVtbiwgVElNRVNUQU1QLCBmdW5jCgogICAgICAgICAgICAjIHNwZWNpZnkgIkRFRkFVTFQgTk9XIiBhbG9uZyB3aXRoIHRoZSAidGltZXN0YW1wIiBjb2x1bW4KICAgICAgICAgICAgb3AuY3JlYXRlX3RhYmxlKAogICAgICAgICAgICAgICAgImFjY291bnQiLAogICAgICAgICAgICAgICAgQ29sdW1uKCJpZCIsIElOVEVHRVIsIHByaW1hcnlfa2V5PVRydWUpLAogICAgICAgICAgICAgICAgQ29sdW1uKCJ0aW1lc3RhbXAiLCBUSU1FU1RBTVAsIHNlcnZlcl9kZWZhdWx0PWZ1bmMubm93KCkpLAogICAgICAgICAgICApCgogICAgICAgIFRoZSBmdW5jdGlvbiBhbHNvIHJldHVybnMgYSBuZXdseSBjcmVhdGVkCiAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuVGFibGVgIG9iamVjdCwgY29ycmVzcG9uZGluZyB0byB0aGUgdGFibGUKICAgICAgICBzcGVjaWZpY2F0aW9uIGdpdmVuLCB3aGljaCBpcyBzdWl0YWJsZSBmb3IKICAgICAgICBpbW1lZGlhdGUgU1FMIG9wZXJhdGlvbnMsIGluIHBhcnRpY3VsYXIKICAgICAgICA6bWV0aDpgLk9wZXJhdGlvbnMuYnVsa19pbnNlcnRgOjoKCiAgICAgICAgICAgIGZyb20gc3FsYWxjaGVteSBpbXBvcnQgSU5URUdFUiwgVkFSQ0hBUiwgTlZBUkNIQVIsIENvbHVtbgogICAgICAgICAgICBmcm9tIGFsZW1iaWMgaW1wb3J0IG9wCgogICAgICAgICAgICBhY2NvdW50X3RhYmxlID0gb3AuY3JlYXRlX3RhYmxlKAogICAgICAgICAgICAgICAgImFjY291bnQiLAogICAgICAgICAgICAgICAgQ29sdW1uKCJpZCIsIElOVEVHRVIsIHByaW1hcnlfa2V5PVRydWUpLAogICAgICAgICAgICAgICAgQ29sdW1uKCJuYW1lIiwgVkFSQ0hBUig1MCksIG51bGxhYmxlPUZhbHNlKSwKICAgICAgICAgICAgICAgIENvbHVtbigiZGVzY3JpcHRpb24iLCBOVkFSQ0hBUigyMDApKSwKICAgICAgICAgICAgICAgIENvbHVtbigidGltZXN0YW1wIiwgVElNRVNUQU1QLCBzZXJ2ZXJfZGVmYXVsdD1mdW5jLm5vdygpKSwKICAgICAgICAgICAgKQoKICAgICAgICAgICAgb3AuYnVsa19pbnNlcnQoCiAgICAgICAgICAgICAgICBhY2NvdW50X3RhYmxlLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAgIHsibmFtZSI6ICJBMSIsICJkZXNjcmlwdGlvbiI6ICJhY2NvdW50IDEifSwKICAgICAgICAgICAgICAgICAgICB7Im5hbWUiOiAiQTIiLCAiZGVzY3JpcHRpb24iOiAiYWNjb3VudCAyIn0sCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICApCgogICAgICAgIDpwYXJhbSB0YWJsZV9uYW1lOiBOYW1lIG9mIHRoZSB0YWJsZQogICAgICAgIDpwYXJhbSBcKmNvbHVtbnM6IGNvbGxlY3Rpb24gb2YgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuQ29sdW1uYAogICAgICAgICBvYmplY3RzIHdpdGhpbgogICAgICAgICB0aGUgdGFibGUsIGFzIHdlbGwgYXMgb3B0aW9uYWwgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuQ29uc3RyYWludGAKICAgICAgICAgb2JqZWN0cwogICAgICAgICBhbmQgOmNsYXNzOmB+LnNxbGFsY2hlbXkuc2NoZW1hLkluZGV4YCBvYmplY3RzLgogICAgICAgIDpwYXJhbSBzY2hlbWE6IE9wdGlvbmFsIHNjaGVtYSBuYW1lIHRvIG9wZXJhdGUgd2l0aGluLiAgVG8gY29udHJvbAogICAgICAgICBxdW90aW5nIG9mIHRoZSBzY2hlbWEgb3V0c2lkZSBvZiB0aGUgZGVmYXVsdCBiZWhhdmlvciwgdXNlCiAgICAgICAgIHRoZSBTUUxBbGNoZW15IGNvbnN0cnVjdAogICAgICAgICA6Y2xhc3M6YH5zcWxhbGNoZW15LnNxbC5lbGVtZW50cy5xdW90ZWRfbmFtZWAuCiAgICAgICAgOnBhcmFtIGlmX25vdF9leGlzdHM6IElmIFRydWUsIGFkZHMgSUYgTk9UIEVYSVNUUyBvcGVyYXRvciB3aGVuCiAgICAgICAgIGNyZWF0aW5nIHRoZSBuZXcgdGFibGUuCgogICAgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxLjEzLjMKICAgICAgICA6cGFyYW0gXCoqa3c6IE90aGVyIGtleXdvcmQgYXJndW1lbnRzIGFyZSBwYXNzZWQgdG8gdGhlIHVuZGVybHlpbmcKICAgICAgICAgOmNsYXNzOmBzcWxhbGNoZW15LnNjaGVtYS5UYWJsZWAgb2JqZWN0IGNyZWF0ZWQgZm9yIHRoZSBjb21tYW5kLgoKICAgICAgICA6cmV0dXJuOiB0aGUgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuVGFibGVgIG9iamVjdCBjb3JyZXNwb25kaW5nCiAgICAgICAgIHRvIHRoZSBwYXJhbWV0ZXJzIGdpdmVuLgoKICAgICAgICBy9wAAAHKWAAAAKQdyXAAAAHKYAAAAcnoAAABy9wAAAHKnAAAAcqgAAABymQAAAHMHAAAAICAgICAgIHI+AAAAciIBAAB6GkNyZWF0ZVRhYmxlT3AuY3JlYXRlX3RhYmxlygQAAHMsAAAAgADxdAIADhGQGphX0Q1IsE3QDUjAUtENSIgC2A8Z1w8g0Q8goBLTDyTQCCRyQAAAACkQcnoAAABybQAAAHKnAAAAehRTZXF1ZW5jZVtTY2hlbWFJdGVtXXJ2AAAAcp4AAABy9wAAAHLkAAAAciUBAAD6Ek9wdGlvbmFsW01ldGFEYXRhXXImAQAAcg4BAAByqAAAAHIFAAAAckoAAABynwAAACkCckoAAAByLQEAAKkCckoAAAB6EVR1cGxlW3N0ciwgVGFibGVdKQZyBAEAAHItAAAAciUBAAByPQEAAHJKAAAAciQBAAByQwAAAKkEcmYAAABybgAAAHJKAAAAci0AAAApDHKYAAAAchkAAAByegAAAHJtAAAAcqcAAAByLAAAAHL3AAAAcuQAAAByqAAAAHIFAAAAckoAAAByLQAAACkLckwAAAByTQAAAHJOAAAAck8AAAByewAAAHJGAAAAckkAAABycQAAAHIuAQAAci8BAAByIgEAAHI7AAAAckAAAAByPgAAAHIkAQAAciQBAAB/BAAAcxUBAACEAOEELfAOACEl2Cgs2DI22CYr8REUBTvgFBfwBRQFO/AGABIm8AcUBTvwCgARHvALFAU78AwAGCbwDRQFO/AOAB4w8A8UBTvwEAAgJPARFAU78BIADxLwExQFO/AUAAoO8xUUBTvzLAMFCvMKAQUu8AYABhHgSEzxAxYFCtgUGfADFgUK2DNF8AMWBQrgCRbyBRYFCvMDAAYR8AIWBQrwMgA/QwHwAw4FCtghO/ADDgUK4AkO8wUOBQrwIAAGEfAMACkt8QtaAQUl4BQe8AVaAQUl8AYAFRjwB1oBBSXwCAATHfAJWgEFJfAKABgm8AtaAQUl8AwADxLwDVoBBSXwDgAKD/IPWgEFJfMDAAYR8QJaAQUlckAAAAByJAEAANoKZHJvcF90YWJsZWMAAAAAAAAAAAAAAAAFAAAAAAAAAfOuAAAAlwBlAFoBZABaAmQBWgNkAmQCZAJkAmQDnAQJAAkACQAJAAkACQAJAAkACQAJAAkAZAxkBIQGWgRkDWQFhARaBWQOZAaEBFoGZQdkAmQHnAEJAAkACQAJAAkAZA9kCIQGqwAAAAAAAABaCAkAZBAJAAkACQBkEWQJhAVaCWUHZAJkAmQKnAIJAAkACQAJAAkACQAJAAkACQAJAAkAZBJkC4QGqwAAAAAAAABaCnkCKRNyLQEAAHohUmVwcmVzZW50IGEgZHJvcCB0YWJsZSBvcGVyYXRpb24uTikEcnYAAAByFAEAANoIdGFibGVfa3dydwAAAGMCAAAAAAAAAAQAAAAEAAAAAwAAAfMYAQAAlwB8AXwAXwAAAAAAAAAAAHwCfABfAQAAAAAAAAAAfAN8AF8CAAAAAAAAAAB8BHgBcwIBAGkAfABfAwAAAAAAAAAAfABqBgAAAAAAAAAAAAAAAAAAAAAAAGoJAAAAAAAAAAAAAAAAAAAAAAAAZAFkAKsCAAAAAAAAfABfBQAAAAAAAAAAfABqBgAAAAAAAAAAAAAAAAAAAAAAAGoJAAAAAAAAAAAAAAAAAAAAAAAAZAJkAKsCAAAAAAAAfABfBgAAAAAAAAAAfABqBgAAAAAAAAAAAAAAAAAAAAAAAGoJAAAAAAAAAAAAAAAAAAAAAAAAZANkAKsCAAAAAAAAfABfBwAAAAAAAAAAfAV8AF8IAAAAAAAAAAB5ACkETnIoAQAAcj8AAAByKQEAACkJcnoAAABydgAAAHIUAQAAckIBAAByKgEAAHIoAQAAcj8AAAByKQEAAHJ3AAAAKQZyPQAAAHJ6AAAAcnYAAAByFAEAAHJCAQAAcncAAABzBgAAACAgICAgIHI+AAAAcnsAAAB6FERyb3BUYWJsZU9wLl9faW5pdF9fLAUAAHNzAAAAgADwEgAbJYgEjA/YFhyIBIwL2BkiiASMDtgYIJoOoEKIBIwN2Bcbl32RfdcXKNEXKKgZsETTFzmIBIwM2BQYl02RTdcUJdEUJaBmqGTTFDOIBIwJ2Bgcnw2ZDdcYKdEYKagqsGTTGDuIBIwN2BggiASNDXJAAAAAYwEAAAAAAAAAAAAAAAMAAAADAAAB8yYAAACXAGQBfABqAQAAAAAAAAAAAAAAAAAAAAAAAKsAAAAAAAAAZgJTACkCTtoMcmVtb3ZlX3RhYmxlcjIBAAByPAAAAHMBAAAAIHI+AAAAckkAAAB6GURyb3BUYWJsZU9wLnRvX2RpZmZfdHVwbGU+BQAAchgBAAByQAAAAGMBAAAAAAAAAAAAAAAEAAAAAwAAAfNIAAAAlwB0AAAAAAAAAAAAagMAAAAAAAAAAAAAAAAAAAAAAAB8AGoFAAAAAAAAAAAAAAAAAAAAAAAAqwAAAAAAAACrAQAAAAAAAFMAckMAAAApA3IkAQAAci4BAAByLwEAAHI8AAAAcwEAAAAgcj4AAAByRgAAAHoTRHJvcFRhYmxlT3AucmV2ZXJzZUEFAAByGgEAAHJAAAAAciwBAABjAgAAAAAAAAABAAAACQAAAAMAAAHz7AAAAJcAAgB8AHwBagAAAAAAAAAAAAAAAAAAAAAAAAB8AWoCAAAAAAAAAAAAAAAAAAAAAAAAfAFqBAAAAAAAAAAAAAAAAAAAAAAAAHQHAAAAAAAAAAB8AWoIAAAAAAAAAAAAAAAAAAAAAAAAqwEAAAAAAAB0CwAAAAAAAAAAfAFqDAAAAAAAAAAAAAAAAAAAAAAAAKsBAAAAAAAAZAGcA3wBag4AAAAAAAAAAAAAAAAAAAAAAAClAXQQAAAAAAAAAABqEwAAAAAAAAAAAAAAAAAAAAAAAHwBfAKsAqsCAAAAAAAArAOrBAAAAAAAAFMAKQROKQNyKAEAAHI/AAAAcikBAAByLAEAACkDcnYAAAByQgEAAHJ3AAAAKQpyjQAAAHJ2AAAAcigBAAByNwEAAHI/AAAAcjUBAAByOAEAAHIGAQAAciQBAAByLgEAAHI5AQAAcwMAAAAgICByPgAAAHIuAQAAehZEcm9wVGFibGVPcC5mcm9tX3RhYmxlRAUAAHNsAAAAgADxCAAQE9gMEY9KiUrYExiXPJE84Bsgnz2ZPdwYHJhVn1qZWtMYKNwcIKAVpx+hH9McMfEHBRYO8AgAExiXLJEs8AkFFg70DAAWI9cVLdEVLdgQFdArPvADABYu8wACFg70EwwQCvAADAkKckAAAABjAgAAAAAAAAAAAAAACQAAAAMAAAHz1AEAAJcAfABqAAAAAAAAAAAAAAAAAAAAAAAAAHIXfABqAAAAAAAAAAAAAAAAAAAAAAAAAGoCAAAAAAAAAAAAAAAAAAAAAAAAfQJuAmcAfQJ0BQAAAAAAAAAAagYAAAAAAAAAAAAAAAAAAAAAAAB8AasBAAAAAAAAfQMCAHwDaggAAAAAAAAAAAAAAAAAAAAAAAB8AGoKAAAAAAAAAAAAAAAAAAAAAAAAZwF8AqIBrQZ8AGoMAAAAAAAAAAAAAAAAAAAAAAAAfABqDgAAAAAAAAAAAAAAAAAAAAAAAHIafABqDgAAAAAAAAAAAAAAAAAAAAAAAGoRAAAAAAAAAAAAAAAAAAAAAAAAqwAAAAAAAABuAWkAfABqEgAAAAAAAAAAAAAAAAAAAAAAAHIVdBUAAAAAAAAAAHwAahIAAAAAAAAAAAAAAAAAAAAAAACrAQAAAAAAAG4BZwB8AGoWAAAAAAAAAAAAAAAAAAAAAAAAfABqAAAAAAAAAAAAAAAAAAAAAAAAAHIWfABqAAAAAAAAAAAAAAAAAAAAAAAAAGoYAAAAAAAAAAAAAAAAAAAAAAAAbgFkAWQCnAV8AGoaAAAAAAAAAAAAAAAAAAAAAAAApAGOAX0EfARTACkDTkYpBXIoAQAAcj8AAAByKQEAAHJ2AAAAciYBAAApDnJ3AAAAcqcAAAByFwAAAHKxAAAAcgQBAAByegAAAHIoAQAAcj8AAAByOwEAAHIpAQAAcjUBAABydgAAAHImAQAAckIBAAApBXI9AAAAcmYAAADaFGNvbHNfYW5kX2NvbnN0cmFpbnRzcrMAAADaAXRzBQAAACAgICAgcj4AAAByLwEAAHoURHJvcFRhYmxlT3AudG9fdGFibGVWBQAAc7wAAACAAPAGAAwQjz2KPdgjJ6c9oT3XIzjRIzjRDCDgIyXQDCDkFR7XFSzRFSzQLT7TFT+ICtgMHIhK1wwc0Qwc2AwQj0+JT/ADCw0K4A0h8QULDQrwBgAVGZdMkUzYJSmnWaJZkBSXGZEZlx6RHtQRIbBC2Cwwr02qTZRUmCSfLZkt1BUouHLYExeXO5E74Dc7t32yfZAElw2RDdcQM9IQM8gl8RELDQrwFAAPE49tiW3xFQsNCogB8BgAEBGICHJAAAAAch4BAABjAwAAAAAAAAACAAAABgAAAAsAAAHzPgAAAJcAAgB8AHwCfAN8BHwFrAGrBAAAAAAAAH0GfAFqAQAAAAAAAAAAAAAAAAAAAAAAAHwGqwEAAAAAAAABAHkCKQNhuAIAAElzc3VlIGEgImRyb3AgdGFibGUiIGluc3RydWN0aW9uIHVzaW5nIHRoZSBjdXJyZW50CiAgICAgICAgbWlncmF0aW9uIGNvbnRleHQuCgoKICAgICAgICBlLmcuOjoKCiAgICAgICAgICAgIGRyb3BfdGFibGUoImFjY291bnRzIikKCiAgICAgICAgOnBhcmFtIHRhYmxlX25hbWU6IE5hbWUgb2YgdGhlIHRhYmxlCiAgICAgICAgOnBhcmFtIHNjaGVtYTogT3B0aW9uYWwgc2NoZW1hIG5hbWUgdG8gb3BlcmF0ZSB3aXRoaW4uICBUbyBjb250cm9sCiAgICAgICAgIHF1b3Rpbmcgb2YgdGhlIHNjaGVtYSBvdXRzaWRlIG9mIHRoZSBkZWZhdWx0IGJlaGF2aW9yLCB1c2UKICAgICAgICAgdGhlIFNRTEFsY2hlbXkgY29uc3RydWN0CiAgICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkuc3FsLmVsZW1lbnRzLnF1b3RlZF9uYW1lYC4KICAgICAgICA6cGFyYW0gaWZfZXhpc3RzOiBJZiBUcnVlLCBhZGRzIElGIEVYSVNUUyBvcGVyYXRvciB3aGVuCiAgICAgICAgIGRyb3BwaW5nIHRoZSB0YWJsZS4KCiAgICAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDEuMTMuMwogICAgICAgIDpwYXJhbSBcKiprdzogT3RoZXIga2V5d29yZCBhcmd1bWVudHMgYXJlIHBhc3NlZCB0byB0aGUgdW5kZXJseWluZwogICAgICAgICA6Y2xhc3M6YHNxbGFsY2hlbXkuc2NoZW1hLlRhYmxlYCBvYmplY3QgY3JlYXRlZCBmb3IgdGhlIGNvbW1hbmQuCgogICAgICAgICkDcnYAAAByFAEAAHJCAQAATnKWAAAAKQdyXAAAAHKYAAAAcnoAAABydgAAAHIUAQAAcqgAAABymQAAAHMHAAAAICAgICAgIHI+AAAAckABAAB6FkRyb3BUYWJsZU9wLmRyb3BfdGFibGVtBQAAcyIAAACAAPE+AA4RkBqgRrBpyCLUDU2IAtgIEtcIGdEIGZgi1QgdckAAAAApDHJ6AAAAcm0AAABydgAAAHKeAAAAchQBAABy5AAAAHJCAQAAeiJPcHRpb25hbFtNdXRhYmxlTWFwcGluZ1tBbnksIEFueV1dcncAAAB6F09wdGlvbmFsW0NyZWF0ZVRhYmxlT3BdckoAAABynwAAAHI+AQAAKQJySgAAAHIkAQAAKQZyBAEAAHItAAAAciUBAAByPQEAAHJKAAAAci0BAAByQwAAAHI/AQAAKQxymAAAAHIZAAAAcnoAAABybQAAAHJ2AAAAcp4AAAByFAEAAHLkAAAAcqgAAAByBQAAAHJKAAAAcp8AAAApC3JMAAAAck0AAAByTgAAAHJPAAAAcnsAAABySQAAAHJGAAAAcnEAAAByLgEAAHIvAQAAckABAAByOwAAAHJAAAAAcj4AAAByLQEAAHItAQAAKAUAAHP8AAAAhADhBCvwDAAhJdgkKNg3O9gsMPEPEAUh4BQX8AUQBSHwCAARHvAJEAUh8AoAFCLwCxAFIfAMABM18A0QBSHwDgATKvAPEAUh8BAACg7zERAFIfMkAQUx8wYBBTnwBgAGEeBITPEDDwUK2BQZ8AMPBQrYM0XwAw8FCuAJFPIFDwUK8wMABhHwAg8FCvAkAD9DAfADFQUR2CE78AMVBRHgCQ7zBRUFEfAuAAYR8AwAISXYJCjxDR8FHuAUHvAFHwUe8AYAFRjwBx8FHvAKABEe8AsfBR7wDAAUIvANHwUe8A4ADxLwDx8FHvAQAAoO8hEfBR7zAwAGEfECHwUeckAAAAByLQEAAGMAAAAAAAAAAAAAAAADAAAAAAAAAfMoAAAAlwBlAFoBZABaAmQBWgNkAmQDnAEJAAkACQAJAAkAZAVkBIQGWgR5AikG2gxBbHRlclRhYmxlT3B6I1JlcHJlc2VudCBhbiBhbHRlciB0YWJsZSBvcGVyYXRpb24uTnKTAAAAYwIAAAAAAAAAAQAAAAIAAAADAAAB8yAAAACXAHwBfABfAAAAAAAAAAAAfAJ8AF8BAAAAAAAAAAB5AHJDAAAAciEBAAApA3I9AAAAcnoAAABydgAAAHMDAAAAICAgcj4AAAByewAAAHoVQWx0ZXJUYWJsZU9wLl9faW5pdF9fkwUAAHMSAAAAgADwDAAbJYgEjA/YFhyIBI0LckAAAAApBnJ6AAAAcm0AAABydgAAAHKeAAAAckoAAABynwAAACkFckwAAAByTQAAAHJOAAAAck8AAAByewAAAHI7AAAAckAAAAByPgAAAHJNAQAAck0BAACQBQAAcysAAACEANkELfAMACEl8QkHBR3gFBfwBQcFHfAIABEe8AkHBR3wCgAKDvQLBwUdckAAAAByTQEAANoMcmVuYW1lX3RhYmxlYwAAAAAAAAAAAAAAAAQAAAAAAAAB82IAAACHAJcAZQBaAWQAWgJkAVoDZAJkA5wBCQAJAAkACQAJAAkACQBkBogAZgFkBIQOWgRlBWQCZAOcAQkACQAJAAkACQAJAAkACQAJAGQHZAWEBqsAAAAAAAAAWgaIAHgBWgdTACkI2g1SZW5hbWVUYWJsZU9weiNSZXByZXNlbnQgYSByZW5hbWUgdGFibGUgb3BlcmF0aW9uLk5ykwAAAGMDAAAAAAAAAAEAAAAEAAAAAwAAAfM2AAAAlQGXAHQAAAAAAAAAAACJBHwAjQUAAHwBfAOsAasCAAAAAAAAAQB8AnwAXwIAAAAAAAAAAHkAqQJOcpMAAAApA9oFc3VwZXJyewAAANoObmV3X3RhYmxlX25hbWUpBXI9AAAA2g5vbGRfdGFibGVfbmFtZXJVAQAAcnYAAADaCV9fY2xhc3NfX3MFAAAAICAgIIByPgAAAHJ7AAAAehZSZW5hbWVUYWJsZU9wLl9faW5pdF9foQUAAHMfAAAA+IAA9A4ACQ6JB9EIGJgesAbQCBjUCDfYHiyIBNUIG3JAAAAAYwQAAAAAAAAAAQAAAAUAAAADAAAB8zoAAACXAAIAfAB8AnwDfASsAasDAAAAAAAAfQV8AWoBAAAAAAAAAAAAAAAAAAAAAAAAfAWrAQAAAAAAAFMAKQJhbAEAAEVtaXQgYW4gQUxURVIgVEFCTEUgdG8gcmVuYW1lIGEgdGFibGUuCgogICAgICAgIDpwYXJhbSBvbGRfdGFibGVfbmFtZTogb2xkIG5hbWUuCiAgICAgICAgOnBhcmFtIG5ld190YWJsZV9uYW1lOiBuZXcgbmFtZS4KICAgICAgICA6cGFyYW0gc2NoZW1hOiBPcHRpb25hbCBzY2hlbWEgbmFtZSB0byBvcGVyYXRlIHdpdGhpbi4gIFRvIGNvbnRyb2wKICAgICAgICAgcXVvdGluZyBvZiB0aGUgc2NoZW1hIG91dHNpZGUgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQogICAgICAgICB0aGUgU1FMQWxjaGVteSBjb25zdHJ1Y3QKICAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS5zcWwuZWxlbWVudHMucXVvdGVkX25hbWVgLgoKICAgICAgICBykwAAAHKWAAAAKQZyXAAAAHKYAAAAclYBAAByVQEAAHJ2AAAAcpkAAABzBgAAACAgICAgIHI+AAAAck8BAAB6GlJlbmFtZVRhYmxlT3AucmVuYW1lX3RhYmxlqwUAAHMjAAAAgADxJgAOEZAeoB64BtQNP4gC2A8Z1w8g0Q8goBLTDyTQCCRyQAAAACkIclYBAABybQAAAHJVAQAAcm0AAABydgAAAHKeAAAAckoAAABynwAAACkKcpgAAAByGQAAAHJWAQAAcm0AAAByVQEAAHJtAAAAcnYAAAByngAAAHJKAAAAcp8AAAApCHJMAAAAck0AAAByTgAAAHJPAAAAcnsAAABycQAAAHJPAQAA2g1fX2NsYXNzY2VsbF9fqQFyVwEAAHMBAAAAQHI+AAAAclEBAAByUQEAAJ0FAABzfwAAAPiEAOEELfAOACEl8QsIBS3gGBvwBQgFLfAGABkc8AcIBS3wCgARHvALCAUt8AwACg71DQgFLfAUAAYR8A4AISXxDRMFJeAUHvAFEwUl8AYAGRzwBxMFJfAIABkc8AkTBSXwDAARHvANEwUl8A4ACg7yDxMFJfMDAAYR9AITBSVyQAAAAHJRAQAA2hRjcmVhdGVfdGFibGVfY29tbWVudNoaYmF0Y2hfY3JlYXRlX3RhYmxlX2NvbW1lbnRjAAAAAAAAAAAAAAAABAAAAAAAAAHzqgAAAJcAZQBaAWQAWgJkAVoDZAJkAmQDnAIJAAkACQAJAAkACQAJAAkACQBkDGQEhAZaBGUFZAJkAmQFnAIJAAkACQAJAAkACQAJAAkACQAJAAkAZA1kBoQGqwAAAAAAAABaBmUFZAJkB5wBCQAJAAkACQAJAAkACQBkDmQIhAarAAAAAAAAAFoHZA9kCYQEWggJAGQQCQAJAAkAZBFkCoQFWglkEmQLhARaCnkCKRPaFENyZWF0ZVRhYmxlQ29tbWVudE9weilSZXByZXNlbnQgYSBDT01NRU5UIE9OIGB0YWJsZWAgb3BlcmF0aW9uLk6pAnJ2AAAA2hBleGlzdGluZ19jb21tZW50YwMAAAAAAAAAAgAAAAIAAAADAAAB8zwAAACXAHwBfABfAAAAAAAAAAAAfAJ8AF8BAAAAAAAAAAB8BHwAXwIAAAAAAAAAAHwDfABfAwAAAAAAAAAAeQByQwAAACkEcnoAAAByKAEAAHJgAQAAcnYAAAApBXI9AAAAcnoAAAByKAEAAHJ2AAAAcmABAABzBQAAACAgICAgcj4AAAByewAAAHodQ3JlYXRlVGFibGVDb21tZW50T3AuX19pbml0X1/JBQAAcyEAAACAAPAQABsliASMD9gXHogEjAzYIDCIBNQIHdgWHIgEjQtyQAAAAKkCcmABAABydgAAAGMEAAAAAAAAAAIAAAAGAAAAAwAAAfM8AAAAlwACAHwAfAJ8A3wEfAWsAasEAAAAAAAAfQZ8AWoBAAAAAAAAAAAAAAAAAAAAAAAAfAarAQAAAAAAAFMAKQJhUQIAAEVtaXQgYSBDT01NRU5UIE9OIG9wZXJhdGlvbiB0byBzZXQgdGhlIGNvbW1lbnQgZm9yIGEgdGFibGUuCgogICAgICAgIDpwYXJhbSB0YWJsZV9uYW1lOiBzdHJpbmcgbmFtZSBvZiB0aGUgdGFyZ2V0IHRhYmxlLgogICAgICAgIDpwYXJhbSBjb21tZW50OiBzdHJpbmcgdmFsdWUgb2YgdGhlIGNvbW1lbnQgYmVpbmcgcmVnaXN0ZXJlZCBhZ2FpbnN0CiAgICAgICAgIHRoZSBzcGVjaWZpZWQgdGFibGUuCiAgICAgICAgOnBhcmFtIGV4aXN0aW5nX2NvbW1lbnQ6IFN0cmluZyB2YWx1ZSBvZiBhIGNvbW1lbnQKICAgICAgICAgYWxyZWFkeSByZWdpc3RlcmVkIG9uIHRoZSBzcGVjaWZpZWQgdGFibGUsIHVzZWQgd2l0aGluIGF1dG9nZW5lcmF0ZQogICAgICAgICBzbyB0aGF0IHRoZSBvcGVyYXRpb24gaXMgcmV2ZXJzaWJsZSwgYnV0IG5vdCByZXF1aXJlZCBmb3IgZGlyZWN0CiAgICAgICAgIHVzZS4KCiAgICAgICAgLi4gc2VlYWxzbzo6CgogICAgICAgICAgICA6bWV0aDpgLk9wZXJhdGlvbnMuZHJvcF90YWJsZV9jb21tZW50YAoKICAgICAgICAgICAgOnBhcmFtcmVmOmAuT3BlcmF0aW9ucy5hbHRlcl9jb2x1bW4uY29tbWVudGAKCiAgICAgICAgcmIBAABylgAAACkHclwAAABymAAAAHJ6AAAAcigBAAByYAEAAHJ2AAAAcpkAAABzBwAAACAgICAgICByPgAAAHJbAQAAeilDcmVhdGVUYWJsZUNvbW1lbnRPcC5jcmVhdGVfdGFibGVfY29tbWVudNYFAABzLQAAAIAA8TgADhHYDBbYDBPYHS3YExn0CQUOCogC8AwAEBrXDyDRDyCgEtMPJNAIJHJAAAAAqQFyYAEAAGMDAAAAAAAAAAEAAAAGAAAAAwAAAfOMAAAAlwACAHwAfAFqAAAAAAAAAAAAAAAAAAAAAAAAAGoCAAAAAAAAAAAAAAAAAAAAAAAAfAJ8A3wBagAAAAAAAAAAAAAAAAAAAAAAAABqBAAAAAAAAAAAAAAAAAAAAAAAAKwBqwQAAAAAAAB9BHwBagcAAAAAAAAAAAAAAAAAAAAAAAB8BKsBAAAAAAAAUwApAmHDAQAARW1pdCBhIENPTU1FTlQgT04gb3BlcmF0aW9uIHRvIHNldCB0aGUgY29tbWVudCBmb3IgYSB0YWJsZQogICAgICAgIHVzaW5nIHRoZSBjdXJyZW50IGJhdGNoIG1pZ3JhdGlvbiBjb250ZXh0LgoKICAgICAgICA6cGFyYW0gY29tbWVudDogc3RyaW5nIHZhbHVlIG9mIHRoZSBjb21tZW50IGJlaW5nIHJlZ2lzdGVyZWQgYWdhaW5zdAogICAgICAgICB0aGUgc3BlY2lmaWVkIHRhYmxlLgogICAgICAgIDpwYXJhbSBleGlzdGluZ19jb21tZW50OiBTdHJpbmcgdmFsdWUgb2YgYSBjb21tZW50CiAgICAgICAgIGFscmVhZHkgcmVnaXN0ZXJlZCBvbiB0aGUgc3BlY2lmaWVkIHRhYmxlLCB1c2VkIHdpdGhpbiBhdXRvZ2VuZXJhdGUKICAgICAgICAgc28gdGhhdCB0aGUgb3BlcmF0aW9uIGlzIHJldmVyc2libGUsIGJ1dCBub3QgcmVxdWlyZWQgZm9yIGRpcmVjdAogICAgICAgICB1c2UuCgogICAgICAgIHJiAQAAcpsAAAApBXJcAAAAcpgAAAByKAEAAHJgAQAAcpkAAABzBQAAACAgICAgcj4AAAByXAEAAHovQ3JlYXRlVGFibGVDb21tZW50T3AuYmF0Y2hfY3JlYXRlX3RhYmxlX2NvbW1lbnT6BQAAc0EAAACAAPEoAA4R2AwWj0+JT9cMJtEMJtgME9gdLdgTHZc/kT/XEynREyn0CQUOCogC8AwAEBrXDyDRDyCgEtMPJNAIJHJAAAAAYwEAAAAAAAAAAAAAAAYAAAADAAAB8+AAAACXAHwAagAAAAAAAAAAAAAAAAAAAAAAAACALHQDAAAAAAAAAAB8AGoEAAAAAAAAAAAAAAAAAAAAAAAAfABqBgAAAAAAAAAAAAAAAAAAAAAAAHwAaggAAAAAAAAAAAAAAAAAAAAAAACsAasDAAAAAAAAUwB0CwAAAAAAAAAAfABqBAAAAAAAAAAAAAAAAAAAAAAAAHwAagAAAAAAAAAAAAAAAAAAAAAAAAB8AGoGAAAAAAAAAAAAAAAAAAAAAAAAfABqCAAAAAAAAAAAAAAAAAAAAAAAAKwBqwQAAAAAAABTACkC+jJSZXZlcnNlcyB0aGUgQ09NTUVOVCBPTiBvcGVyYXRpb24gYWdhaW5zdCBhIHRhYmxlLnJiAQAAKQZyYAEAANoSRHJvcFRhYmxlQ29tbWVudE9wcnoAAAByKAEAAHJ2AAAAcl4BAAByPAAAAHMBAAAAIHI+AAAAckYAAAB6HENyZWF0ZVRhYmxlQ29tbWVudE9wLnJldmVyc2UWBgAAc10AAACAAOALD9cLINELINALKNwTJdgQFJcPkQ/YISWnHKEc2Bcbl3uRe/QHBBQO8AAEDQ70DAAUKNgQFJcPkQ/YEBTXECXRECXYISWnHKEc2Bcbl3uRe/QJBRQO8AAFDQ5yQAAAAGMCAAAAAAAAAAAAAAAFAAAAAwAAAfOQAAAAlwB0AQAAAAAAAAAAagIAAAAAAAAAAAAAAAAAAAAAAAB8AasBAAAAAAAAfQJ8AmoFAAAAAAAAAAAAAAAAAAAAAAAAfABqBgAAAAAAAAAAAAAAAAAAAAAAAHwAaggAAAAAAAAAAAAAAAAAAAAAAAB8AGoKAAAAAAAAAAAAAAAAAAAAAAAArAGrAwAAAAAAAFMAKQJOKQJydgAAAHIoAQAAKQZyFwAAAHKxAAAAcgQBAAByegAAAHJ2AAAAcigBAABysgAAAHMDAAAAICAgcj4AAAByLwEAAHodQ3JlYXRlVGFibGVDb21tZW50T3AudG9fdGFibGUmBgAAc0AAAACAAPQGABYf1xUs0RUs0C0+0xU/iArgDxnXDx/RDx/YDBCPT4lPoESnS6FLuBS/HLkc8AMAECDzAAIQCvAAAgkKckAAAABjAQAAAAAAAAAAAAAAAwAAAAMAAAHzPAAAAJcAZAF8AGoBAAAAAAAAAAAAAAAAAAAAAAAAqwAAAAAAAAB8AGoCAAAAAAAAAAAAAAAAAAAAAAAAZgNTACkCTtoRYWRkX3RhYmxlX2NvbW1lbnQpAnIvAQAAcmABAAByPAAAAHMBAAAAIHI+AAAAckkAAAB6IkNyZWF0ZVRhYmxlQ29tbWVudE9wLnRvX2RpZmZfdHVwbGUvBgAAcxsAAACAANgQI6BUp12hXaNfsGTXNkvRNkvQD0zQCExyQAAAACkKcnoAAABybQAAAHIoAQAAcp4AAABydgAAAHKeAAAAcmABAAByngAAAHJKAAAAcp8AAAApDHKYAAAAchkAAAByegAAAHJtAAAAcigBAAByngAAAHJgAQAAcp4AAABydgAAAHKeAAAAckoAAABynwAAACkIcpgAAAByGAAAAHIoAQAAcp4AAAByYAEAAHKeAAAAckoAAABynwAAACkCckoAAAB6L1VuaW9uW0NyZWF0ZVRhYmxlQ29tbWVudE9wLCBEcm9wVGFibGVDb21tZW50T3BdckMAAAByPwEAAHJLAAAAKQtyTAAAAHJNAAAAck4AAAByTwAAAHJ7AAAAcnEAAAByWwEAAHJcAQAAckYAAAByLwEAAHJJAAAAcjsAAAByQAAAAHI+AAAAcl4BAAByXgEAAMIFAABzAAEAAIQA8QoABTTwDgAhJdgqLvENCwUd4BQX8AULBR3wBgASH/AHCwUd8AoAER7wCwsFHfAMABso8A0LBR3wDgAKDvMPCwUd8BoABhHwDgArL9ggJPEPIQUl4BQe8AUhBSXwBgAVGPAHIQUl8AgAEh/wCSEFJfAMABso8A0hBSXwDgARHvAPIQUl8BAACg7yESEFJfMDAAYR8AIhBSXwRgEABhHwDAArL/ELGQUl4BQj8AUZBSXwBgASH/AHGQUl8AoAGyjwCxkFJfAMAAoO8g0ZBSXzAwAGEfACGQUl8zYOBQ7wIgA/QwHwAwcFCtghO/ADBwUK4AkO8wUHBQr0EgEFTQFyQAAAAHJeAQAA2hJkcm9wX3RhYmxlX2NvbW1lbnTaGGJhdGNoX2Ryb3BfdGFibGVfY29tbWVudGMAAAAAAAAAAAAAAAAEAAAAAAAAAfOeAAAAlwBlAFoBZABaAmQBWgNkAmQCZAOcAgkACQAJAAkACQAJAAkAZAxkBIQGWgRlBWQCZAJkBZwCCQAJAAkACQAJAAkACQAJAAkAZA1kBoQGqwAAAAAAAABaBmUFZAJkB5wBCQAJAAkACQAJAGQOZAiEBqsAAAAAAAAAWgdkD2QJhARaCAkAZBAJAAkACQBkEWQKhAVaCWQSZAuEBFoKeQIpE3JoAQAAejpSZXByZXNlbnQgYW4gb3BlcmF0aW9uIHRvIHJlbW92ZSB0aGUgY29tbWVudCBmcm9tIGEgdGFibGUuTnJfAQAAYwIAAAAAAAAAAgAAAAIAAAADAAAB8y4AAACXAHwBfABfAAAAAAAAAAAAfAN8AF8BAAAAAAAAAAB8AnwAXwIAAAAAAAAAAHkAckMAAAApA3J6AAAAcmABAABydgAAACkEcj0AAAByegAAAHJ2AAAAcmABAABzBAAAACAgICByPgAAAHJ7AAAAehtEcm9wVGFibGVDb21tZW50T3AuX19pbml0X186BgAAcxoAAACAAPAOABsliASMD9ggMIgE1Agd2BYciASNC3JAAAAAcmIBAABjAwAAAAAAAAACAAAABQAAAAMAAAHzOgAAAJcAAgB8AHwCfAN8BKwBqwMAAAAAAAB9BXwBagEAAAAAAAAAAAAAAAAAAAAAAAB8BasBAAAAAAAAUwApAmGkAQAASXNzdWUgYSAiZHJvcCB0YWJsZSBjb21tZW50IiBvcGVyYXRpb24gdG8KICAgICAgICByZW1vdmUgYW4gZXhpc3RpbmcgY29tbWVudCBzZXQgb24gYSB0YWJsZS4KCiAgICAgICAgOnBhcmFtIHRhYmxlX25hbWU6IHN0cmluZyBuYW1lIG9mIHRoZSB0YXJnZXQgdGFibGUuCiAgICAgICAgOnBhcmFtIGV4aXN0aW5nX2NvbW1lbnQ6IEFuIG9wdGlvbmFsIHN0cmluZyB2YWx1ZSBvZiBhIGNvbW1lbnQgYWxyZWFkeQogICAgICAgICByZWdpc3RlcmVkIG9uIHRoZSBzcGVjaWZpZWQgdGFibGUuCgogICAgICAgIC4uIHNlZWFsc286OgoKICAgICAgICAgICAgOm1ldGg6YC5PcGVyYXRpb25zLmNyZWF0ZV90YWJsZV9jb21tZW50YAoKICAgICAgICAgICAgOnBhcmFtcmVmOmAuT3BlcmF0aW9ucy5hbHRlcl9jb2x1bW4uY29tbWVudGAKCiAgICAgICAgcmIBAABylgAAACkGclwAAABymAAAAHJ6AAAAcmABAABydgAAAHKZAAAAcwYAAAAgICAgICByPgAAAHJsAQAAeiVEcm9wVGFibGVDb21tZW50T3AuZHJvcF90YWJsZV9jb21tZW50RQYAAHMkAAAAgADxMAAOEZAa0C4+wHbUDU6IAtgPGdcPINEPIKAS0w8k0AgkckAAAAByZAEAAGMCAAAAAAAAAAEAAAAFAAAAAwAAAfOKAAAAlwACAHwAfAFqAAAAAAAAAAAAAAAAAAAAAAAAAGoCAAAAAAAAAAAAAAAAAAAAAAAAfAJ8AWoAAAAAAAAAAAAAAAAAAAAAAAAAagQAAAAAAAAAAAAAAAAAAAAAAACsAasDAAAAAAAAfQN8AWoHAAAAAAAAAAAAAAAAAAAAAAAAfAOrAQAAAAAAAFMAKQJhFQEAAElzc3VlIGEgImRyb3AgdGFibGUgY29tbWVudCIgb3BlcmF0aW9uIHRvCiAgICAgICAgcmVtb3ZlIGFuIGV4aXN0aW5nIGNvbW1lbnQgc2V0IG9uIGEgdGFibGUgdXNpbmcgdGhlIGN1cnJlbnQKICAgICAgICBiYXRjaCBvcGVyYXRpb25zIGNvbnRleHQuCgogICAgICAgIDpwYXJhbSBleGlzdGluZ19jb21tZW50OiBBbiBvcHRpb25hbCBzdHJpbmcgdmFsdWUgb2YgYSBjb21tZW50IGFscmVhZHkKICAgICAgICAgcmVnaXN0ZXJlZCBvbiB0aGUgc3BlY2lmaWVkIHRhYmxlLgoKICAgICAgICByYgEAAHKbAAAAKQRyXAAAAHKYAAAAcmABAABymQAAAHMEAAAAICAgIHI+AAAAcm0BAAB6K0Ryb3BUYWJsZUNvbW1lbnRPcC5iYXRjaF9kcm9wX3RhYmxlX2NvbW1lbnRgBgAAcz4AAACAAPEgAA4R2AwWj0+JT9cMJtEMJtgdLdgTHZc/kT/XEynREyn0BwQOCogC8AoAEBrXDyDRDyCgEtMPJNAIJHJAAAAAYwEAAAAAAAAAAAAAAAUAAAADAAAB81oAAACXAHQBAAAAAAAAAAB8AGoCAAAAAAAAAAAAAAAAAAAAAAAAfABqBAAAAAAAAAAAAAAAAAAAAAAAAHwAagYAAAAAAAAAAAAAAAAAAAAAAACsAasDAAAAAAAAUwApAnJnAQAAcpMAAAApBHJeAQAAcnoAAAByYAEAAHJ2AAAAcjwAAABzAQAAACByPgAAAHJGAAAAehpEcm9wVGFibGVDb21tZW50T3AucmV2ZXJzZXcGAABzJAAAAIAA5A8j2AwQj0+JT5hU1x0y0R0yuDS/O7k79AMCEArwAAIJCnJAAAAAYwIAAAAAAAAAAAAAAAQAAAADAAAB83oAAACXAHQBAAAAAAAAAABqAgAAAAAAAAAAAAAAAAAAAAAAAHwBqwEAAAAAAAB9AnwCagUAAAAAAAAAAAAAAAAAAAAAAAB8AGoGAAAAAAAAAAAAAAAAAAAAAAAAfABqCAAAAAAAAAAAAAAAAAAAAAAAAKwBqwIAAAAAAABTAHJTAQAAKQVyFwAAAHKxAAAAcgQBAAByegAAAHJ2AAAAcrIAAABzAwAAACAgIHI+AAAAci8BAAB6G0Ryb3BUYWJsZUNvbW1lbnRPcC50b190YWJsZX0GAABzMwAAAIAA9AYAFh/XFSzRFSzQLT7TFT+ICuAPGdcPH9EPH6AEpw+hD7gEvwu5C9APH9MPRNAIRHJAAAAAYwEAAAAAAAAAAAAAAAMAAAADAAAB8yYAAACXAGQBfABqAQAAAAAAAAAAAAAAAAAAAAAAAKsAAAAAAAAAZgJTACkCTtoUcmVtb3ZlX3RhYmxlX2NvbW1lbnRyMgEAAHI8AAAAcwEAAAAgcj4AAABySQAAAHogRHJvcFRhYmxlQ29tbWVudE9wLnRvX2RpZmZfdHVwbGWEBgAAcxMAAACAANgQJqgErw2pDasP0A840Ag4ckAAAAApCHJ6AAAAcm0AAABydgAAAHKeAAAAcmABAAByngAAAHJKAAAAcp8AAAApCnKYAAAAchkAAAByegAAAHJtAAAAcmABAAByngAAAHJ2AAAAcp4AAABySgAAAHKfAAAAKQZymAAAAHIYAAAAcmABAAByngAAAHJKAAAAcp8AAAApAnJKAAAAcl4BAAByQwAAAHI/AQAAcksAAAApC3JMAAAAck0AAAByTgAAAHJPAAAAcnsAAABycQAAAHJsAQAAcm0BAAByRgAAAHIvAQAAckkAAAByOwAAAHJAAAAAcj4AAAByaAEAAHJoAQAAMwYAAHPkAAAAhADxCgAFRQHwDAAhJdgqLvELCQUd4BQX8AUJBR3wCAARHvAJCQUd8AoAGyjwCwkFHfAMAAoO8w0JBR3wFgAGEfAMACsv2CAk8Q0YBSXgFB7wBRgFJfAGABUY8AcYBSXwCgAbKPALGAUl8AwAER7wDRgFJfAOAAoO8g8YBSXzAwAGEfACGAUl8DQABhHwCgArL/EJFAUl4BQj8AUUBSXwCAAbKPAJFAUl8AoACg7yCxQFJfMDAAYR8AIUBSXzLAQFCvAOAD9DAfADBQVFAdghO/ADBQVFAeAJDvMFBQVFAfQOAQU5ckAAAAByaAEAANoMYWx0ZXJfY29sdW1u2hJiYXRjaF9hbHRlcl9jb2x1bW5jAAAAAAAAAAAAAAAADQAAAAAAAAHzVAEAAIcAlwBlAFoBZABaAmQBWgNkAmQCZANkAmQCZAJkA2QDZAJkAmQEnAoJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQBkDYgAZgFkBYQOWgRkDmQGhARaBWQPZAeEBFoGZBBkCIQEWgdlCGQCZANkA2QCZAJkAmQDZAJkAmQCZAmcCgkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQBkEWQKhAarAAAAAAAAAFoJZQhkAmQDZANkAmQCZAJkA2QCZAJkAmQCZAucCwkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQBkEmQMhAarAAAAAAAAAFoKiAB4AVoLUwApE9oNQWx0ZXJDb2x1bW5PcHokUmVwcmVzZW50IGFuIGFsdGVyIGNvbHVtbiBvcGVyYXRpb24uTkYpCnJ2AAAA2g1leGlzdGluZ190eXBl2hdleGlzdGluZ19zZXJ2ZXJfZGVmYXVsdNoRZXhpc3RpbmdfbnVsbGFibGVyYAEAANoPbW9kaWZ5X251bGxhYmxl2g5tb2RpZnlfY29tbWVudNoVbW9kaWZ5X3NlcnZlcl9kZWZhdWx02gttb2RpZnlfbmFtZdoLbW9kaWZ5X3R5cGVjAwAAAAAAAAAKAAAABAAAAAsAAAHzwgAAAJUBlwB0AAAAAAAAAAAAiQ58AI0FAAB8AXwDrAGrAgAAAAAAAAEAfAJ8AF8CAAAAAAAAAAB8BHwAXwMAAAAAAAAAAHwFfABfBAAAAAAAAAAAfAZ8AF8FAAAAAAAAAAB8B3wAXwYAAAAAAAAAAHwIfABfBwAAAAAAAAAAfAl8AF8IAAAAAAAAAAB8CnwAXwkAAAAAAAAAAHwLfABfCgAAAAAAAAAAfAx8AF8LAAAAAAAAAAB8DXwAXwwAAAAAAAAAAHkAclMBAAApDXJUAQAAcnsAAADaC2NvbHVtbl9uYW1lcnoBAAByewEAAHJ8AQAAcmABAAByfQEAAHJ+AQAAcn8BAABygAEAAHKBAQAAcqgAAAApD3I9AAAAcnoAAABygwEAAHJ2AAAAcnoBAAByewEAAHJ8AQAAcmABAAByfQEAAHJ+AQAAcn8BAABygAEAAHKBAQAAcqgAAAByVwEAAHMPAAAAICAgICAgICAgICAgICCAcj4AAAByewAAAHoWQWx0ZXJDb2x1bW5PcC5fX2luaXRfX40GAABzbgAAAPiAAPQiAAkOiQfRCBiYGqhG0AgY1Agz2BsmiATUCBjYHSqIBNQIGtgnPogE1Agk2CEyiATUCB7YIDCIBNQIHdgfLogE1Agc2B4siATUCBvYJTqIBNQIItgbJogE1AgY2BsmiATUCBjYEhSIBI0HckAAAABjAQAAAAAAAAAAAAAACgAAAAMAAAHzKgMAAJcAZwB9AXwAagAAAAAAAAAAAAAAAAAAAAAAAAB8AGoCAAAAAAAAAAAAAAAAAAAAAAAAfABqBAAAAAAAAAAAAAAAAAAAAAAAAH0EfQN9AnwAagYAAAAAAAAAAAAAAAAAAAAAAACBTnwBagkAAAAAAAAAAAAAAAAAAAAAAABkAXwCfAN8BHwAagoAAAAAAAAAAAAAAAAAAAAAAAB8AGoMAAAAAAAAAAAAAAAAAAAAAAAAfABqDgAAAAAAAAAAAAAAAAAAAAAAAGQCnAN8AGoQAAAAAAAAAAAAAAAAAAAAAAAAfABqBgAAAAAAAAAAAAAAAAAAAAAAAGYHqwEAAAAAAAABAHwAahIAAAAAAAAAAAAAAAAAAAAAAACBTnwBagkAAAAAAAAAAAAAAAAAAAAAAABkA3wCfAN8BHwAahAAAAAAAAAAAAAAAAAAAAAAAAB8AGoMAAAAAAAAAAAAAAAAAAAAAAAAfABqDgAAAAAAAAAAAAAAAAAAAAAAAGQEnAN8AGoKAAAAAAAAAAAAAAAAAAAAAAAAfABqEgAAAAAAAAAAAAAAAAAAAAAAAGYHqwEAAAAAAAABAHwAahQAAAAAAAAAAAAAAAAAAAAAAABkBXUBck58AWoJAAAAAAAAAAAAAAAAAAAAAAAAZAZ8AnwDfAR8AGoKAAAAAAAAAAAAAAAAAAAAAAAAfABqEAAAAAAAAAAAAAAAAAAAAAAAAHwAag4AAAAAAAAAAAAAAAAAAAAAAABkB5wDfABqDAAAAAAAAAAAAAAAAAAAAAAAAHwAahQAAAAAAAAAAAAAAAAAAAAAAABmB6sBAAAAAAAAAQB8AGoWAAAAAAAAAAAAAAAAAAAAAAAAZAV1AXJOfAFqCQAAAAAAAAAAAAAAAAAAAAAAAGQIfAJ8A3wEfABqCgAAAAAAAAAAAAAAAAAAAAAAAHwAahAAAAAAAAAAAAAAAAAAAAAAAAB8AGoMAAAAAAAAAAAAAAAAAAAAAAAAZAmcA3wAag4AAAAAAAAAAAAAAAAAAAAAAAB8AGoWAAAAAAAAAAAAAAAAAAAAAAAAZgerAQAAAAAAAAEAfAFTACkKTnKBAQAAKQNyfAEAAHJ7AQAAcmABAAByfQEAACkDcnoBAAByewEAAHJgAQAARtoObW9kaWZ5X2RlZmF1bHQpA3J8AQAAcnoBAAByYAEAAHJ+AQAAKQNyfAEAAHJ6AQAAcnsBAAApDHJ2AAAAcnoAAABygwEAAHKBAQAA2gZhcHBlbmRyfAEAAHJ7AQAAcmABAAByegEAAHJ9AQAAcn8BAAByfgEAACkFcj0AAADaCGNvbF9kaWZmcnYAAADaBXRuYW1l2gVjbmFtZXMFAAAAICAgICByPgAAAHJJAAAAehtBbHRlckNvbHVtbk9wLnRvX2RpZmZfdHVwbGWrBgAAc6cBAACAANgTFYgI2B8jn3uZe6hEr0+pT7hU1z1N0T1NkHWQBYgG4AsP1wsb0Qsb0Asn2AwUj0+JT+AUIdgUGtgUGdgUGeAtMdctQ9EtQ+AcINccONEcOOAsMNcsQdEsQfELBhUW8A4AFRnXFCbRFCbYFBjXFCTRFCTwGw4REvQDEA0O8CQADBDXCx/RCx/QCyvYDBSPT4lP4BQl2BQa2BQZ2BQZ4Ckt1yk70Sk74Bwg1xw40Rw44Cww1yxB0SxB8QsGFRbwDgAVGdcUKtEUKtgUGNcUKNEUKPAbDhES9AMQDQ7wJAAMENcLJdELJahV0Qsy2AwUj0+JT+AUJNgUGtgUGdgUGeAtMdctQ9EtQ9gpLdcpO9EpO9gsMNcsQdEsQfEHBBUW8AoAFRnXFDDRFDDYFBjXFC7RFC7wFwwREvQDDg0O8CAADBDXCx7RCx6gZdELK9gMFI9PiU/gFCTYFBrYFBnYFBngLTHXLUPRLUPYKS3XKTvRKTvgHCDXHDjRHDjxCQYVFvAOABUZ1xQp0RQp2BQY1xQn0RQn8BsOERL0AxANDvAkABAYiA9yQAAAAGMBAAAAAAAAAAAAAAAEAAAAAwAAAfPOAAAAlwB8AGoAAAAAAAAAAAAAAAAAAAAAAAAAZAB1AXgBcy4BAHwAagIAAAAAAAAAAAAAAAAAAAAAAABkAXUBeAFzHgEAfABqBAAAAAAAAAAAAAAAAAAAAAAAAGQAdQF4AXMOAQB8AGoGAAAAAAAAAAAAAAAAAAAAAAAAZAF1AX0BfAFyAXkCfABqCAAAAAAAAAAAAAAAAAAAAAAAAEQAXRUAAH0CfAJqCwAAAAAAAAAAAAAAAAAAAAAAAGQDqwEAAAAAAABzAYwVAQB5AgQAeQEpBE5GVNoHbW9kaWZ5XykGcn0BAAByfwEAAHKBAQAAcn4BAAByqAAAANoKc3RhcnRzd2l0aCkDcj0AAADaA2hjMXKoAAAAcwMAAAAgICByPgAAANoLaGFzX2NoYW5nZXN6GUFsdGVyQ29sdW1uT3AuaGFzX2NoYW5nZXP7BgAAc3oAAACAAOAMENcMINEMIKgE0Aws8gADDTDYDxPXDynRDymwFdAPNvIDAw0w4A8T1w8f0Q8foHTQDyvyBQMNMPAGABAU1w8i0Q8iqCXQDy/wCQAJDPEMAAwP2BMX2BIWlyeUJ4hC2A8Rj32JfZhZ1Q8n2Rcb8AUAExrwCAAUGXJAAAAAYwEAAAAAAAAAAAAAAAcAAAADAAAB8+gCAACXAHwAagAAAAAAAAAAAAAAAAAAAAAAAABqAwAAAAAAAAAAAAAAAAAAAAAAAKsAAAAAAAAAfQF8AGoEAAAAAAAAAAAAAAAAAAAAAAAAfAFkATwAAAB8AGoGAAAAAAAAAAAAAAAAAAAAAAAAfAFkAjwAAAB8AGoIAAAAAAAAAAAAAAAAAAAAAAAAfAFkAzwAAAB8AGoKAAAAAAAAAAAAAAAAAAAAAAAAfAFkBDwAAAB8AGoMAAAAAAAAAAAAAAAAAAAAAAAAgQ98AGoMAAAAAAAAAAAAAAAAAAAAAAAAfAFkBTwAAAB8AGoOAAAAAAAAAAAAAAAAAAAAAAAAgQ98AGoOAAAAAAAAAAAAAAAAAAAAAAAAfAFkBjwAAAB8AGoQAAAAAAAAAAAAAAAAAAAAAAAAZAd1AXIPfABqEAAAAAAAAAAAAAAAAAAAAAAAAHwBZAg8AAAAfABqEgAAAAAAAAAAAAAAAAAAAAAAAGQHdQFyD3wAahIAAAAAAAAAAAAAAAAAAAAAAAB8AWQJPAAAAHwBRACPAmMCZwBjAl0YAAB9AnQVAAAAAAAAAABqFgAAAAAAAAAAAAAAAAAAAAAAAGQKfAKrAgAAAAAAAJECjBoEAGMCfQJEAI8DYwJoAGMCXRUAAH0DfANyEXwDahkAAAAAAAAAAAAAAAAAAAAAAABkC6sBAAAAAAAAkgKMFwQAfQR9A3wERABdKAAAfQJkDHwCegYAAHwBdgBzAYwLfAFkDXwCegYAABkAAAB9BXwBZAx8AnoGAAAZAAAAfAFkDXwCegYAADwAAAB8BXwBZAx8AnoGAAA8AAAAjCoEAAIAfABqGgAAAAAAAAAAAAAAAAAAAAAAAHwAahwAAAAAAAAAAAAAAAAAAAAAAAB8AGoeAAAAAAAAAAAAAAAAAAAAAAAAZgJkDnwAaiAAAAAAAAAAAAAAAAAAAAAAAABpAXwBpAGOAVMAYwIBAGMCfQJ3AGMCAQBjAn0DdwApD05yegEAAHJ8AQAAcnsBAAByYAEAAHKBAQAAcn0BAABGcn8BAAByfgEAAHobXig/OmV4aXN0aW5nX3xtb2RpZnlfKSguKykkchYAAAB6CW1vZGlmeV8lc3oLZXhpc3RpbmdfJXNydgAAACkRcqgAAAByOwEAAHJ6AQAAcnwBAAByewEAAHJgAQAAcoEBAAByfQEAAHJ/AQAAcn4BAADaAnJlctYAAADaBWdyb3VwclcBAAByegAAAHKDAQAAcnYAAAApBnI9AAAAcqgAAADaAWvaAW3aCGFsbF9rZXlz2gRzd2FwcwYAAAAgICAgICByPgAAAHJGAAAAehVBbHRlckNvbHVtbk9wLnJldmVyc2UKBwAAc6UBAACAANgNEY9XiVePXIlci16IAtgeItceMNEeMIgCiD/RCBvYIibXIjjRIjiIAtALHtEIH9goLNcoRNEoRIgC0Ask0Qgl2CEl1yE20SE2iALQCx3RCB7YCw/XCxvRCxvQCyfYICTXIDDRIDCIQoh90Qwd2AsP1wsf0Qsf0Asr2CQo1yQ40SQ4iELQDyDRDCHYCw/XCyXRCyWoVdELMtgqLtcqRNEqRIhC0A8m0Qwn2AsP1wse0QseoGXRCyvYIyfXIzbRIzaIQtAPH9EMIPEKAEwBTgHTFU7JMsBhlGKXaJFo0B89uHHVFkHIMtIVTvMFBBQK4RVOkAHZDxDwBQANDo9HiUeQQY1K2BVO8AUACRHwAAQUCvMMABIaiEHYDxqYUYl/oCLSDyTYFxmYLagh0Ror0RcskATYKCqoO7gRqT/RKDuQApA9oDHREyTRECXYJiqQApA7oBGRP9IQI/AJABIa8AwAEB6IdI9+iX7YDBCPT4lPmFTXHS3RHS3xAwIQCtg2OrdrsWvwAwIQCthFR/EDAhAK8AACCQr58hUAFk8B+fIFBBQKcwwAAADDCx1FKgTDLRpFLwQpCtoIbnVsbGFibGVyKAEAANoOc2VydmVyX2RlZmF1bHTaD25ld19jb2x1bW5fbmFtZXJdAAAAcnoBAAByewEAAHJ8AQAAcmABAABydgAAAGMEAAAAAAAAAAoAAAAOAAAACwAAAfNOAAAAlwACAHwAfAJ8A2YCfA18CXwKfAt8DHwHfAh8BnwEfAVkAZwKfA6kAY4BfQ98AWoBAAAAAAAAAAAAAAAAAAAAAAAAfA+rAQAAAAAAAFMAKQJhZxEAAElzc3VlIGFuICJhbHRlciBjb2x1bW4iIGluc3RydWN0aW9uIHVzaW5nIHRoZQogICAgICAgIGN1cnJlbnQgbWlncmF0aW9uIGNvbnRleHQuCgogICAgICAgIEdlbmVyYWxseSwgb25seSB0aGF0IGFzcGVjdCBvZiB0aGUgY29sdW1uIHdoaWNoCiAgICAgICAgaXMgYmVpbmcgY2hhbmdlZCwgaS5lLiBuYW1lLCB0eXBlLCBudWxsYWJpbGl0eSwKICAgICAgICBkZWZhdWx0LCBuZWVkcyB0byBiZSBzcGVjaWZpZWQuICBNdWx0aXBsZSBjaGFuZ2VzCiAgICAgICAgY2FuIGFsc28gYmUgc3BlY2lmaWVkIGF0IG9uY2UgYW5kIHRoZSBiYWNrZW5kIHNob3VsZAogICAgICAgICJkbyB0aGUgcmlnaHQgdGhpbmciLCBlbWl0dGluZyBlYWNoIGNoYW5nZSBlaXRoZXIKICAgICAgICBzZXBhcmF0ZWx5IG9yIHRvZ2V0aGVyIGFzIHRoZSBiYWNrZW5kIGFsbG93cy4KCiAgICAgICAgTXlTUUwgaGFzIHNwZWNpYWwgcmVxdWlyZW1lbnRzIGhlcmUsIHNpbmNlIE15U1FMCiAgICAgICAgY2Fubm90IEFMVEVSIGEgY29sdW1uIHdpdGhvdXQgYSBmdWxsIHNwZWNpZmljYXRpb24uCiAgICAgICAgV2hlbiBwcm9kdWNpbmcgTXlTUUwtY29tcGF0aWJsZSBtaWdyYXRpb24gZmlsZXMsCiAgICAgICAgaXQgaXMgcmVjb21tZW5kZWQgdGhhdCB0aGUgYGBleGlzdGluZ190eXBlYGAsCiAgICAgICAgYGBleGlzdGluZ19zZXJ2ZXJfZGVmYXVsdGBgLCBhbmQgYGBleGlzdGluZ19udWxsYWJsZWBgCiAgICAgICAgcGFyYW1ldGVycyBiZSBwcmVzZW50LCBpZiBub3QgYmVpbmcgYWx0ZXJlZC4KCiAgICAgICAgVHlwZSBjaGFuZ2VzIHdoaWNoIGFyZSBhZ2FpbnN0IHRoZSBTUUxBbGNoZW15CiAgICAgICAgInNjaGVtYSIgdHlwZXMgOmNsYXNzOmB+c3FsYWxjaGVteS50eXBlcy5Cb29sZWFuYAogICAgICAgIGFuZCAgOmNsYXNzOmB+c3FsYWxjaGVteS50eXBlcy5FbnVtYCBtYXkgYWxzbwogICAgICAgIGFkZCBvciBkcm9wIGNvbnN0cmFpbnRzIHdoaWNoIGFjY29tcGFueSB0aG9zZQogICAgICAgIHR5cGVzIG9uIGJhY2tlbmRzIHRoYXQgZG9uJ3Qgc3VwcG9ydCB0aGVtIG5hdGl2ZWx5LgogICAgICAgIFRoZSBgYGV4aXN0aW5nX3R5cGVgYCBhcmd1bWVudCBpcwogICAgICAgIHVzZWQgaW4gdGhpcyBjYXNlIHRvIGlkZW50aWZ5IGFuZCByZW1vdmUgYSBwcmV2aW91cwogICAgICAgIGNvbnN0cmFpbnQgdGhhdCB3YXMgYm91bmQgdG8gdGhlIHR5cGUgb2JqZWN0LgoKICAgICAgICA6cGFyYW0gdGFibGVfbmFtZTogc3RyaW5nIG5hbWUgb2YgdGhlIHRhcmdldCB0YWJsZS4KICAgICAgICA6cGFyYW0gY29sdW1uX25hbWU6IHN0cmluZyBuYW1lIG9mIHRoZSB0YXJnZXQgY29sdW1uLAogICAgICAgICBhcyBpdCBleGlzdHMgYmVmb3JlIHRoZSBvcGVyYXRpb24gYmVnaW5zLgogICAgICAgIDpwYXJhbSBudWxsYWJsZTogT3B0aW9uYWw7IHNwZWNpZnkgYGBUcnVlYGAgb3IgYGBGYWxzZWBgCiAgICAgICAgIHRvIGFsdGVyIHRoZSBjb2x1bW4ncyBudWxsYWJpbGl0eS4KICAgICAgICA6cGFyYW0gc2VydmVyX2RlZmF1bHQ6IE9wdGlvbmFsOyBzcGVjaWZ5IGEgc3RyaW5nCiAgICAgICAgIFNRTCBleHByZXNzaW9uLCA6ZnVuYzpgfnNxbGFsY2hlbXkuc3FsLmV4cHJlc3Npb24udGV4dGAsCiAgICAgICAgIG9yIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLkRlZmF1bHRDbGF1c2VgIHRvIGluZGljYXRlCiAgICAgICAgIGFuIGFsdGVyYXRpb24gdG8gdGhlIGNvbHVtbidzIGRlZmF1bHQgdmFsdWUuCiAgICAgICAgIFNldCB0byBgYE5vbmVgYCB0byBoYXZlIHRoZSBkZWZhdWx0IHJlbW92ZWQuCiAgICAgICAgOnBhcmFtIGNvbW1lbnQ6IG9wdGlvbmFsIHN0cmluZyB0ZXh0IG9mIGEgbmV3IGNvbW1lbnQgdG8gYWRkIHRvIHRoZQogICAgICAgICBjb2x1bW4uCiAgICAgICAgOnBhcmFtIG5ld19jb2x1bW5fbmFtZTogT3B0aW9uYWw7IHNwZWNpZnkgYSBzdHJpbmcgbmFtZSBoZXJlIHRvCiAgICAgICAgIGluZGljYXRlIHRoZSBuZXcgbmFtZSB3aXRoaW4gYSBjb2x1bW4gcmVuYW1lIG9wZXJhdGlvbi4KICAgICAgICA6cGFyYW0gdHlwZVxfOiBPcHRpb25hbDsgYSA6Y2xhc3M6YH5zcWxhbGNoZW15LnR5cGVzLlR5cGVFbmdpbmVgCiAgICAgICAgIHR5cGUgb2JqZWN0IHRvIHNwZWNpZnkgYSBjaGFuZ2UgdG8gdGhlIGNvbHVtbidzIHR5cGUuCiAgICAgICAgIEZvciBTUUxBbGNoZW15IHR5cGVzIHRoYXQgYWxzbyBpbmRpY2F0ZSBhIGNvbnN0cmFpbnQgKGkuZS4KICAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS50eXBlcy5Cb29sZWFuYCwgOmNsYXNzOmB+c3FsYWxjaGVteS50eXBlcy5FbnVtYCksCiAgICAgICAgIHRoZSBjb25zdHJhaW50IGlzIGFsc28gZ2VuZXJhdGVkLgogICAgICAgIDpwYXJhbSBhdXRvaW5jcmVtZW50OiBzZXQgdGhlIGBgQVVUT19JTkNSRU1FTlRgYCBmbGFnIG9mIHRoZSBjb2x1bW47CiAgICAgICAgIGN1cnJlbnRseSB1bmRlcnN0b29kIGJ5IHRoZSBNeVNRTCBkaWFsZWN0LgogICAgICAgIDpwYXJhbSBleGlzdGluZ190eXBlOiBPcHRpb25hbDsgYQogICAgICAgICA6Y2xhc3M6YH5zcWxhbGNoZW15LnR5cGVzLlR5cGVFbmdpbmVgCiAgICAgICAgIHR5cGUgb2JqZWN0IHRvIHNwZWNpZnkgdGhlIHByZXZpb3VzIHR5cGUuICAgVGhpcwogICAgICAgICBpcyByZXF1aXJlZCBmb3IgYWxsIE15U1FMIGNvbHVtbiBhbHRlciBvcGVyYXRpb25zIHRoYXQKICAgICAgICAgZG9uJ3Qgb3RoZXJ3aXNlIHNwZWNpZnkgYSBuZXcgdHlwZSwgYXMgd2VsbCBhcyBmb3IKICAgICAgICAgd2hlbiBudWxsYWJpbGl0eSBpcyBiZWluZyBjaGFuZ2VkIG9uIGEgU1FMIFNlcnZlcgogICAgICAgICBjb2x1bW4uICBJdCBpcyBhbHNvIHVzZWQgaWYgdGhlIHR5cGUgaXMgYSBzby1jYWxsZWQKICAgICAgICAgU1FMQWxjaGVteSAic2NoZW1hIiB0eXBlIHdoaWNoIG1heSBkZWZpbmUgYSBjb25zdHJhaW50IChpLmUuCiAgICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkudHlwZXMuQm9vbGVhbmAsCiAgICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkudHlwZXMuRW51bWApLAogICAgICAgICBzbyB0aGF0IHRoZSBjb25zdHJhaW50IGNhbiBiZSBkcm9wcGVkLgogICAgICAgIDpwYXJhbSBleGlzdGluZ19zZXJ2ZXJfZGVmYXVsdDogT3B0aW9uYWw7IFRoZSBleGlzdGluZwogICAgICAgICBkZWZhdWx0IHZhbHVlIG9mIHRoZSBjb2x1bW4uICAgUmVxdWlyZWQgb24gTXlTUUwgaWYKICAgICAgICAgYW4gZXhpc3RpbmcgZGVmYXVsdCBpcyBub3QgYmVpbmcgY2hhbmdlZDsgZWxzZSBNeVNRTAogICAgICAgICByZW1vdmVzIHRoZSBkZWZhdWx0LgogICAgICAgIDpwYXJhbSBleGlzdGluZ19udWxsYWJsZTogT3B0aW9uYWw7IHRoZSBleGlzdGluZyBudWxsYWJpbGl0eQogICAgICAgICBvZiB0aGUgY29sdW1uLiAgUmVxdWlyZWQgb24gTXlTUUwgaWYgdGhlIGV4aXN0aW5nIG51bGxhYmlsaXR5CiAgICAgICAgIGlzIG5vdCBiZWluZyBjaGFuZ2VkOyBlbHNlIE15U1FMIHNldHMgdGhpcyB0byBOVUxMLgogICAgICAgIDpwYXJhbSBleGlzdGluZ19hdXRvaW5jcmVtZW50OiBPcHRpb25hbDsgdGhlIGV4aXN0aW5nIGF1dG9pbmNyZW1lbnQKICAgICAgICAgb2YgdGhlIGNvbHVtbi4gIFVzZWQgZm9yIE15U1FMJ3Mgc3lzdGVtIG9mIGFsdGVyaW5nIGEgY29sdW1uCiAgICAgICAgIHRoYXQgc3BlY2lmaWVzIGBgQVVUT19JTkNSRU1FTlRgYC4KICAgICAgICA6cGFyYW0gZXhpc3RpbmdfY29tbWVudDogc3RyaW5nIHRleHQgb2YgdGhlIGV4aXN0aW5nIGNvbW1lbnQgb24gdGhlCiAgICAgICAgIGNvbHVtbiB0byBiZSBtYWludGFpbmVkLiAgUmVxdWlyZWQgb24gTXlTUUwgaWYgdGhlIGV4aXN0aW5nIGNvbW1lbnQKICAgICAgICAgb24gdGhlIGNvbHVtbiBpcyBub3QgYmVpbmcgY2hhbmdlZC4KICAgICAgICA6cGFyYW0gc2NoZW1hOiBPcHRpb25hbCBzY2hlbWEgbmFtZSB0byBvcGVyYXRlIHdpdGhpbi4gIFRvIGNvbnRyb2wKICAgICAgICAgcXVvdGluZyBvZiB0aGUgc2NoZW1hIG91dHNpZGUgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3IsIHVzZQogICAgICAgICB0aGUgU1FMQWxjaGVteSBjb25zdHJ1Y3QKICAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS5zcWwuZWxlbWVudHMucXVvdGVkX25hbWVgLgogICAgICAgIDpwYXJhbSBwb3N0Z3Jlc3FsX3VzaW5nOiBTdHJpbmcgYXJndW1lbnQgd2hpY2ggd2lsbCBpbmRpY2F0ZSBhCiAgICAgICAgIFNRTCBleHByZXNzaW9uIHRvIHJlbmRlciB3aXRoaW4gdGhlIFBvc3RncmVzcWwtc3BlY2lmaWMgVVNJTkcgY2xhdXNlCiAgICAgICAgIHdpdGhpbiBBTFRFUiBDT0xVTU4uICAgIFRoaXMgc3RyaW5nIGlzIHRha2VuIGRpcmVjdGx5IGFzIHJhdyBTUUwgd2hpY2gKICAgICAgICAgbXVzdCBleHBsaWNpdGx5IGluY2x1ZGUgYW55IG5lY2Vzc2FyeSBxdW90aW5nIG9yIGVzY2FwaW5nIG9mIHRva2VucwogICAgICAgICB3aXRoaW4gdGhlIGV4cHJlc3Npb24uCgogICAgICAgICkKcnYAAAByegEAAHJ7AQAAcnwBAAByYAEAAHKAAQAAcoEBAAByfwEAAHJ9AQAAcn4BAABylgAAACkQclwAAABymAAAAHJ6AAAAcoMBAABylgEAAHIoAQAAcpcBAABymAEAAHJdAAAAcnoBAAByewEAAHJ8AQAAcmABAABydgAAAHKoAAAA2gNhbHRzEAAAACAgICAgICAgICAgICAgICByPgAAAHJ2AQAAehpBbHRlckNvbHVtbk9wLmFsdGVyX2NvbHVtbioHAABzVwAAAIAA8VQDAA8S2AwW2AwX8AUODwrwBgAUGtgaJ9gkO9geL9gdLdgYJ9gYHdgiMNgcJNgbIvEZDg8K8BoADxHxGw4PCogD8CAAEBrXDyDRDyCgE9MPJdAIJXJAAAAAKQtylgEAAHIoAQAAcpcBAABymAEAAHJdAAAAcnoBAAByewEAAHJ8AQAAcmABAADaDWluc2VydF9iZWZvcmXaDGluc2VydF9hZnRlcmMDAAAAAAAAAAsAAAAQAAAACwAAAfOiAAAAlwACAHwAfAFqAAAAAAAAAAAAAAAAAAAAAAAAAGoCAAAAAAAAAAAAAAAAAAAAAAAAfAJmAnwBagAAAAAAAAAAAAAAAAAAAAAAAABqBAAAAAAAAAAAAAAAAAAAAAAAAHwIfAl8CnwLfAZ8B3wFfAN8BHwMfA1kAZwMfA6kAY4BfQ98AWoHAAAAAAAAAAAAAAAAAAAAAAAAfA+rAQAAAAAAAFMAKQJhMgMAAElzc3VlIGFuICJhbHRlciBjb2x1bW4iIGluc3RydWN0aW9uIHVzaW5nIHRoZSBjdXJyZW50CiAgICAgICAgYmF0Y2ggbWlncmF0aW9uIGNvbnRleHQuCgogICAgICAgIFBhcmFtZXRlcnMgYXJlIHRoZSBzYW1lIGFzIHRoYXQgb2YgOm1ldGg6YC5PcGVyYXRpb25zLmFsdGVyX2NvbHVtbmAsCiAgICAgICAgYXMgd2VsbCBhcyB0aGUgZm9sbG93aW5nIG9wdGlvbihzKToKCiAgICAgICAgOnBhcmFtIGluc2VydF9iZWZvcmU6IFN0cmluZyBuYW1lIG9mIGFuIGV4aXN0aW5nIGNvbHVtbiB3aGljaCB0aGlzCiAgICAgICAgIGNvbHVtbiBzaG91bGQgYmUgcGxhY2VkIGJlZm9yZSwgd2hlbiBjcmVhdGluZyB0aGUgbmV3IHRhYmxlLgoKICAgICAgICA6cGFyYW0gaW5zZXJ0X2FmdGVyOiBTdHJpbmcgbmFtZSBvZiBhbiBleGlzdGluZyBjb2x1bW4gd2hpY2ggdGhpcwogICAgICAgICBjb2x1bW4gc2hvdWxkIGJlIHBsYWNlZCBhZnRlciwgd2hlbiBjcmVhdGluZyB0aGUgbmV3IHRhYmxlLiAgSWYKICAgICAgICAgYm90aCA6cGFyYW1yZWY6YC5CYXRjaE9wZXJhdGlvbnMuYWx0ZXJfY29sdW1uLmluc2VydF9iZWZvcmVgCiAgICAgICAgIGFuZCA6cGFyYW1yZWY6YC5CYXRjaE9wZXJhdGlvbnMuYWx0ZXJfY29sdW1uLmluc2VydF9hZnRlcmAgYXJlCiAgICAgICAgIG9taXR0ZWQsIHRoZSBjb2x1bW4gaXMgaW5zZXJ0ZWQgYWZ0ZXIgdGhlIGxhc3QgZXhpc3RpbmcgY29sdW1uCiAgICAgICAgIGluIHRoZSB0YWJsZS4KCiAgICAgICAgLi4gc2VlYWxzbzo6CgogICAgICAgICAgICA6bWV0aDpgLk9wZXJhdGlvbnMuYWx0ZXJfY29sdW1uYAoKCiAgICAgICAgKQxydgAAAHJ6AQAAcnsBAAByfAEAAHJgAQAAcoABAABygQEAAHJ/AQAAcn0BAAByfgEAAHKbAQAAcpwBAABymwAAACkQclwA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bW4oIm9yZ2FuaXphdGlvbiIsIENvbHVtbigibmFtZSIsIFN0cmluZygpKSkKCiAgICAgICAgVGhlIDptZXRoOmAuT3BlcmF0aW9ucy5hZGRfY29sdW1uYCBtZXRob2QgdHlwaWNhbGx5IGNvcnJlc3BvbmRzCiAgICAgICAgdG8gdGhlIFNRTCBjb21tYW5kICJBTFRFUiBUQUJMRS4uLiBBREQgQ09MVU1OIi4gICAgV2l0aGluIHRoZSBzY29wZQogICAgICAgIG9mIHRoaXMgY29tbWFuZCwgdGhlIGNvbHVtbidzIG5hbWUsIGRhdGF0eXBlLCBudWxsYWJpbGl0eSwKICAgICAgICBhbmQgb3B0aW9uYWwgc2VydmVyLWdlbmVyYXRlZCBkZWZhdWx0cyBtYXkgYmUgaW5kaWNhdGVkLgoKICAgICAgICAuLiBub3RlOjoKCiAgICAgICAgICAgIFdpdGggdGhlIGV4Y2VwdGlvbiBvZiBOT1QgTlVMTCBjb25zdHJhaW50cyBvciBzaW5nbGUtY29sdW1uIEZPUkVJR04KICAgICAgICAgICAgS0VZIGNvbnN0cmFpbnRzLCBvdGhlciBraW5kcyBvZiBjb25zdHJhaW50cyBzdWNoIGFzIFBSSU1BUlkgS0VZLAogICAgICAgICAgICBVTklRVUUgb3IgQ0hFQ0sgY29uc3RyYWludHMgKipjYW5ub3QqKiBiZSBnZW5lcmF0ZWQgdXNpbmcgdGhpcwogICAgICAgICAgICBtZXRob2Q7IGZvciB0aGVzZSBjb25zdHJhaW50cywgcmVmZXIgdG8gb3BlcmF0aW9ucyBzdWNoIGFzCiAgICAgICAgICAgIDptZXRoOmAuT3BlcmF0aW9ucy5jcmVhdGVfcHJpbWFyeV9rZXlgIGFuZAogICAgICAgICAgICA6bWV0aDpgLk9wZXJhdGlvbnMuY3JlYXRlX2NoZWNrX2NvbnN0cmFpbnRgLiBJbiBwYXJ0aWN1bGFyLCB0aGUKICAgICAgICAgICAgZm9sbG93aW5nIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLkNvbHVtbmAgcGFyYW1ldGVycyBhcmUKICAgICAgICAgICAgKippZ25vcmVkKio6CgogICAgICAgICAgICAqIDpwYXJhbXJlZjpgfnNxbGFsY2hlbXkuc2NoZW1hLkNvbHVtbi5wcmltYXJ5X2tleWAgLSBTUUwgZGF0YWJhc2VzCiAgICAgICAgICAgICAgdHlwaWNhbGx5IGRvIG5vdCBzdXBwb3J0IGFuIEFMVEVSIG9wZXJhdGlvbiB0aGF0IGNhbiBhZGQKICAgICAgICAgICAgICBpbmRpdmlkdWFsIGNvbHVtbnMgb25lIGF0IGEgdGltZSB0byBhbiBleGlzdGluZyBwcmltYXJ5IGtleQogICAgICAgICAgICAgIGNvbnN0cmFpbnQsIHRoZXJlZm9yZSBpdCdzIGxlc3MgYW1iaWd1b3VzIHRvIHVzZSB0aGUKICAgICAgICAgICAgICA6bWV0aDpgLk9wZXJhdGlvbnMuY3JlYXRlX3ByaW1hcnlfa2V5YCBtZXRob2QsIHdoaWNoIGFzc3VtZXMgbm8KICAgICAgICAgICAgICBleGlzdGluZyBwcmltYXJ5IGtleSBjb25zdHJhaW50IGlzIHByZXNlbnQuCiAgICAgICAgICAgICogOnBhcmFtcmVmOmB+c3FsYWxjaGVteS5zY2hlbWEuQ29sdW1uLnVuaXF1ZWAgLSB1c2UgdGhlCiAgICAgICAgICAgICAgOm1ldGg6YC5PcGVyYXRpb25zLmNyZWF0ZV91bmlxdWVfY29uc3RyYWludGAgbWV0aG9kCiAgICAgICAgICAgICogOnBhcmFtcmVmOmB+c3FsYWxjaGVteS5zY2hlbWEuQ29sdW1uLmluZGV4YCAtIHVzZSB0aGUKICAgICAgICAgICAgICA6bWV0aDpgLk9wZXJhdGlvbnMuY3JlYXRlX2luZGV4YCBtZXRob2QKCgogICAgICAgIFRoZSBwcm92aWRlZCA6Y2xhc3M6YH5zcWxhbGNoZW15LnNjaGVtYS5Db2x1bW5gIG9iamVjdCBtYXkgaW5jbHVkZSBhCiAgICAgICAgOmNsYXNzOmB+c3FsYWxjaGVteS5zY2hlbWEuRm9yZWlnbktleWAgY29uc3RyYWludCBkaXJlY3RpdmUsCiAgICAgICAgcmVmZXJlbmNpbmcgYSByZW1vdGUgdGFibGUgbmFtZS4gRm9yIHRoaXMgc3BlY2lmaWMgdHlwZSBvZiBjb25zdHJhaW50LAogICAgICAgIEFsZW1iaWMgd2lsbCBhdXRvbWF0aWNhbGx5IGVtaXQgYSBzZWNvbmQgQUxURVIgc3RhdGVtZW50IGluIG9yZGVyIHRvCiAgICAgICAgYWRkIHRoZSBzaW5nbGUtY29sdW1uIEZPUkVJR04gS0VZIGNvbnN0cmFpbnQgc2VwYXJhdGVseTo6CgogICAgICAgICAgICBmcm9tIGFsZW1iaWMgaW1wb3J0IG9wCiAgICAgICAgICAgIGZyb20gc3FsYWxjaGVteSBpbXBvcnQgQ29sdW1uLCBJTlRFR0VSLCBGb3JlaWduS2V5CgogICAgICAgICAgICBvcC5hZGRfY29sdW1uKAogICAgICAgICAgICAgICAgIm9yZ2FuaXphdGlvbiIsCiAgICAgICAgICAgICAgICBDb2x1bW4oImFjY291bnRfaWQiLCBJTlRFR0VSLCBGb3JlaWduS2V5KCJhY2NvdW50cy5pZCIpKSwKICAgICAgICAgICAgKQoKICAgICAgICBUaGUgY29sdW1uIGFyZ3VtZW50IHBhc3NlZCB0byA6bWV0aDpgLk9wZXJhdGlvbnMuYWRkX2NvbHVtbmAgaXMgYQogICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLkNvbHVtbmAgY29uc3RydWN0LCB1c2VkIGluIHRoZSBzYW1lIHdheSBpdCdzCiAgICAgICAgdXNlZCBpbiBTUUxBbGNoZW15LiBJbiBwYXJ0aWN1bGFyLCB2YWx1ZXMgb3IgZnVuY3Rpb25zIHRvIGJlIGluZGljYXRlZAogICAgICAgIGFzIHByb2R1Y2luZyB0aGUgY29sdW1uJ3MgZGVmYXVsdCB2YWx1ZSBvbiB0aGUgZGF0YWJhc2Ugc2lkZSBhcmUKICAgICAgICBzcGVjaWZpZWQgdXNpbmcgdGhlIGBgc2VydmVyX2RlZmF1bHRgYCBwYXJhbWV0ZXIsIGFuZCBub3QgYGBkZWZhdWx0YGAKICAgICAgICB3aGljaCBvbmx5IHNwZWNpZmllcyBQeXRob24tc2lkZSBkZWZhdWx0czo6CgogICAgICAgICAgICBmcm9tIGFsZW1iaWMgaW1wb3J0IG9wCiAgICAgICAgICAgIGZyb20gc3FsYWxjaGVteSBpbXBvcnQgQ29sdW1uLCBUSU1F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dWx0IGJlaGF2aW9yLCB1c2UKICAgICAgICAgdGhlIFNRTEFsY2hlbXkgY29uc3RydWN0CiAgICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkuc3FsLmVsZW1lbnRzLnF1b3RlZF9uYW1lYC4KICAgICAgICA6cGFyYW0gbXNzcWxfZHJvcF9jaGVjazogT3B0aW9uYWwgYm9vbGVhbi4gIFdoZW4gYGBUcnVlYGAsIG9uCiAgICAgICAgIE1pY3Jvc29mdCBTUUwgU2VydmVyIG9ubHksIGZpcnN0CiAgICAgICAgIGRyb3AgdGhlIENIRUNLIGNvbnN0cmFpbnQgb24gdGhlIGNvbHVtbiB1c2luZyBhCiAgICAgICAgIFNRTC1zY3JpcHQtY29tcGF0aWJsZQogICAgICAgICBibG9jayB0aGF0IHNlbGVjdHMgaW50byBhIEB2YXJpYWJsZSBmcm9tIHN5cy5jaGVja19jb25zdHJhaW50cywKICAgICAgICAgdGhlbiBleGVjJ3MgYSBzZXBhcmF0ZSBEUk9QIENPTlNUUkFJTlQgZm9yIHRoYXQgY29uc3RyYWludC4KICAgICAgICA6cGFyYW0gbXNzcWxfZHJvcF9kZWZhdWx0OiBPcHRpb25hbCBib29sZWFuLiAgV2hlbiBgYFRydWVgYCwgb24KICAgICAgICAgTWljcm9zb2Z0IFNRTCBTZXJ2ZXIgb25seSwgZmlyc3QKICAgICAgICAgZHJvcCB0aGUgREVGQVVMVCBjb25zdHJhaW50IG9uIHRoZSBjb2x1bW4gdXNpbmcgYQogICAgICAgICBTUUwtc2NyaXB0LWNvbXBhdGlibGUKICAgICAgICAgYmxvY2sgdGhhdCBzZWxlY3RzIGludG8gYSBAdmFyaWFibGUgZnJvbSBzeXMuZGVmYXVsdF9jb25zdHJhaW50cywKICAgICAgICAgdGhlbiBleGVjJ3MgYSBzZXBhcmF0ZSBEUk9QIENPTlNUUkFJTlQgZm9yIHRoYXQgZGVmYXVsdC4KICAgICAgICA6cGFyYW0gbXNzcWxfZHJvcF9mb3JlaWduX2tleTogT3B0aW9uYWwgYm9vbGVhbi4gIFdoZW4gYGBUcnVlYGAsIG9uCiAgICAgICAgIE1pY3Jvc29mdCBTUUwgU2VydmVy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ZGF0ZXRpbWUgaW1wb3J0IGRhdGUKICAgICAgICAgICAgZnJvbSBzcWxhbGNoZW15LnNxbCBpbXBvcnQgdGFibGUsIGNvbHVtbgogICAgICAgICAgICBmcm9tIHNxbGFsY2hlbXkgaW1wb3J0IFN0cmluZywgSW50ZWdlciwgRGF0ZQoKICAgICAgICAgICAgIyBDcmVhdGUgYW4gYWQtaG9jIHRhYmxlIHRvIHVzZSBmb3IgdGhlIGluc2VydCBzdGF0ZW1lbnQuCiAgICAgICAgICAgIGFjY291bnRzX3RhYmxlID0gdGFibGUoCiAgICAgICAgICAgICAgICAiYWNjb3VudCIsCiAgICAgICAgICAgICAgICBjb2x1bW4oImlkIiwgSW50ZWdlciksCiAgICAgICAgICAgICAgICBjb2x1bW4oIm5hbWUiLCBTdHJpbmcpLAogICAgICAgICAgICAgICAgY29sdW1uKCJjcmVhdGVfZGF0ZSIsIERhdGUpLAogICAgICAgICAgICApCgogICAgICAgICAgICBvcC5idWxrX2luc2VydCgKICAgICAgICAgICAgICAgIGFjY291bnRzX3RhYmxlLAogICAgICAgICAgICAgICAgWwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImlkIjogMSwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiSm9obiBTbWl0aCIsCiAgICAgICAgICAgICAgICAgICAgICAgICJjcmVhdGVfZGF0ZSI6IGRhdGUoMjAxMCwgMTAsIDUpLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiaWQiOiAyLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJFZCBXaWxsaWFtcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJjcmVhdGVfZGF0ZSI6IGRhdGUoMjAwNywgNSwgMjcpLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiaWQiOiAzLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJXZW5keSBKb25lcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJjcmVhdGVfZGF0ZSI6IGRhdGUoMjAwOCwgOCwgMTUpLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICApCgogICAgICAgIFdoZW4gdXNpbmcgLS1zcWwgbW9kZSwgc29tZSBkYXRhdHlwZXMgbWF5IG5vdCByZW5kZXIgaW5saW5lCiAgICAgICAgYXV0b21hdGljYWxseSwgc3VjaCBhcyBkYXRlcyBhbmQgb3RoZXIgc3BlY2lhbCB0eXBlcy4gICBXaGVuIHRoaXMKICAgICAgICBpc3N1ZSBpcyBwcmVzZW50LCA6bWV0aDpgLk9wZXJhdGlvbnMuaW5saW5lX2xpdGVyYWxgIG1heSBiZSB1c2VkOjoKCiAgICAgICAgICAgIG9wLmJ1bGtfaW5zZXJ0KAogICAgICAgICAgICAgICAgYWNjb3VudHNfdGFibGUsCiAgICAgICAgICAgICAgICBbCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiaWQiOiAxLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJKb2huIFNtaXRoIiwKICAgICAgICAgICAgICAgICAgICAgICAgImNyZWF0ZV9kYXRlIjogb3AuaW5saW5lX2xpdGVyYWwoIjIwMTAtMTAtMDUiKSwKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgImlkIjogMiwKICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAiRWQgV2lsbGlhbXMiLAogICAgICAgICAgICAgICAgICAgICAgICAiY3JlYXRlX2RhdGUiOiBvcC5pbmxpbmVfbGl0ZXJhbCgiMjAwNy0wNS0yNyIpLAogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAiaWQiOiAzLAogICAgICAgICAgICAgICAgICAgICAgICAibmFtZSI6ICJXZW5keSBKb25lcyIsCiAgICAgICAgICAgICAgICAgICAgICAgICJjcmVhdGVfZGF0ZSI6IG9wLmlubGluZV9saXRlcmFsKCIyMDA4LTA4LTE1IiksCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICBtdWx0aWluc2VydD1GYWxzZSwKICAgICAgICAgICAgKQoKICAgICAgICBXaGVuIHVzaW5nIDptZXRoOmAuT3BlcmF0aW9ucy5pbmxpbmVfbGl0ZXJhbGAgaW4gY29uanVuY3Rpb24gd2l0aAogICAgICAgIDptZXRoOmAuT3BlcmF0aW9ucy5idWxrX2luc2VydGAsIGluIG9yZGVyIGZvciB0aGUgc3RhdGVtZW50IHRvIHdvcmsKICAgICAgICBpbiAib25saW5lIiAoZS5nLiBub24gLS1zcWwpIG1vZGUsIHRoZQogICAgICAgIDpwYXJhbXJlZjpgfi5PcGVyYXRpb25zLmJ1bGtfaW5zZXJ0Lm11bHRpaW5zZXJ0YAogICAgICAgIGZsYWcgc2hvdWxkIGJlIHNldCB0byBgYEZhbHNlYGAsIHdoaWNoIHdpbGwgaGF2ZSB0aGUgZWZmZWN0IG9mCiAgICAgICAgaW5kaXZpZHVhbCBJTlNFUlQgc3RhdGVtZW50cyBiZWluZyBlbWl0dGVkIHRvIHRoZSBkYXRhYmFzZSwgZWFjaAogICAgICAgIHdpdGggYSBkaXN0aW5jdCBWQUxVRVMgY2xhdXNlLCBzbyB0aGF0IHRoZSAiaW5saW5lIiB2YWx1ZXMgY2FuCiAgICAgICAgc3RpbGwgYmUgcmVuZGVyZWQsIHJhdGhlciB0aGFuIGF0dGVtcHRpbmcgdG8gcGFzcyB0aGUgdmFsdWVzCiAgICAgICAgYXMgYm91bmQgcGFyYW1ldGVycy4KCiAgICAgICAgOnBhcmFtIHRhYmxlOiBhIHRhYmxlIG9iamVjdCB3aGljaCByZXByZXNlbnRzIHRoZSB0YXJnZXQgb2YgdGhlIElOU0VSVC4KCiAgICAgICAgOnBhcmFtIHJvd3M6IGEgbGlzdCBvZiBk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ICAgICAgIGJlbG93IHdoZXJlIHdlIHVzZSBhbiB1cGRhdGUgY29uc3RydWN0OjoKCiAgICAgICAgICAgIGZyb20gc3FsYWxjaGVteS5zcWwgaW1wb3J0IHRhYmxlLCBjb2x1bW4KICAgICAgICAgICAgZnJvbSBzcWxhbGNoZW15IGltcG9ydCBTdHJpbmcKICAgICAgICAgICAgZnJvbSBhbGVtYmljIGltcG9ydCBvcAoKICAgICAgICAgICAgYWNjb3VudCA9IHRhYmxlKCJhY2NvdW50IiwgY29sdW1uKCJuYW1lIiwgU3RyaW5nKSkKICAgICAgICAgICAgb3AuZXhlY3V0ZSgKICAgICAgICAgICAgICAgIGFjY291bnQudXBkYXRlKCkKICAgICAgICAgICAgICAgIC53aGVyZShhY2NvdW50LmMubmFtZSA9PSBvcC5pbmxpbmVfbGl0ZXJhbCgiYWNjb3VudCAxIikpCiAgICAgICAgICAgICAgICAudmFsdWVzKHsibmFtZSI6IG9wLmlubGluZV9saXRlcmFsKCJhY2NvdW50IDIiKX0pCiAgICAgICAgICAgICkKCiAgICAgICAgQWJvdmUsIHdlIG1hZGUgdXNlIG9mIHRoZSBTUUxBbGNoZW15CiAgICAgICAgOmZ1bmM6YHNxbGFsY2hlbXkuc3FsLmV4cHJlc3Npb24udGFibGVgIGFuZAogICAgICAgIDpmdW5jOmBzcWxhbGNoZW15LnNxbC5leHByZXNzaW9uLmNvbHVtbmAgY29uc3RydWN0cyB0byBtYWtlIGEgYnJpZWYsCiAgICAgICAgYWQtaG9jIHRhYmxlIGNvbnN0cnVjdCBqdXN0IGZvciBvdXIgVVBEQVRFIHN0YXRlbWVudC4gIEEgZnVsbAogICAgICAgIDpjbGFzczpgfnNxbGFsY2hlbXkuc2NoZW1hLlRhYmxlYCBjb25zdHJ1Y3Qgb2YgY291cnNlIHdvcmtzIHBlcmZlY3RseQogICAgICAgIGZpbmUgYXMgd2VsbCwgdGhvdWdoIG5vdGUgaXQncyBhIHJlY29tbWVuZGVkIHByYWN0aWNlIHRvIGF0IGxlYXN0CiAgICAgICAgZW5zdXJlIHRoZSBkZWZpbml0aW9uIG9mIGEgdGFibGUgaXMgc2VsZi1jb250YWluZWQgd2l0aGluIHRoZSBtaWdyYXRpb24KICAgICAgICBzY3JpcHQsIHJhdGhlciB0aGFuIGltcG9ydGVkIGZyb20gYSBtb2R1bGUgdGhhdCBtYXkgYnJlYWsgY29tcGF0aWJpbGl0eQogICAgICAgIHdpdGggb2xkZXIgbWlncmF0aW9ucy4KCiAgICAgICAgSW4gYSBTUUwgc2NyaXB0IGNvbnRleHQsIHRoZSBzdGF0ZW1lbnQgaXMgZW1pdHRlZCBkaXJlY3RseSB0byB0aGUKICAgICAgICBvdXRwdXQgc3RyZWFtLiAgIFRoZXJlIGlzICpubyogcmV0dXJuIHJlc3VsdCwgaG93ZXZlciwgYXMgdGhpcwogICAgICAgIGZ1bmN0aW9uIGlzIG9yaWVudGVkIHRvd2FyZHMgZ2VuZXJhdGluZyBhIGNoYW5nZSBzY3JpcHQKICAgICAgICB0aGF0IGNhbiBydW4gaW4gIm9mZmxpbmUiIG1vZGUuICAgICBBZGRpdGlvbmFsbHksIHBhcmFtZXRlcml6ZWQKICAgICAgICBzdGF0ZW1lbnRzIGFyZSBkaXNjb3VyYWdlZCBoZXJlLCBhcyB0aGV5ICp3aWxsIG5vdCB3b3JrKiBpbiBvZmZsaW5lCiAgICAgICAgbW9kZS4gIEFib3ZlLCB3ZSB1c2UgOm1ldGg6YC5pbmxpbmVfbGl0ZXJhbGAgd2hlcmUgcGFyYW1ldGVycyBhcmUKICAgICAgICB0byBiZSB1c2VkLgoKICAgICAgICBGb3IgZnVsbCBpbnRlcmFjdGlvbiB3aXRoIGEgY29ubmVjdGVkIGRhdGFiYXNlIHdoZXJlIHBhcmFtZXRlcnMgY2FuCiAgICAgICAgYWxzbyBiZSB1c2VkIG5vcm1hbGx5LCB1c2UgdGhlICJiaW5kIiBhdmFpbGFibGUgZnJvbSB0aGUgY29udGV4dDo6CgogICAgICAgICAgICBmcm9tIGFsZW1iaWMgaW1wb3J0IG9wCgogICAgICAgICAgICBjb25uZWN0aW9uID0gb3AuZ2V0X2JpbmQoKQoKICAgICAgICAgICAgY29ubmVjdGlvbi5leGVjdXRlKAogICAgICAgICAgICAgICAgYWNjb3VudC51cGRhdGUoKQogICAgICAgICAgICAgICAgLndoZXJlKGFjY291bnQuYy5uYW1lID09ICJhY2NvdW50IDEiKQogICAgICAgICAgICAgICAgLnZhbHVlcyh7Im5hbWUiOiAiYWNjb3VudCAyIn0pCiAgICAgICAgICAgICkKCiAgICAgICAgQWRkaXRpb25hbGx5LCB3aGVuIHBhc3NpbmcgdGhlIHN0YXRlbWVudCBhcyBhIHBsYWluIHN0cmluZywgaXQgaXMgZmlyc3QKICAgICAgICBjb2VyY2VkIGludG8gYSA6ZnVuYzpgc3FsYWxjaGVteS5zcWwuZXhwcmVzc2lvbi50ZXh0YCBjb25zdHJ1Y3QKICAgICAgICBiZWZvcmUgYmVpbmcgcGFzc2VkIGFsb25nLiAgSW4gdGhlIGxlc3MgbGlrZWx5IGNhc2UgdGhhdCB0aGUKICAgICAgICBsaXRlcmFsIFNRTCBzdHJpbmcgY29udGFpbnMgYSBjb2xvbiwgaXQgbXVzdCBiZSBlc2NhcGVkIHdpdGggYQogICAgICAgIGJhY2tzbGFzaCwgYXM6OgoKICAgICAgICAgICBvcC5leGVjdXRlKHIiSU5TRVJUIElOVE8gdGFibGUgKGZvbykgVkFMVUVTICgnXDpjb2xvbl92YWx1ZScpIikKCgogICAgICAgIDpwYXJhbSBzcWx0ZXh0OiBBbnkgbGVnYWwgU1FMQWxjaGVteSBleHByZXNzaW9uLCBpbmNsdWRpbmc6CgogICAgICAgICogYSBzdHJpbmcKICAgICAgICAqIGEgOmZ1bmM6YHNxbGFsY2hlbXkuc3FsLmV4cHJlc3Npb24udGV4dGAgY29uc3RydWN0LgogICAgICAgICogYSA6ZnVuYzpgc3FsYWxjaGVteS5zcWwuZXhwcmVzc2lvbi5pbnNlcnRgIGNvbnN0cnVjdC4KICAgICAgICAqIGEgOmZ1bmM6YHNxbGFsY2hlbXkuc3FsLmV4cHJlc3Npb24udXBkYXRlYCBjb25zdHJ1Y3QuCiAgICAgICAgKiBhIDpmdW5jOmBzcWxhbGNoZW15LnNxbC5leHByZXNzaW9uLmRlbGV0ZWAgY29uc3RydWN0LgogICAgICAgICogQW55ICJleGVjdXRhYmxlIiBkZXNjcmliZWQgaW4gU1FMQWxjaGVteSBDb3JlIGRvY3Vt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
Base64 mode: content will be decoded on save.
Save
Close
Exit & Reset
Directory Contents
Dirs: 0 × Files: 6
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
base.cpython-312.pyc
76.03 KB
lrw-r--r--
2025-04-04 08:02:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
batch.cpython-312.pyc
30.64 KB
lrw-r--r--
2025-04-04 08:02:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ops.cpython-312.pyc
107.28 KB
lrw-r--r--
2025-04-04 08:02:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
schemaobj.cpython-312.pyc
11.58 KB
lrw-r--r--
2025-04-04 08:02:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
toimpl.cpython-312.pyc
10.89 KB
lrw-r--r--
2025-04-04 08:02:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.cpython-312.pyc
461 B
lrw-r--r--
2025-04-04 08:02:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).