REDROOM
PHP 8.2.30
Path:
Logout
Edit File
Size: 75.87 KB
Close
//opt/alt/python33/lib64/python3.3/http/__pycache__/cookiejar.cpython-33.pyo
Text
Base64
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ICAgXAogICAgICAgICAgICBGaWxlQ29va2llSmFyICAgICAgXCAgICAgIFwKICAgICAgICAgICAgIC8gICAgfCAgIFwgICAgICAgICBcICAgICAgXAogTW96aWxsYUNvb2tpZUphciB8IExXUENvb2tpZUphciBcICAgICAgXAogICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgICAgfCAgICAgIFwKICAgICAgICAgICAgICAgICAgfCAgIC0tLU1TSUVCYXNlIHwgICAgICAgXAogICAgICAgICAgICAgICAgICB8ICAvICAgICAgfCAgICAgfCAgICAgICAgXAogICAgICAgICAgICAgICAgICB8IC8gICBNU0lFREJDb29raWVKYXIgQlNEREJDb29raWVKYXIKICAgICAgICAgICAgICAgICAgfC8KICAgICAgICAgICAgICAgTVNJRUNvb2tpZUphcgoKdQYAAABDb29raWV1CQAAAENvb2tpZUphcnUMAAAAQ29va2llUG9saWN5dRMAAABEZWZhdWx0Q29va2llUG9saWN5dQ0AAABGaWxlQ29va2llSmFydQwAAABMV1BDb29raWVKYXJ1CQAAAExvYWRFcnJvcnUQAAAATW96aWxsYUNvb2tpZUphcmkAAAAATigBAAAAdQYAAAB0aW1lZ21jAAAAAAAAAAACAAAAAgAAAEcAAABzOwAAAHQAAHMKAGQAAFN0AQBzLgBkAQBkAABsAgB9AQB8AQBqAwBkAgCDAQBhAQBuAAB0AQBqAAB8AACMAABTKAMAAABOaQAAAAB1DgAAAGh0dHAuY29va2llamFyKAQAAAB1BQAAAGRlYnVndQYAAABsb2dnZXJ1BwAAAGxvZ2dpbmd1CQAAAGdldExvZ2dlcigCAAAAdQQAAABhcmdzdQcAAABsb2dnaW5nKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQYAAABfZGVidWcuAAAAcwwAAAAAAQYBBAIGAQwBEgF1BgAAAF9kZWJ1Z3VRAAAAYSBmaWxlbmFtZSB3YXMgbm90IHN1cHBsaWVkIChub3Igd2FzIHRoZSBDb29raWVKYXIgaW5zdGFuY2UgaW5pdGlhbGlz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bnRhaW5zIG5vIHRpbWV6b25lLCBVVEMgaXMgYXNzdW1lZC4KCiAgICBUaGUgdGltZXpvbmUgaW4gdGhlIHN0cmluZyBtYXkgYmUgbnVtZXJpY2FsIChsaWtlICItMDgwMCIgb3IgIiswMTAwIikgb3IgYQogICAgc3RyaW5nIHRpbWV6b25lIChsaWtlICJVVEMiLCAiR01UIiwgIkJTVCIgb3IgIkVTVCIpLiAgQ3VycmVudGx5LCBvbmx5IHRoZQogICAgdGltZXpvbmUgc3RyaW5ncyBlcXVpdmFsZW50IHRvIFVUQyAoemVybyBvZmZzZXQpIGFyZSBrbm93biB0byB0aGUgZnVuY3Rpb24uCgogICAgVGhlIGZ1bmN0aW9uIGxvb3NlbHkgcGFyc2VzIHRoZSBmb2xsb3dpbmcgZm9ybWF0czoKCiAgICBXZWQsIDA5IEZlYiAxOTk0IDIyOjIzOjMyIEdNVCAgICAgICAtLSBIVFRQIGZvcm1hdAogICAgVHVlc2RheSwgMDgtRmViLTk0IDE0OjE1OjI5IEdNVCAgICAgLS0gb2xkIHJmYzg1MCBIVFRQIGZvcm1hdAogICAgVHVlc2RheSwgMDgtRmViLTE5OTQgMTQ6MTU6MjkgR01UICAgLS0gYnJva2VuIHJmYzg1MCBIVFRQIGZvcm1hdAogICAgMDkgRmViIDE5OTQgMjI6MjM6MzIgR01UICAgICAgICAgICAgLS0gSFRUUCBmb3JtYXQgKG5vIHdlZWtkYXkpCiAgICAwOC1GZWItOTQgMTQ6MTU6MjkgR01UICAgICAgICAgICAgICAtLSByZmM4NTAgZm9ybWF0IChubyB3ZWVrZGF5KQogICAgMDgtRmViLTE5OTQgMTQ6MTU6MjkgR01UICAgICAgICAgICAgLS0gYnJva2VuIHJmYzg1MCBmb3JtYXQgKG5vIHdlZWtkYXkpCgogICAgVGhlIHBhcnNlciBpZ25vcmVzIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHdoaXRlc3BhY2UuICBUaGUgdGltZSBtYXkgYmUKICAgIGFic2VudC4KCiAgICBJZiB0aGUgeWVhciBpcyBnaXZlbiB3aXRoIG9ubHkgMiBkaWdpdHMsIHRoZSBmdW5jdGlvbiB3aWxsIHNlbGVjdCB0aGUKICAg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ICAgIFRoZSBmdW5jdGlvbiBrbm93cyBob3cgdG8gZGVhbCB3aXRoICIsIiwgIjsiIGFuZCAiPSIgYXMgd2VsbCBhcyBxdW90ZWQKICAgIHZhbHVlcyBhZnRlciAiPSIuICBBIGxpc3Qgb2Ygc3BhY2Ugc2VwYXJhdGVkIHRva2VucyBhcmUgcGFyc2VkIGFzIGlmIHRoZXkKICAgIHdlcmUgc2VwYXJhdGVkIGJ5ICI7Ii4KCiAgICBJZiB0aGUgaGVhZGVyX3ZhbHVlcyBwYXNzZWQgYXMgYXJndW1lbnQgY29udGFpbnMgbXVsdGlwbGUgdmFsdWVzLCB0aGVuIHRoZXkKICAgIGFyZSB0cmVhdGVkIGFzIGlmIHRoZXkgd2VyZSBhIHNpbmdsZSB2YWx1ZSBzZXBhcmF0ZWQgYnkgY29tbWEgIiwiLgoKICAgIFRoaXMgbWVhbnMgdGhhdCB0aGlzIGZ1bmN0aW9uIGlzIHVzZWZ1bCBmb3IgcGFyc2luZyBoZWFkZXIgZmllbGRzIHRoYXQKICAgIGZvbGxvdyB0aGlzIHN5bnRheCAoQk5GIGFzIGZyb20gdGhlIEhUVFAvMS4xIHNwZWNpZmljYXRpb24sIGJ1dCB3ZSByZWxheAogICAgdGhlIHJlcXVpcmVtZW50IGZvciB0b2tlbnMpLgoKICAgICAgaGVhZGVycyAgICAgICAgICAgPSAjaGVhZGVyCiAgICAgIGhlYWRlciAgICAgICAgICAgID0gKHRva2VuIHwgcGFyYW1ldGVyKSAqKCBbIjsiXSAodG9rZW4gfCBwYXJhbWV0ZXIpKQoKICAgICAgdG9rZW4gICAgICAgICAgICAgPSAxKjxhbnkgQ0hBUiBleGNlcHQgQ1RMcyBvciBzZXBhcmF0b3JzPgogICAgICBzZXBhcmF0b3JzICAgICAgICA9ICIoIiB8ICIpIiB8ICI8IiB8ICI+IiB8ICJAIgogICAgICAgICAgICAgICAgICAgICAgICB8ICIsIiB8ICI7IiB8ICI6IiB8ICJcIiB8IDwiPgogICAgICAgICAgICAgICAgICAgICAgICB8ICIvIiB8ICJbIiB8ICJdIiB8ICI/IiB8ICI9IgogICAgICAgICAgICAgICAgICAgICAgICB8ICJ7IiB8ICJ9IiB8IFNQIHwgSFQKCiAgICAgIHF1b3RlZC1zdHJpbmcgICAgID0gKCA8Ij4gKihxZHRleHQgfCBxdW90ZWQtcGFpciApIDwiPiApCiAgICAgIHFkdGV4dCAgICAgICAgICAgID0gPGFueSBURVhUIGV4Y2VwdCA8Ij4+CiAgICAgIHF1b3RlZC1wYWlyICAgICAgID0gIlwiIENIQVIKCiAgICAgIHBhcmFtZXRlciAgICAgICAgID0gYXR0cmlidXRlICI9IiB2YWx1ZQogICAgICBhdHRyaWJ1dGUgICAgICAgICA9IHRva2VuCiAgICAgIHZhbHVlICAgICAgICAgICAgID0gdG9rZW4gfCBxdW90ZWQtc3RyaW5nCgogICAgRWFjaCBoZWFkZXIgaXMgcmVwcmVzZW50ZWQgYnkgYSBsaXN0IG9mIGtleS92YWx1ZSBwYWlycy4gIFRoZSB2YWx1ZSBmb3IgYQogICAgc2ltcGxlIHRva2VuIChub3QgcGFydCBvZiBhIHBhcmFtZXRlcikgaXMgTm9uZS4gIFN5bnRhY3RpY2FsbHkgaW5jb3JyZWN0CiAgICBoZWFkZXJzIHdpbGwgbm90IG5lY2Vzc2FyaWx5IGJlIHBhcnNlZCBhcyB5b3Ugd291bGQgd2FudC4KCiAgICBUaGlzIGlzIGVhc2llciB0byBkZXNjcmliZSB3aXRoIHNvbWUgZXhhbXBsZXM6CgogICAgPj4+IHNwbGl0X2hlYWRlcl93b3JkcyhbJ2Zvbz0iYmFyIjsgcG9ydD0iODAsODEiOyBkaXNjYXJkLCBiYXI9YmF6J10pCiAgICBbWygnZm9vJywgJ2JhcicpLCAoJ3BvcnQnLCAnODAsODEnKSwgKCdkaXNjYXJkJywgTm9uZSldLCBbKCdiYXInLCAnYmF6JyldXQogICAgPj4+IHNwbGl0X2hlYWRlcl93b3JkcyhbJ3RleHQvaHRtbDsgY2hhcnNldD0iaXNvLTg4NTktMSInXSkKICAgIFtbKCd0ZXh0L2h0bWwnLCBOb25lKSwgKCdjaGFyc2V0JywgJ2lzby04ODU5LTEnKV1dCiAgICA+Pj4gc3BsaXRfaGVhZGVyX3dvcmRzKFtyJ0Jhc2ljIHJlYWxtPSJcImZvb1xiYXJcIiInXSkKICAgIFtbKCdCYXNpYycsIE5vbmUp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KAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUOAAAAaXNfdGhpcmRfcGFydHm4AgAAcwgAAAAACgwBGAEEAnUOAAAAaXNfdGhpcmRfcGFydHljAQAAAAAAAAABAAAAAwAAAEIAAABzdwAAAHwAAEVlAABaAQBkAABaAgBkAQBaAwBkEQBkAgBkAwCEAQBaBQBkBABkBQCEAABaBgBkEABkBgBkBwCEAQBaCABkCABkCQCEAABaCQBkEABkCgBkCwCEAQBaCgBkDABkDQCEAABaCwBkDgBkDwCEAABaDABkEABTKBIAAAB1BgAAAENvb2tpZXXQAgAASFRUUCBDb29raWUuCgogICAgVGhpcyBjbGFzcyByZXByZXNlbnRzIGJvdGggTmV0c2NhcGUgYW5kIFJGQyAyOTY1IGNvb2tpZXMuCgogICAgVGhpcyBpcyBkZWxpYmVyYXRlbHkgYSB2ZXJ5IHNpbXBsZSBjbGFzcy4gIEl0IGp1c3QgaG9sZHMgYXR0cmlidXRlcy4gIEl0J3MKICAgIHBvc3NpYmxlIHRvIGNvbnN0cnVjdCBDb29raWUgaW5zdGFuY2VzIHRoYXQgZG9uJ3QgY29tcGx5IHdpdGggdGhlIGNvb2tpZQogICAgc3RhbmRhcmRzLiAgQ29va2llSmFyLm1ha2VfY29va2llcyBpcyB0aGUgZmFjdG9yeSBmdW5jdGlvbiBmb3IgQ29va2llCiAgICBvYmplY3RzIC0tIGl0IGRlYWxzIHdpdGggY29va2llIHBhcnNpbmcsIHN1cHBseWluZyBkZWZhdWx0cywgYW5kCiAgICBub3JtYWxpc2luZyB0byB0aGUgcmVwcmVzZW50YXRpb24gdXNlZCBpbiB0aGlzIGNsYXNzLiAgQ29va2llUG9saWN5IGlzCiAgICByZXNwb25zaWJsZSBmb3IgY2hlY2tpbmcgdGhlbSB0byBzZWUgd2hldGhlciB0aGV5IHNob3VsZCBiZSBhY2NlcHRlZCBmcm9tCiAgICBhbmQgcmV0dXJuZWQgdG8gdGhlIHNlcnZlci4KCiAgICBOb3RlIHRoYXQgdGhlIHBvcnQgbWF5IGJlIHByZXNlbnQgaW4gdGhlIGhlYWRlcnMsIGJ1dCB1bnNwZWNpZmllZCAoIlBvcnQiCiAgICByYXRoZXIgdGhhbiJQb3J0PTgwIiwgZm9yIGV4YW1wbGUpOyBpZiB0aGlzIGlzIHRoZSBjYXNlLCBwb3J0IGlzIE5vbmUuCgogICAgYxIAAAAAAAAAEgAAAAMAAABDAAAAcwkBAAB8AQBkAABrCQByGwB0AQB8AQCDAQB9AQBuAAB8DABkAABrCQByNgB0AQB8DACDAQB9DABuAAB8BABkAABrCAByXQB8BQBkAgBrCAByXQB0AwBkAQCDAQCCAQBuAAB8AQB8AABfBAB8AgB8AABfBQB8AwB8AABfBgB8BAB8AABfBwB8BQB8AABfCAB8BgBqCQCDAAB8AABfCgB8BwB8AABfCwB8CAB8AABfDAB8CQB8AABfDQB8CgB8AABfDgB8CwB8AABfDwB8DAB8AABfEAB8DQB8AABfEQB8DgB8AABfEgB8DwB8AABfEwB8EQB8AABfFAB0FQBqFQB8EACDAQB8AABfFgBkAABTKAMAAABOdS0AAABpZiBwb3J0IGlzIE5vbmUsIHBvcnRfc3BlY2lmaWVkIG11c3QgYmUgZmFsc2VUKBcAAAB1BAAAAE5vbmV1AwAAAGludHUEAAAAVHJ1ZXUKAAAAVmFsdWVFcnJvcnUHAAAAdmVyc2lvbnUEAAAAbmFtZXUFAAAAdmFsdWV1BAAAAHBvcnR1DgAAAHBvcnRfc3BlY2lmaWVkdQUAAABsb3dlcnUGAAAAZG9tYWludRAAAABkb21haW5fc3BlY2lmaWVkdRIAAABkb21haW5faW5pdGlhbF9kb3R1BAAAAHBhdGh1DgAAAHBhdGhfc3BlY2lmaWVkdQYAAABzZWN1cmV1BwAAAGV4cGlyZXN1BwAAAGRpc2NhcmR1BwAAAGNvbW1lbnR1CwAAAGNvbW1lbnRfdXJsdQcAAAByZmMyMTA5dQQAAABjb3B5dQUAAABfcmVzdCgSAAAAdQQAAABzZWxmdQcAAAB2ZXJzaW9udQQAAABuYW1ldQUAAAB2YWx1ZXUEAAAAcG9ydHUOAAAAcG9ydF9zcGVjaWZpZWR1BgAAAGRvbWFpbnUQAAAAZG9tYWluX3NwZWNpZmllZHUSAAAAZG9tYWluX2luaXRpYWxfZG90dQQAAABwYXRodQ4AAABwYXRoX3NwZWNpZmllZHUGAAAAc2VjdXJldQcAAABleHBpcmVzdQcAAABkaXNjYXJkdQcAAABjb21tZW50dQsAAABjb21tZW50X3VybHUEAAAAcmVzdHUHAAAAcmZjMjEwOSgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUIAAAAX19pbml0X1/bAgAAcy4AAAAADQwADwEMAA8BGAEPAgkBCQEJAQkBCQIPAQkFCQEJAQkBCQEJAQkBCQEJAQkCdQ8AAABDb29raWUuX19pbml0X19jAgAAAAAAAAACAAAAAgAAAEMAAABzDQAAAHwBAHwAAGoAAGsGAFMoAQAAAE4oAQAAAHUFAAAAX3Jlc3QoAgAAAHUEAAAAc2VsZnUEAAAAbmFtZSgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUUAAAAaGFzX25vbnN0YW5kYXJkX2F0dHIFAwAAcwIAAAAAAXUbAAAAQ29va2llLmhhc19ub25zdGFuZGFyZF9hdHRyYwMAAAAAAAAAAwAAAAMAAABDAAAAcxMAAAB8AABqAABqAQB8AQB8AgCDAgBTKAEAAABOKAIAAAB1BQAAAF9yZXN0dQMAAABnZXQoAwAAAHUEAAAAc2VsZnUEAAAAbmFtZXUHAAAAZGVmYXVsdCgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUUAAAAZ2V0X25vbnN0YW5kYXJkX2F0dHIHAwAAcwIAAAAAAXUbAAAAQ29va2llLmdldF9ub25zdGFuZGFyZF9hdHRyYwMAAAAAAAAAAwAAAAMAAABDAAAAcxEAAAB8AgB8AABqAAB8AQA8ZAAAUygBAAAATigBAAAAdQUAAABfcmVzdCgDAAAAdQQAAABzZWxmdQQAAABuYW1ldQUAAAB2YWx1ZSgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUUAAAAc2V0X25vbnN0YW5kYXJkX2F0dHIJAwAAcwIAAAAAAXUbAAAAQ29va2llLnNldF9ub25zdGFuZGFyZF9hdHRyYwIAAAAAAAAAAgAAAAMAAABDAAAAc0EAAAB8AQBkAABrCAByGwB0AQBqAQCDAAB9AQBuAAB8AABqAgBkAABrCQByPQB8AABqAgB8AQBrAQByPQBkAQBTZAIAUygDAAAATlRGKAUAAAB1BAAAAE5vbmV1BAAAAHRpbWV1BwAAAGV4cGlyZXN1BAAAAFRydWV1BQAAAEZhbHNlKAIAAAB1BAAAAHNlbGZ1AwAAAG5vdygAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUKAAAAaXNfZXhwaXJlZAwDAABzCgAAAAABDAAPAR4BBAF1EQAAAENvb2tpZS5pc19leHBpcmVkYwEAAAAAAAAABAAAAAMAAABDAAAAc3gAAAB8AABqAABkAABrCAByGABkAQB9AQBuDQBkAgB8AABqAAAXfQEAfAAAagIAfAEAF3wAAGoDABd9AgB8AABqBABkAABrCQByYQBkAwB8AABqBQB8AABqBABmAgAWfQMAbgkAfAAAagUAfQMAZAQAfAMAfAIAZgIAFlMoBQAAAE51AAAAAHUBAAAAOnUFAAAAJXM9JXN1EgAAADxDb29raWUgJXMgZm9yICVzPigGAAAAdQQAAABwb3J0dQQAAABOb25ldQYAAABkb21haW51BAAAAHBhdGh1BQAAAHZhbHVldQQAAABuYW1lKAQAAAB1BAAAAHNlbGZ1AQAAAHB1BQAAAGxpbWl0dQkAAABuYW1ldmFsdWUoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1BwAAAF9fc3RyX18SAwAAcxAAAAAAAQ8ACQENARQBDwEZAgkBdQ4AAABDb29raWUuX19zdHJfX2MBAAAAAAAAAAQAAAAPAAAAQwAAAHOIAAAAZwAAfQEAeDoAZBUARF0yAH0CAHQAAHwAAHwCAIMCAH0DAHwBAGoBAGQQAHwCAHQCAHwDAIMBAGYCABaDAQABcQ0AV3wBAGoBAGQRAHQCAHwAAGoDAIMBABaDAQABfAEAagEAZBIAdAIAfAAAagQAgwEAFoMBAAFkEwBkFABqBQB8AQCDAQAWUygWAAAATnUHAAAAdmVyc2lvbnUEAAAAbmFtZXUFAAAAdmFsdWV1BAAAAHBvcnR1DgAAAHBvcnRfc3BlY2lmaWVkdQYAAABkb21haW51EAAAAGRvbWFpbl9zcGVjaWZpZWR1EgAAAGRvbWFpbl9pbml0aWFsX2RvdHUEAAAAcGF0aHUOAAAAcGF0aF9zcGVjaWZpZWR1BgAAAHNlY3VyZXUHAAAAZXhwaXJlc3UHAAAAZGlzY2FyZHUHAAAAY29tbWVudHULAAAAY29tbWVudF91cmx1BQAAACVzPSVzdQcAAAByZXN0PSVzdQoAAAByZmMyMTA5PSVzdQoAAABDb29raWUoJXMpdQIAAAAsICgPAAAAdQcAAAB2ZXJzaW9udQQAAABuYW1ldQUAAAB2YWx1ZXUEAAAAcG9ydHUOAAAAcG9ydF9zcGVjaWZpZWR1BgAAAGRvbWFpbnUQAAAAZG9tYWluX3NwZWNpZmllZHUSAAAAZG9tYWluX2luaXRpYWxfZG90dQQAAABwYXRodQ4AAABwYXRoX3NwZWNpZmllZHUGAAAAc2VjdXJldQcAAABleHBpcmVzdQcAAABkaXNjYXJkdQcAAABjb21tZW50dQsAAABjb21tZW50X3VybCgGAAAAdQcAAABnZXRhdHRydQYAAABhcHBlbmR1BAAAAHJlcHJ1BQAAAF9yZXN0dQcAAAByZmMyMTA5dQQAAABqb2luKAQAAAB1BAAAAHNlbGZ1BAAAAGFyZ3N1BAAAAG5hbWV1BAAAAGF0dHIoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1CAAAAF9fcmVwcl9fHAMAAHMWAAAAAAEGAQMBAAEAAQABCgIPASEBGgEaAXUPAAAAQ29va2llLl9fcmVwcl9fTkYoDQAAAHUIAAAAX19uYW1lX191CgAAAF9fbW9kdWxlX191DAAAAF9fcXVhbG5hbWVfX3UHAAAAX19kb2NfX3UFAAAARmFsc2V1CAAAAF9faW5pdF9fdRQAAABoYXNfbm9uc3RhbmRhcmRfYXR0cnUEAAAATm9uZXUUAAAAZ2V0X25vbnN0YW5kYXJkX2F0dHJ1FAAAAHNldF9ub25zdGFuZGFyZF9hdHRydQoAAABpc19leHBpcmVkdQcAAABfX3N0cl9fdQgAAABfX3JlcHJfXygBAAAAdQoAAABfX2xvY2Fsc19fKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQYAAABDb29raWXJAgAAcxAAAAAQEAYMDyAMAg8CDAMPBgwKYwEAAAAAAAAAAQAAAAIAAABCAAAAc0oAAAB8AABFZQAAWgEAZAAAWgIAZAEAWgMAZAIAZAMAhAAAWgQAZAQAZAUAhAAAWgUAZAYAZAcAhAAAWgYAZAgAZAkAhAAAWgcAZAoAUygLAAAAdQwAAABDb29raWVQb2xpY3l1IAEAAERlZmluZXMgd2hpY2ggY29va2llcyBnZXQgYWNjZXB0ZWQgZnJvbSBhbmQgcmV0dXJuZWQgdG8gc2VydmVyLgoKICAgIE1heSBhbHNvIG1vZGlmeSBjb29raWVzLCB0aG91Z2ggdGhpcyBpcyBwcm9iYWJseSBhIGJhZCBpZGVhLgoKICAgIFRoZSBzdWJjbGFzcyBEZWZhdWx0Q29va2llUG9saWN5IGRlZmluZXMgdGhlIHN0YW5kYXJkIHJ1bGVzIGZvciBOZXRzY2FwZQogICAgYW5kIFJGQyAyOTY1IGNvb2tpZXMgLS0gb3ZlcnJpZGUgdGhhdCBpZiB5b3Ugd2FudCBhIGN1c3RvbWlzZWQgcG9saWN5LgoKICAgIGMDAAAAAAAAAAMAAAABAAAAQwAAAHMNAAAAdAAAgwAAggEAZAEAUygCAAAAdcQAAABSZXR1cm4gdHJ1ZSBpZiAoYW5kIG9ubHkgaWYpIGNvb2tpZSBzaG91bGQgYmUgYWNjZXB0ZWQgZnJvbSBzZXJ2ZXIuCgogICAgICAgIEN1cnJlbnRseSwgcHJlLWV4cGlyZWQgY29va2llcyBuZXZlciBnZXQgdGhpcyBmYXIgLS0gdGhlIENvb2tpZUphcgogICAgICAgIGNsYXNzIGRlbGV0ZXMgc3VjaCBjb29raWVzIGl0c2VsZi4KCiAgICAgICAgTigBAAAAdRMAAABOb3RJbXBsZW1lbnRlZEVycm9yKAMAAAB1BAAAAHNlbGZ1BgAAAGNvb2tpZXUHAAAAcmVxdWVzdCgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUGAAAAc2V0X29rNAMAAHMCAAAAAAd1EwAAAENvb2tpZVBvbGljeS5zZXRfb2tjAwAAAAAAAAADAAAAAQAAAEMAAABzDQAAAHQAAIMAAIIBAGQBAFMoAgAAAHVBAAAAUmV0dXJuIHRydWUgaWYgKGFuZCBvbmx5IGlmKSBjb29raWUgc2hvdWxkIGJlIHJldHVybmVkIHRvIHNlcnZlci5OKAEAAAB1EwAAAE5vdEltcGxlbWVudGVkRXJyb3IoAwAAAHUEAAAAc2VsZnUGAAAAY29va2lldQcAAAByZXF1ZXN0KAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQkAAAByZXR1cm5fb2s9AwAAcwIAAAAAAnUWAAAAQ29va2llUG9saWN5LnJldHVybl9va2MDAAAAAAAAAAMAAAABAAAAQwAAAHMEAAAAZAEAUygCAAAAdU0AAABSZXR1cm4gZmFsc2UgaWYgY29va2llcyBzaG91bGQgbm90IGJlIHJldHVybmVkLCBnaXZlbiBjb29raWUgZG9tYWluLgogICAgICAgIFQoAQAAAHUEAAAAVHJ1ZSgDAAAAdQQAAABzZWxmdQYAAABkb21haW51BwAAAHJlcXVlc3QoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1EAAAAGRvbWFpbl9yZXR1cm5fb2tBAwAAcwIAAAAAA3UdAAAAQ29va2llUG9saWN5LmRvbWFpbl9yZXR1cm5fb2tjAwAAAAAAAAADAAAAAQAAAEMAAABzBAAAAGQBAFMoAgAAAHVLAAAAUmV0dXJuIGZhbHNlIGlmIGNvb2tpZXMgc2hvdWxkIG5vdCBiZSByZXR1cm5lZCwgZ2l2ZW4gY29va2llIHBhdGguCiAgICAgICAgVCgBAAAAdQQAAABUcnVlKAMAAAB1BAAAAHNlbGZ1BAAAAHBhdGh1BwAAAHJlcXVlc3QoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1DgAAAHBhdGhfcmV0dXJuX29rRgMAAHMCAAAAAAN1GwAAAENvb2tpZVBvbGljeS5wYXRoX3JldHVybl9va04oCAAAAHUIAAAAX19uYW1lX191CgAAAF9fbW9kdWxlX191DAAAAF9fcXVhbG5hbWVfX3UHAAAAX19kb2NfX3UGAAAAc2V0X29rdQkAAAByZXR1cm5fb2t1EAAAAGRvbWFpbl9yZXR1cm5fb2t1DgAAAHBhdGhfcmV0dXJuX29rKAEAAAB1CgAAAF9fbG9jYWxzX18oAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1DAAAAENvb2tpZVBvbGljeSsDAABzCgAAABAIBgEMCQwEDAVjAQAAAAAAAAABAAAADgAAAEIAAABzdAEAAHwAAEVlAABaAQBkAABaAgBkAQBaAwBkAgBaBABkAwBaBQBkBABaBgBkBQBaBwBlBABlBQBCWggAZDQAZDQAZDUAZDYAZDQAZDYAZDYAZDUAZDYAZQcAZDYAZDYAZAYAZAcAhAwAWgwAZAgAZAkAhAAAWg0AZAoAZAsAhAAAWg4AZAwAZA0AhAAAWg8AZA4AZA8AhAAAWhAAZBAAZBEAhAAAWhEAZBIAZBMAhAAAWhIAZBQAZBUAhAAAWhMAZBYAZBcAhAAAWhQAZBgAZBkAhAAAWhUAZBoAZBsAhAAAWhYAZBwAZB0AhAAAWhcAZB4AZB8AhAAAWhgAZCAAZCEAhAAAWhkAZCIAZCMAhAAAWhoAZCQAZCUAhAAAWhsAZCYAZCcAhAAAWhwAZCgAZCkAhAAAWh0AZCoAZCsAhAAAWh4AZCwAZC0AhAAAWh8AZC4AZC8AhAAAWiAAZDAAZDEAhAAAWiEAZDIAZDMAhAAAWiIAZDQAUyg3AAAAdRMAAABEZWZhdWx0Q29va2llUG9saWN5dUIAAABJbXBsZW1lbnRzIHRoZSBzdGFuZGFyZCBydWxlcyBmb3IgYWNjZXB0aW5nIGFuZCByZXR1cm5pbmcgY29va2llcy5pAQAAAGkCAAAAaQQAAABpAAAAAGMNAAAAAAAAAA0AAAACAAAAQwAAAHOpAAAAfAMAfAAAXwAAfAQAfAAAXwEAfAUAfAAAXwIAfAYAfAAAXwMAfAcAfAAAXwQAfAgAfAAAXwUAfAkAfAAAXwYAfAoAfAAAXwcAfAsAfAAAXwgAfAwAfAAAXwkAfAEAZAEAawkAcngAdAsAfAEAgwEAfAAAXwwAbgkAZgAAfAAAXwwAfAIAZAEAawkAcpwAdAsAfAIAgwEAfQIAbgAAfAIAfAAAXw0AZAEAUygCAAAAdUEAAABDb25zdHJ1Y3RvciBhcmd1bWVudHMgc2hvdWxkIGJlIHBhc3NlZCBhcyBrZXl3b3JkIGFyZ3VtZW50cyBvbmx5Lk4oDgAAAHUIAAAAbmV0c2NhcGV1BwAAAHJmYzI5NjV1EwAAAHJmYzIxMDlfYXNfbmV0c2NhcGV1DAAAAGhpZGVfY29va2llMnUNAAAAc3RyaWN0X2RvbWFpbnUbAAAAc3RyaWN0X3JmYzI5NjVfdW52ZXJpZmlhYmxldRYAAABzdHJpY3RfbnNfdW52ZXJpZmlhYmxldRAAAABzdHJpY3RfbnNfZG9tYWludRwAAABzdHJpY3RfbnNfc2V0X2luaXRpYWxfZG9sbGFydRIAAABzdHJpY3RfbnNfc2V0X3BhdGh1BAAAAE5vbmV1BQAAAHR1cGxldRAAAABfYmxvY2tlZF9kb21haW5zdRAAAABfYWxsb3dlZF9kb21haW5zKA0AAAB1BAAAAHNlbGZ1DwAAAGJsb2NrZWRfZG9tYWluc3UPAAAAYWxsb3dlZF9kb21haW5zdQgAAABuZXRzY2FwZXUHAAAAcmZjMjk2NXUTAAAAcmZjMjEwOV9hc19uZXRzY2FwZXUMAAAAaGlkZV9jb29raWUydQ0AAABzdHJpY3RfZG9tYWludRsAAABzdHJpY3RfcmZjMjk2NV91bnZlcmlmaWFibGV1FgAAAHN0cmljdF9uc191bnZlcmlmaWFibGV1EAAAAHN0cmljdF9uc19kb21haW51HAAAAHN0cmljdF9uc19zZXRfaW5pdGlhbF9kb2xsYXJ1EgAAAHN0cmljdF9uc19zZXRfcGF0aCgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUIAAAAX19pbml0X19WAwAAcyAAAAAADQkBCQEJAQkBCQEJAQkBCQEJAQkCDAESAgkCDAEPAXUcAAAARGVmYXVsdENvb2tpZVBvbGljeS5fX2luaXRfX2MBAAAAAAAAAAEAAAABAAAAQwAAAHMHAAAAfAAAagAAUygBAAAAdTQAAABSZXR1cm4gdGhlIHNlcXVlbmNlIG9mIGJsb2NrZWQgZG9tYWlucyAoYXMgYSB0dXBsZSkuKAEAAAB1EAAAAF9ibG9ja2VkX2RvbWFpbnMoAQAAAHUEAAAAc2VsZigAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUPAAAAYmxvY2tlZF9kb21haW5zdwMAAHMCAAAAAAJ1IwAAAERlZmF1bHRDb29raWVQb2xpY3kuYmxvY2tlZF9kb21haW5zYwIAAAAAAAAAAgAAAAIAAABDAAAAcxMAAAB0AAB8AQCDAQB8AABfAQBkAQBTKAIAAAB1JAAAAFNldCB0aGUgc2VxdWVuY2Ugb2YgYmxvY2tlZCBkb21haW5zLk4oAgAAAHUFAAAAdHVwbGV1EAAAAF9ibG9ja2VkX2RvbWFpbnMoAgAAAHUEAAAAc2VsZnUPAAAAYmxvY2tlZF9kb21haW5zKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dRMAAABzZXRfYmxvY2tlZF9kb21haW5zegMAAHMCAAAAAAJ1JwAAAERlZmF1bHRDb29raWVQb2xpY3kuc2V0X2Jsb2NrZWRfZG9tYWluc2MCAAAAAAAAAAMAAAAEAAAAQwAAAHMrAAAAeCQAfAAAagAARF0ZAH0CAHQBAHwBAHwCAIMCAHIKAGQBAFNxCgBXZAIAUygDAAAATlRGKAQAAAB1EAAAAF9ibG9ja2VkX2RvbWFpbnN1EQAAAHVzZXJfZG9tYWluX21hdGNodQQAAABUcnVldQUAAABGYWxzZSgDAAAAdQQAAABzZWxmdQYAAABkb21haW51DgAAAGJsb2NrZWRfZG9tYWluKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQoAAABpc19ibG9ja2VkfgMAAHMIAAAAAAEQAQ8BCAF1HgAAAERlZmF1bHRDb29raWVQb2xpY3kuaXNfYmxvY2tlZGMBAAAAAAAAAAEAAAABAAAAQwAAAHMHAAAAfAAAagAAUygBAAAAdT0AAABSZXR1cm4gTm9uZSwgb3IgdGhlIHNlcXVlbmNlIG9mIGFsbG93ZWQgZG9tYWlucyAoYXMgYSB0dXBsZSkuKAEAAAB1EAAAAF9hbGxvd2VkX2RvbWFpbnMoAQAAAHUEAAAAc2VsZigAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUPAAAAYWxsb3dlZF9kb21haW5zhAMAAHMCAAAAAAJ1IwAAAERlZmF1bHRDb29raWVQb2xpY3kuYWxsb3dlZF9kb21haW5zYwIAAAAAAAAAAgAAAAIAAABDAAAAcygAAAB8AQBkAQBrCQByGwB0AQB8AQCDAQB9AQBuAAB8AQB8AABfAgBkAQBTKAIAAAB1LQAAAFNldCB0aGUgc2VxdWVuY2Ugb2YgYWxsb3dlZCBkb21haW5zLCBvciBOb25lLk4oAwAAAHUEAAAATm9uZXUFAAAAdHVwbGV1EAAAAF9hbGxvd2VkX2RvbWFpbnMoAgAAAHUEAAAAc2VsZnUPAAAAYWxsb3dlZF9kb21haW5zKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dRMAAABzZXRfYWxsb3dlZF9kb21haW5zhwMAAHMGAAAAAAIMAQ8BdScAAABEZWZhdWx0Q29va2llUG9saWN5LnNldF9hbGxvd2VkX2RvbWFpbnNjAgAAAAAAAAADAAAABAAAAEMAAABzPgAAAHwAAGoAAGQAAGsIAHITAGQBAFN4JAB8AABqAABEXRkAfQIAdAMAfAEAfAIAgwIAch0AZAEAU3EdAFdkAgBTKAMAAABORlQoBQAAAHUQAAAAX2FsbG93ZWRfZG9tYWluc3UEAAAATm9uZXUFAAAARmFsc2V1EQAAAHVzZXJfZG9tYWluX21hdGNodQQAAABUcnVlKAMAAAB1BAAAAHNlbGZ1BgAAAGRvbWFpbnUOAAAAYWxsb3dlZF9kb21haW4oAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1DgAAAGlzX25vdF9hbGxvd2VkjQMAAHMMAAAAAAEPAQQBEAEPAQgBdSIAAABEZWZhdWx0Q29va2llUG9saWN5LmlzX25vdF9hbGxvd2VkYwMAAAAAAAAABgAAAAYAAABDAAAAc1cAAAB0AABkAQB8AQBqAQB8AQBqAgCDAwABeDoAZAkARF0yAH0DAGQIAHwDABd9BAB0AwB8AAB8BACDAgB9BQB8BQB8AQB8AgCDAgBzHQBkCgBTcR0AV2QLAFMoDAAAAHXYAAAACiAgICAgICAgSWYgeW91IG92ZXJyaWRlIC5zZXRfb2soKSwgYmUgc3VyZSB0byBjYWxsIHRoaXMgbWV0aG9kLiAgSWYgaXQgcmV0dXJucwogICAgICAgIGZhbHNlLCBzbyBzaG91bGQgeW91ciBzdWJjbGFzcyAoYXNzdW1pbmcgeW91ciBzdWJjbGFzcyB3YW50cyB0byBiZSBtb3JlCiAgICAgICAgc3RyaWN0IGFib3V0IHdoaWNoIGNvb2tpZXMgdG8gYWNjZXB0KS4KCiAgICAgICAgdRgAAAAgLSBjaGVja2luZyBjb29raWUgJXM9JXN1BwAAAHZlcnNpb251DQAAAHZlcmlmaWFiaWxpdHl1BAAAAG5hbWV1BAAAAHBhdGh1BgAAAGRvbWFpbnUEAAAAcG9ydHUHAAAAc2V0X29rXygGAAAAdQcAAAB2ZXJzaW9udQ0AAAB2ZXJpZmlhYmlsaXR5dQQAAABuYW1ldQQAAABwYXRodQYAAABkb21haW51BAAAAHBvcnRGVCgGAAAAdQYAAABfZGVidWd1BAAAAG5hbWV1BQAAAHZhbHVldQcAAABnZXRhdHRydQUAAABGYWxzZXUEAAAAVHJ1ZSgGAAAAdQQAAABzZWxmdQYAAABjb29raWV1BwAAAHJlcXVlc3R1AQAAAG51BwAAAGZuX25hbWV1AgAAAGZuKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQYAAABzZXRfb2uVAwAAcw4AAAAABxYEDQEKAQ8BDwEIAnUaAAAARGVmYXVs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AABtb2JpdQYAAABtdXNldW11BAAAAG5hbWV1AwAAAHByb3UGAAAAdHJhdmVsdQIAAABldVQoFwAAAHUKAAAAaXNfYmxvY2tlZHUGAAAAZG9tYWludQYAAABfZGVidWd1BQAAAEZhbHNldQ4AAABpc19ub3RfYWxsb3dlZHUQAAAAZG9tYWluX3NwZWNpZmllZHUQAAAAZWZmX3JlcXVlc3RfaG9zdHUNAAAAc3RyaWN0X2RvbWFpbnUFAAAAY291bnR1BQAAAHJmaW5kdQUAAABsb3dlcnUDAAAAbGVudQoAAABzdGFydHN3aXRodQQAAABmaW5kdQcAAAB2ZXJzaW9udQgAAABlbmRzd2l0aHUQAAAAc3RyaWN0X25zX2RvbWFpbnUSAAAARG9tYWluUkZDMjk2NU1hdGNodQwAAABkb21haW5fbWF0Y2h1EgAAAERvbWFpblN0cmljdE5vRG90c3UHAAAASVBWNF9SRXUGAAAAc2VhcmNodQQAAABUcnVlKA0AAAB1BAAAAHNlbGZ1BgAAAGNvb2tpZXUHAAAAcmVxdWVzdHUIAAAAcmVxX2hvc3R1BAAAAGVyaG51BgAAAGRvbWFpbnUBAAAAaXUBAAAAanUDAAAAdGxkdQMAAABzbGR1DwAAAHVuZG90dGVkX2RvbWFpbnUNAAAAZW1iZWRkZWRfZG90c3ULAAAAaG9zdF9wcmVmaXgoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1DQAAAHNldF9va19kb21haW7XAwAAc2YAAAAAARIBEAEEARIBEAEEAQkBEgEJAR4EDwEVAQwBFAEUAQkBAAEAARsCDQEKAQ8BEwIGARUBEwEGAQcBBAEPARABEAEUAQYCCgEHAQ8BEAEPAQYBCgEHAQ8BEAEXARUBEAEGAQoBCgF1IQAAAERlZmF1bHRDb29raWVQb2xpY3kuc2V0X29rX2RvbWFpbmMDAAAAAAAAAAUAAAAMAAAAQwAAAHO1AAAAfAEAagAAcrEAdAEAfAIAgwEAfQMAfAMAZAAAawgAcioAZAEAfQMAbgwAdAMAfAMAgwEAfQMAeHgAfAEAagQAagUAZAIAgwEARF1KAH0EAHkOAHQGAHwEAIMBAAFXbiMABHQHAGsKAHKCAAEBAXQIAGQDAHwEAIMCAAFkBQBTWW4BAFh8BAB8AwBrAgBySQBQcUkAcUkAV3QIAGQEAHwDAHwBAGoEAIMDAAFkBQBTbgAAZAYAUygHAAAATnUCAAAAODB1AQAAACx1HAAAACAgIGJhZCBwb3J0ICVzIChub3QgbnVtZXJpYyl1JAAAACAgIHJlcXVlc3QgcG9ydCAoJXMpIG5vdCBmb3VuZCBpbiAlc0ZUKAsAAAB1DgAAAHBvcnRfc3BlY2lmaWVkdQwAAAByZXF1ZXN0X3BvcnR1BAAAAE5vbmV1AwAAAHN0cnUEAAAAcG9ydHUFAAAAc3BsaXR1AwAAAGludHUKAAAAVmFsdWVFcnJvcnUGAAAAX2RlYnVndQUAAABGYWxzZXUEAAAAVHJ1ZSgFAAAAdQQAAABzZWxmdQYAAABjb29raWV1BwAAAHJlcXVlc3R1CAAAAHJlcV9wb3J0dQEAAABwKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQsAAABzZXRfb2tfcG9ydBIEAABzIgAAAAABCQEMAQwBCQIMARkBAwEOAQ0BDQEJAQwBCAIGAQ0BBwF1HwAAAERlZmF1bHRDb29raWVQb2xpY3kuc2V0X29rX3BvcnRjAwAAAAAAAAAGAAAABgAAAEMAAABzVwAAAHQAAGQBAHwBAGoBAHwBAGoCAIMDAAF4OgBkCQBEXTIAfQMAZAgAfAMAF30EAHQDAHwAAHwEAIMCAH0FAHwFAHwBAHwCAIMCAHMdAGQKAFNxHQBXZAsAUygMAAAAddsAAAAKICAgICAgICBJZiB5b3Ugb3ZlcnJpZGUgLnJldHVybl9vaygpLCBiZSBzdXJlIHRvIGNhbGwgdGhpcyBtZXRob2QuICBJZiBpdAogICAgICAgIHJldHVybnMgZmFsc2UsIHNvIHNob3VsZCB5b3VyIHN1YmNsYXNzIChhc3N1bWluZyB5b3VyIHN1YmNsYXNzIHdhbnRzIHRvCiAgICAgICAgYmUgbW9yZSBzdHJpY3QgYWJvdXQgd2hpY2ggY29va2llcyB0byByZXR1cm4pLgoKICAgICAgICB1GAAAACAtIGNoZWNraW5nIGNvb2tpZSAlcz0lc3UHAAAAdmVyc2lvbnUNAAAAdmVyaWZpYWJpbGl0eXUGAAAAc2VjdXJldQcAAABleHBpcmVzdQQAAABwb3J0dQYAAABkb21haW51CgAAAHJldHVybl9va18oBgAAAHUHAAAAdmVyc2lvbnUNAAAAdmVyaWZpYWJpbGl0eXUGAAAAc2VjdXJldQcAAABleHBpcmVzdQQAAABwb3J0dQYAAABkb21haW5GVCgGAAAAdQYAAABfZGVidWd1BAAAAG5hbWV1BQAAAHZhbHVldQcAAABnZXRhdHRydQUAAABGYWxzZXUEAAAAVHJ1ZSgGAAAAdQQAAABzZWxmdQYAAABjb29raWV1BwAAAHJlcXVlc3R1AQAAAG51BwAAAGZuX25hbWV1AgAAAGZuKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQkAAAByZXR1cm5fb2snBAAAcw4AAAAACRYCDQEKAQ8BDwEIAXUdAAAARGVmYXVsdENvb2tpZVBvbGljeS5yZXR1cm5fb2tjAwAAAAAAAAADAAAABAAAAEMAAABzUgAAAHwBAGoAAGQBAGsEAHInAHwAAGoBAAxyJwB0AgBkAgCDAQABZAQAU3wBAGoAAGQBAGsCAHJOAHwAAGoEAAxyTgB0AgBkAwCDAQABZAQAU2QFAFMoBgAAAE5pAAAAAHUkAAAAICAgUkZDIDI5NjUgY29va2llcyBhcmUgc3dpdGNoZWQgb2ZmdSQAAAAgICBOZXRzY2FwZSBjb29raWVzIGFyZSBzd2l0Y2hlZCBvZmZGVCgGAAAAdQcAAAB2ZXJzaW9udQcAAAByZmMyOTY1dQYAAABfZGVidWd1BQAAAEZhbHNldQgAAABuZXRzY2FwZXUEAAAAVHJ1ZSgDAAAAdQQAAABzZWxmdQYAAABjb29raWV1BwAAAHJlcXVlc3QoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1EQAAAHJldHVybl9va192ZXJzaW9uOQQAAHMOAAAAAAEZAQoBBAEZAQoBBAF1JQAAAERlZmF1bHRDb29raWVQb2xpY3kucmV0dXJuX29rX3ZlcnNpb25jAwAAAAAAAAADAAAABQAAAEMAAABzaAAAAHwCAGoAAHJkAHQBAHwCAIMBAHJkAHwBAGoCAGQBAGsEAHI7AHwAAGoDAHI7AHQEAGQCAIMBAAFkBABTfAEAagIAZAEAawIAcmQAfAAAagYAcmQAdAQAZAMAgwEAAWQEAFNuAABkBQBTKAYAAABOaQAAAAB1PgAAACAgIHRoaXJkLXBhcnR5IFJGQyAyOTY1IGNvb2tpZSBkdXJpbmcgdW52ZXJpZmlhYmxlIHRyYW5zYWN0aW9udT4AAAAgICB0aGlyZC1wYXJ0eSBOZXRzY2FwZSBjb29raWUgZHVyaW5nIHVudmVyaWZpYWJsZSB0cmFuc2FjdGlvbkZUKAgAAAB1DAAAAHVudmVyaWZpYWJsZXUOAAAAaXNfdGhpcmRfcGFydHl1BwAAAHZlcnNpb251GwAAAHN0cmljdF9yZmMyOTY1X3VudmVyaWZpYWJsZXUGAAAAX2RlYnVndQUAAABGYWxzZXUWAAAAc3RyaWN0X25zX3VudmVyaWZpYWJsZXUEAAAAVHJ1ZSgDAAAAdQQAAABzZWxmdQYAAABjb29raWV1BwAAAHJlcXVlc3QoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1FwAAAHJldHVybl9va192ZXJpZmlhYmlsaXR5QgQAAHMQAAAAAAEVARgBCgIEARgBCgIHAXUrAAAARGVmYXVsdENvb2tpZVBvbGljeS5yZXR1cm5fb2tfdmVyaWZpYWJpbGl0eWMDAAAAAAAAAAMAAAADAAAAQwAAAHMqAAAAfAEAagAAciYAfAIAagEAZAEAawMAciYAdAIAZAIAgwEAAWQDAFNkBABTKAUAAABOdQUAAABodHRwc3UoAAAAICAgc2VjdXJlIGNvb2tpZSB3aXRoIG5vbi1zZWN1cmUgcmVxdWVzdEZUKAUAAAB1BgAAAHNlY3VyZXUEAAAAdHlwZXUGAAAAX2RlYnVndQUAAABGYWxzZXUEAAAAVHJ1ZSgDAAAAdQQAAABzZWxmdQYAAABjb29raWV1BwAAAHJlcXVlc3QoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIu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AABzZWxmdQQAAABwYXRodQcAAAByZXF1ZXN0dQgAAAByZXFfcGF0aCgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUOAAAAcGF0aF9yZXR1cm5fb2uUBAAAcwwAAAAAAQ0BDAEPARABBAF1IgAAAERlZmF1bHRDb29raWVQb2xpY3kucGF0aF9yZXR1cm5fb2tOVEYoIwAAAHUIAAAAX19uYW1lX191CgAAAF9fbW9kdWxlX191DAAAAF9fcXVhbG5hbWVfX3UHAAAAX19kb2NfX3USAAAARG9tYWluU3RyaWN0Tm9Eb3RzdRUAAABEb21haW5TdHJpY3ROb25Eb21haW51EgAAAERvbWFpblJGQzI5NjVNYXRjaHUNAAAARG9tYWluTGliZXJhbHUMAAAARG9tYWluU3RyaWN0dQQAAABOb25ldQQAAABUcnVldQUAAABGYWxzZXUIAAAAX19pbml0X191DwAAAGJsb2NrZWRfZG9tYWluc3UTAAAAc2V0X2Jsb2NrZWRfZG9tYWluc3UKAAAAaXNfYmxvY2tlZHUPAAAAYWxsb3dlZF9kb21haW5zdRMAAABzZXRfYWxsb3dlZF9kb21haW5zdQ4AAABpc19ub3RfYWxsb3dlZHUGAAAAc2V0X29rdQ4AAABzZXRfb2tfdmVyc2lvbnUUAAAAc2V0X29rX3ZlcmlmaWFiaWxpdHl1CwAAAHNldF9va19uYW1ldQsAAABzZXRfb2tfcGF0aHUNAAAAc2V0X29rX2RvbWFpbnULAAAAc2V0X29rX3BvcnR1CQAAAHJldHVybl9va3URAAAAcmV0dXJuX29rX3ZlcnNpb251FwAAAHJldHVybl9va192ZXJpZmlhYmlsaXR5dRAAAAByZXR1cm5fb2tfc2VjdXJldREAAAByZXR1cm5fb2tfZXhwaXJlc3UOAAAAcmV0dXJuX29rX3BvcnR1EAAAAHJldHVybl9va19kb21haW51EAAAAGRvbWFpbl9yZXR1cm5fb2t1DgAAAHBhdGhfcmV0dXJuX29rKAEAAAB1CgAAAF9fbG9jYWxzX18oAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0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AFBuAAB8DQBqAQCDAAB9DQBuAAB8DABkBABrAgByNgF8CAByFwFxWABuAAB8DQBkDQBrCAByNgF0BABkDwCDAQABcVgAcTYBbgAAfAwAZAUAawIAcpQBZBUAfQgAeRAAdAUAfA0AgwEAfQ0AV24jAAR0BgBrCgByfQEBAQF0BABkEACDAQABZBUAfQkAUFluAQBYZAQAfQwAfAAAagcAfA0AF30NAG4AAHwMAHwEAGsGAHOsAXwMAHwDAGsGAHLpAXwNAGQNAGsIAHLcAXwMAGQWAGsHAHLcAXQEAGQRAHwMABaDAQABZBUAfQkAUG4AAHwNAHwKAHwMADxxWAB8DQB8CwB8DAA8cVgAV3wJAHIDAnEZAG4AAHwCAGoIAHwGAHwHAHwKAHwLAGYEAIMBAAFxGQBXfAIAUygXAAAAdRcCAABSZXR1cm4gbGlzdCBvZiB0dXBsZXMgY29udGFpbmluZyBub3JtYWxpc2VkIGNvb2tpZSBpbmZvcm1hdGlvbi4KCiAgICAgICAgYXR0cnNfc2V0IGlzIHRoZSBsaXN0IG9mIGxpc3RzIG9mIGtleSx2YWx1ZSBwYWlycyBleHRyYWN0ZWQgZnJvbQogICAgICAgIHRoZSBTZXQtQ29va2llIG9yIFNldC1Db29raWUyIGhlYWRlcnMuCgogICAgICAgIFR1cGxlcyBhcmUgbmFtZSwgdmFsdWUsIHN0YW5kYXJkLCByZXN0LCB3aGVyZSBuYW1lIGFuZCB2YWx1ZSBhcmUgdGhlCiAgICAgICAgY29va2llIG5hbWUgYW5kIHZhbHVlLCBzdGFuZGFyZCBpcyBhIGRpY3Rpb25hcnkgY29udGFpbmluZyB0aGUgc3RhbmRhcmQKICAgICAgICBjb29raWUtYXR0cmlidXRlcyAoZGlzY2FyZCwgc2VjdXJlLCB2ZXJzaW9uLCBleHBpcmVzIG9yIG1heC1hZ2UsCiAgICAgICAgZG9tYWluLCBwYXRoIGFuZCBwb3J0KSBhbmQgcmVzdCBpcyBhIGRpY3Rpb25hcnkgY29udGFpbmluZyB0aGUgcmVzdCBvZgogICAgICAgIHRoZSBjb29raWUtYXR0cmlidXRlcy4KCiAgICAgICAgdQcAAABkaXNjYXJkdQYAAABzZWN1cmV1BwAAAHZlcnNpb251BwAAAGV4cGlyZXN1BwAAAG1heC1hZ2V1BgAAAGRvbWFpbnUEAAAAcGF0aHUEAAAAcG9ydHUHAAAAY29tbWVudHUKAAAAY29tbWVudHVybGkAAAAAaQEAAABOdSUAAAAgICBtaXNzaW5nIHZhbHVlIGZvciBkb21haW4gYXR0cmlidXRldU0AAAAgICBtaXNzaW5nIG9yIGludmFsaWQgdmFsdWUgZm9yIGV4cGlyZXMgYXR0cmlidXRlOiB0cmVhdGluZyBhcyBzZXNzaW9uIGNvb2tpZXU/AAAAICAgbWlzc2luZyBvciBpbnZhbGlkIChub24tbnVtZXJpYykgdmFsdWUgZm9yIG1heC1hZ2UgYXR0cmlidXRldSEAAAAgICBtaXNzaW5nIHZhbHVlIGZvciAlcyBhdHRyaWJ1dGUoAgAAAHUHAAAAZGlzY2FyZHUGAAAAc2VjdXJlKAgAAAB1BwAAAHZlcnNpb251BwAAAGV4cGlyZXN1BwAAAG1heC1hZ2V1BgAAAGRvbWFpbnUEAAAAcGF0aHUEAAAAcG9ydHUHAAAAY29tbWVudHUKAAAAY29tbWVudHVybEZUKAMAAAB1BAAAAHBvcnR1BwAAAGNvbW1lbnR1CgAAAGNvbW1lbnR1cmwoCQAAAHUFAAAARmFsc2V1BQAAAGxvd2VydQQAAABOb25ldQQAAABUcnVldQYAAABfZGVidWd1AwAAAGludHUKAAAAVmFsdWVFcnJvcnUEAAAAX25vd3UGAAAAYXBwZW5kKA8AAAB1BAAAAHNlbGZ1CQAAAGF0dHJzX3NldHUNAAAAY29va2llX3R1cGxlc3UNAAAAYm9vbGVhbl9hdHRyc3ULAAAAdmFsdWVfYXR0cnN1DAAAAGNvb2tpZV9hdHRyc3UEAAAAbmFtZXUFAAAAdmFsdWV1CwAAAG1heF9hZ2Vfc2V0dQoAAABiYWRfY29va2lldQgAAABzdGFuZGFyZHUEAAAAcmVzdHUBAAAAa3UBAAAAdnUCAAAAbGMoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1GQAAAF9ub3JtYWxpemVkX2Nvb2tpZV90dXBsZXNFBQAAc2wAAAAADQYCBgEAAQABAAEGAg0BEAoGAgYCBgEGAR0BDAIYAQkBGAMJAQwCBgEMAQwBCgEGAQQCDwEMAQYCBgEMAQoCCQEMAQYBAwEQAQ0BCgIGAQYFBgEQARgBDAEMAQ4BBgEEAQ0CDgIGAQYCHQJ1IwAAAENvb2tpZUphci5fbm9ybWFsaXplZF9jb29raWVfdHVwbGVzYwMAAAAAAAAAFwAAACIAAABDAAAAc/8CAAB8AQBcBAB9AwB9BAB9BQB9BgB8BQBqAABkAQB0AQCDAgB9BwB8BQBqAABkAgB0AQCDAgB9CAB8BQBqAABkAwB0AQCDAgB9CQB8BQBqAABkBAB0AQCDAgB9CgB8BQBqAABkBQBkAACDAgB9CwB8CwBkAABrCQBypAB5EAB0AwB8CwCDAQB9CwBXcaQABHQEAGsKAHKgAAEBAWQAAFNZcaQAWG4AAHwFAGoAAGQGAGQRAIMCAH0MAHwFAGoAAGQHAGQRAIMCAH0NAHwFAGoAAGQIAGQAAIMCAH0OAHwFAGoAAGQJAGQAAIMCAH0PAHwIAHQBAGsJAHIZAXwIAGQKAGsDAHIZAWQSAH0QAHQHAHwIAIMBAH0IAG5+AGQRAH0QAHQIAHwCAIMBAH0IAHwIAGoJAGQLAIMBAH0RAHwRAGQTAGsDAHJ8AXwLAGQNAGsCAHJlAXwIAGQAAHwRAIUCABl9CABxfAF8CABkAAB8EQBkDAAXhQIAGX0IAG4AAHQKAHwIAIMBAGQNAGsCAHKXAWQLAH0IAG4AAHwHAHQBAGsJAH0SAGQRAH0TAHwSAHLHAXQLAHwHAGoMAGQOAIMBAIMBAH0TAG4AAHwHAHQBAGsIAHLuAXQNAHwCAIMBAFwCAH0UAH0VAHwVAH0HAG4cAHwHAGoMAGQOAIMBAHMKAmQOAHwHABd9BwBuAABkEQB9FgB8CQB0AQBrCQByVQJ8CQBkAABrCAByNwJ0DgB8AgCDAQB9CQBxWwJkEgB9FgB0DwBqEABkDwBkCgB8CQCDAwB9CQBuBgBkAAB9CQB8CgB0AQBrCABydgJkAAB9CgBkEgB9DQBuUgB8CgB8AABqEQBrAQByyAJ5FwB8AABqEgB8BwB8CAB8AwCDAwABV24SAAR0EwBrCgBysAIBAQFZbgEAWHQUAGQQAHwHAHwIAHwDAIMEAAFkAABTdBUAfAsAfAMAfAQAfAkAfBYAfAcAfBIAfBMAfAgAfBAAfAwAfAoAfA0AfA4AfA8AfAYAgxAAUygUAAAATnUGAAAAZG9tYWludQQAAABwYXRodQQAAABwb3J0dQcAAABleHBpcmVzdQcAAAB2ZXJzaW9udQYAAABzZWN1cmV1BwAAAGRpc2NhcmR1BwAAAGNvbW1lbnR1CgAAAGNvbW1lbnR1cmx1AAAAAHUBAAAAL2kBAAAAaQAAAAB1AQAAAC51AwAAAFxzK3UyAAAARXhwaXJpbmcgY29va2llLCBkb21haW49JyVzJywgcGF0aD0nJXMnLCBuYW1lPSclcydGVGn/////KBYAAAB1AwAAAGdldHUGAAAAQWJzZW50dQQAAABOb25ldQMAAABpbnR1CgAAAFZhbHVlRXJyb3J1BQAAAEZhbHNldQQAAABUcnVldQsAAABlc2NhcGVfcGF0aHUMAAAAcmVxdWVzdF9wYXRodQUAAAByZmluZHUDAAAAbGVudQQAAABib29sdQoAAABzdGFydHN3aXRodRAAAABlZmZfcmVxdWVzdF9ob3N0dQwAAAByZXF1ZXN0X3BvcnR1AgAAAHJldQMAAABzdWJ1BAAAAF9ub3d1BQAAAGNsZWFydQgAAABLZXlFcnJvcnUGAAAAX2RlYnVndQYAAABDb29raWUoFwAAAHUEAAAAc2VsZnUDAAAAdHVwdQcAAAByZXF1ZXN0dQQAAABuYW1ldQUAAAB2YWx1ZXUIAAAAc3RhbmRhcmR1BAAAAHJlc3R1BgAAAGRvbWFpbnUEAAAAcGF0aHUEAAAAcG9ydHUHAAAAZXhwaXJlc3UHAAAAdmVyc2lvbnUGAAAAc2VjdXJldQcAAABkaXNjYXJkdQcAAABjb21tZW50dQsAAABjb21tZW50X3VybHUOAAAAcGF0aF9zcGVjaWZpZWR1AQAAAGl1EAAAAGRvbWFpbl9zcGVjaWZpZWR1EgAAAGRvbWFpbl9pbml0aWFsX2RvdHUIAAAAcmVxX2hvc3R1BAAAAGVyaG51DgAAAHBvcnRfc3BlY2lmaWVkKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dRkAAABfY29va2llX2Zyb21fY29va2llX3R1cGxlpgUAAHOCAAAAAAMSAhIBEgESARIDEgEMAQMBEAENAQwBEgISARIB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Y2hpbmdfcmZjMjk2NUMGAABzBAAAAAABGAF1MwAAAENvb2tpZUphci5tYWtlX2Nvb2tpZXMuPGxvY2Fscz4ubm9fbWF0Y2hpbmdfcmZjMjk2NU4oEQAAAHUEAAAAaW5mb3UHAAAAZ2V0X2FsbHUHAAAAX3BvbGljeXUHAAAAcmZjMjk2NXUIAAAAbmV0c2NhcGV1FwAAAF9jb29raWVzX2Zyb21fYXR0cnNfc2V0dRIAAABzcGxpdF9oZWFkZXJfd29yZHN1CQAAAEV4Y2VwdGlvbnUZAAAAX3dhcm5fdW5oYW5kbGVkX2V4Y2VwdGlvbnUQAAAAcGFyc2VfbnNfaGVhZGVyc3UYAAAAX3Byb2Nlc3NfcmZjMjEwOV9jb29raWVzdQQAAABOb25ldQYAAABkb21haW51BAAAAHBhdGh1BAAAAG5hbWV1BgAAAGZpbHRlcnUGAAAAZXh0ZW5kKA0AAAB1BAAAAHNlbGZ1CAAAAHJlc3BvbnNldQcAAAByZXF1ZXN0dQcAAABoZWFkZXJzdQwAAAByZmMyOTY1X2hkcnN1BwAAAG5zX2hkcnN1BwAAAHJmYzI5NjV1CAAAAG5ldHNjYXBldQcAAABjb29raWVzdQoAAABuc19jb29raWVzdQYAAABsb29rdXB1BgAAAGNvb2tpZXUTAAAAbm9fbWF0Y2hpbmdfcmZjMjk2NSgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUMAAAAbWFrZV9jb29raWVzFwYAAHNCAAAAAAMMARIBEgIMAQwCDgEOAQ4BDgEEAgMBBgEWAQ0BBwELAgwBAwIGARYBDQEHAQsBDQgGAQYBDQEgAg8DEgIGARMCdRYAAABDb29raWVKYXIubWFrZV9jb29raWVzYwMAAAAAAAAAAwAAAAoAAABDAAAAc2oAAAB8AABqAABqAQCDAAABekgAdAIAdAMAagMAgwAAgwEABHwAAGoEAF8FAHwAAF8FAHwAAGoEAGoGAHwBAHwCAIMCAHJUAHwAAGoHAHwBAIMBAAFuAABXZAEAfAAAagAAaggAgwAAAVhkAQBTKAIAAAB1LQAAAFNldCBhIGNvb2tpZSBpZiBwb2xpY3kgc2F5cyBpdCdzIE9LIHRvIGRvIHNv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eSBjb29raWVzIGJlbG9uZ2luZyB0byB0aGF0IGRvbWFpbiB3aWxsIGJlCiAgICAgICAgcmVtb3ZlZC4gIElmIGdpdmVuIHR3byBhcmd1bWVudHMsIGNvb2tpZXMgYmVsb25naW5nIHRvIHRoZSBzcGVjaWZpZWQKICAgICAgICBwYXRoIHdpdGhpbiB0aGF0IGRvbWFpbiBhcmUgcmVtb3ZlZC4gIElmIGdpdmVuIHRocmVlIGFyZ3VtZW50cywgdGhlbgogICAgICAgIHRoZSBjb29raWUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUsIHBhdGggYW5kIGRvbWFpbiBpcyByZW1vdmVkLgoKICAgICAgICBSYWlzZXMgS2V5RXJyb3IgaWYgbm8gbWF0Y2hpbmcgY29va2llIGV4aXN0cy4KCiAgICAgICAgdTgAAABkb21haW4gYW5kIHBhdGggbXVzdCBiZSBnaXZlbiB0byByZW1vdmUgYSBjb29raWUgYnkgbmFtZXUuAAAAZG9tYWluIG11c3QgYmUgZ2l2ZW4gdG8gcmVtb3ZlIGNvb2tpZXMgYnkgcGF0aE4oAwAAAHUEAAAATm9uZXUKAAAAVmFsdWVFcnJvcnUIAAAAX2Nvb2tpZXMoBAAAAHUEAAAAc2VsZnUGAAAAZG9tYWludQQAAABwYXRodQQAAABuYW1lKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQUAAABjbGVhcnUGAABzGgAAAAAMDAEYAQMBDAEVAQwBDAEDAQwBEQEMAQ0CdQ8AAABDb29raWVKYXIuY2xlYXJjAQAAAAAAAAACAAAACwAAAEMAAABzXwAAAHwAAGoAAGoBAIMAAAF6PQB4NgB8AABEXS4AfQEAfAEAagIAchcAfAAAagMAfAEAagQAfAEAagUAfAEAagYAgwMAAXEXAHEXAFdXZAEAfAAAagAAagcAgwAAAVhkAQBTKAIAAAB1uwAAAERpc2NhcmQgYWxsIHNlc3Npb24gY29va2llcy4KCiAgICAgICAgTm90ZSB0aGF0IHRoZSAuc2F2ZSgpIG1ldGhvZCB3b24ndCBzYXZlIHNlc3Npb24gY29va2llcyBhbnl3YXksIHVubGVzcwogICAgICAgIHlvdSBhc2sgb3RoZXJ3aXNlIGJ5IHBhc3NpbmcgYSB0cnVlIGlnbm9yZV9kaXNjYXJkIGFyZ3VtZW50LgoKICAgICAgICBOKAgAAAB1DQAAAF9jb29raWVzX2xvY2t1BwAAAGFjcXVpcmV1BwAAAGRpc2NhcmR1BQAAAGNsZWFydQYAAABkb21haW51BAAAAHBhdGh1BAAAAG5hbWV1BwAAAHJlbGVhc2UoAgAAAHUEAAAAc2VsZnUGAAAAY29va2llKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dRUAAABjbGVhcl9zZXNzaW9uX2Nvb2tpZXOQBgAAcwwAAAAABw0BAwENAQkBJwJ1HwAAAENvb2tpZUphci5jbGVhcl9zZXNzaW9uX2Nvb2tpZXNjAQAAAAAAAAADAAAACwAAAEMAAABzcQAAAHwAAGoAAGoBAIMAAAF6TwB0AgBqAgCDAAB9AQB4PAB8AABEXTQAfQIAfAIAagMAfAEAgwEAciMAfAAAagQAfAIAagUAfAIAagYAfAIAagcAgwMAAXEjAHEjAFdXZAEAfAAAagAAaggAgwAAAVhkAQBTKAIAAAB1lAEAAERpc2NhcmQgYWxsIGV4cGlyZWQgY29va2llcy4KCiAgICAgICAgWW91IHByb2JhYmx5IGRvbid0IG5lZWQgdG8gY2FsbCB0aGlzIG1ldGhvZDogZXhwaXJlZCBjb29raWVzIGFyZSBuZXZlcgogICAgICAgIHNlbnQgYmFjayB0byB0aGUgc2VydmVyIChwcm92aWRlZCB5b3UncmUgdXNpbmcgRGVmYXVsdENvb2tpZVBvbGljeSksCiAgICAgICAgdGhpcyBtZXRob2QgaXMgY2FsbGVkIGJ5IENvb2tpZUphciBpdHNlbGYgZXZlcnkgc28gb2Z0ZW4sIGFuZCB0aGUKICAgICAgICAuc2F2ZSgpIG1ldGhvZCB3b24ndCBzYXZlIGV4cGlyZWQgY29va2llcyBhbnl3YXkgKHVubGVzcyB5b3UgYXNrCiAgICAgICAgb3RoZXJ3aXNlIGJ5IHBhc3NpbmcgYSB0cnVlIGlnbm9yZV9leHBpcmVzIGFyZ3VtZW50KS4KCiAgICAgICAgTigJAAAAdQ0AAABfY29va2llc19sb2NrdQcAAABhY3F1aXJldQQAAAB0aW1ldQoAAABpc19leHBpcmVkdQUAAABjbGVhcnUGAAAAZG9tYWludQQAAABwYXRodQQAAABuYW1ldQcAAAByZWxlYXNlKAMAAAB1BAAAAHNlbGZ1AwAAAG5vd3UGAAAAY29va2llKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dRUAAABjbGVhcl9leHBpcmVkX2Nvb2tpZXOfBgAAcw4AAAAACg0BAwEMAQ0BDwEnAnUfAAAAQ29va2llSmFyLmNsZWFyX2V4cGlyZWRfY29va2llc2MBAAAAAAAAAAEAAAACAAAAQwAAAHMNAAAAdAAAfAAAagEAgwEAUygBAAAATigCAAAAdQoAAABkZWVwdmFsdWVzdQgAAABfY29va2llcygBAAAAdQQAAABzZWxmKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQgAAABfX2l0ZXJfX7IGAABzAgAAAAABdRIAAABDb29raWVKYXIuX19pdGVyX19jAQAAAAAAAAADAAAAAwAAAEMAAABzJQAAAGQBAH0BAHgYAHwAAERdEAB9AgB8AQBkAgAXfQEAcQ0AV3wBAFMoAwAAAHUjAAAAUmV0dXJuIG51bWJlciBvZiBjb250YWluZWQgY29va2llcy5pAAAAAGkBAAAAKAAAAAAoAwAAAHUEAAAAc2VsZnUBAAAAaXUGAAAAY29va2llKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQcAAABfX2xlbl9ftQYAAHMIAAAAAAIGAQ0ADgF1EQAAAENvb2tpZUphci5fX2xlbl9fYwEAAAAAAAAAAwAAAAQAAABDAAAAc0QAAABnAAB9AQB4IQB8AABEXRkAfQIAfAEAagAAdAEAfAIAgwEAgwEAAXENAFdkAQB8AABqAgBkAgBqAwB8AQCDAQBmAgAWUygDAAAATnUIAAAAPCVzWyVzXT51AgAAACwgKAQAAAB1BgAAAGFwcGVuZHUEAAAAcmVwcnUJAAAAX19jbGFzc19fdQQAAABqb2luKAMAAAB1BAAAAHNlbGZ1AQAAAHJ1BgAAAGNvb2tpZSgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUIAAAAX19yZXByX1+7BgAAcwgAAAAAAQYBDQAXAXUSAAAAQ29va2llSmFyLl9fcmVwcl9fYwEAAAAAAAAAAwAAAAQAAABDAAAAc0QAAABnAAB9AQB4IQB8AABEXRkAfQIAfAEAagAAdAEAfAIAgwEAgwEAAXENAFdkAQB8AABqAgBkAgBqAwB8AQCDAQBmAgAWUygDAAAATnUIAAAAPCVzWyVzXT51AgAAACwgKAQAAAB1BgAAAGFwcGVuZHUDAAAAc3RydQkAAABfX2NsYXNzX191BAAAAGpvaW4oAwAAAHUEAAAAc2VsZnUBAAAAcnUGAAAAY29va2llKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQcAAABfX3N0cl9fwAYAAHMIAAAAAAEGAQ0AFwF1EQAAAENvb2tpZUphci5fX3N0cl9fTigjAAAAdQgAAABfX25hbWVfX3UKAAAAX19tb2R1bGVfX3UMAAAAX19xdWFsbmFtZV9fdQcAAABfX2RvY19fdQIAAAByZXUHAAAAY29tcGlsZXULAAAAbm9uX3dvcmRfcmV1CAAAAHF1b3RlX3JldRAAAABzdHJpY3RfZG9tYWluX3JldQkAAABkb21haW5fcmV1BwAAAGRvdHNfcmV1BQAAAEFTQ0lJdQgAAABtYWdpY19yZXUEAAAATm9uZXUIAAAAX19pbml0X191CgAAAHNldF9wb2xpY3l1EwAAAF9jb29raWVzX2Zvcl9kb21haW51FAAAAF9jb29raWVzX2Zvcl9yZXF1ZXN0dQ0AAABfY29va2llX2F0dHJzdREAAABhZGRfY29va2llX2hlYWRlcnUZAAAAX25vcm1hbGl6ZWRfY29va2llX3R1cGxlc3UZAAAAX2Nvb2tpZV9mcm9tX2Nvb2tpZV90dXBsZXUXAAAAX2Nvb2tpZXNfZnJvbV9hdHRy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fAMAdBQAfAAAahIAfAMAGYMBAGYCAIMBAAFxYAFXfAEAagYAZAwAdBQAfAAAahUAgwEAZgIAgwEAAXQWAHwBAGcBAIMBAFMoEwAAAHWTAAAAUmV0dXJuIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiBDb29raWUgaW4gYW4gdGhlIExXUCBjb29raWUgZmlsZSBmb3JtYXQuCgogICAgQWN0dWFsbHksIHRoZSBmb3JtYXQgaXMgZXh0ZW5kZWQgYSBiaXQgLS0gc2VlIG1vZHVsZSBkb2NzdHJpbmcuCgogICAgdQQAAABwYXRodQYAAABkb21haW51BAAAAHBvcnR1CQAAAHBhdGhfc3BlY3UJAAAAcG9ydF9zcGVjdQoAAABkb21haW5fZG90dQYAAABzZWN1cmV1BwAAAGV4cGlyZXN1BwAAAGRpc2NhcmR1BwAAAGNvbW1lbnR1CgAAAGNvbW1lbnR1cmx1BwAAAHZlcnNpb25OKAIAAAB1CQAAAHBhdGhfc3BlY04oAgAAAHUJAAAAcG9ydF9zcGVjTigCAAAAdQoAAABkb21haW5fZG90TigCAAAAdQYAAABzZWN1cmVOKAIAAAB1BwAAAGRpc2NhcmROKBcAAAB1BAAAAG5hbWV1BQAAAHZhbHVldQQAAABwYXRodQYAAABkb21haW51BAAAAHBvcnR1BAAAAE5vbmV1BgAAAGFwcGVuZHUOAAAAcGF0aF9zcGVjaWZpZWR1DgAAAHBvcnRfc3BlY2lmaWVkdRIAAABkb21haW5faW5pdGlhbF9kb3R1BgAAAHNlY3VyZXUHAAAAZXhwaXJlc3UJAAAAdGltZTJpc296dQUAAABmbG9hdHUHAAAAZGlzY2FyZHUHAAAAY29tbWVudHULAAAAY29tbWVudF91cmx1BgAAAHNvcnRlZHUFAAAAX3Jlc3R1BAAAAGtleXN1AwAAAHN0cnUHAAAAdmVyc2lvbnURAAAAam9pbl9oZWFkZXJfd29yZHMoBAAAAHUGAAAAY29va2lldQEAAABodQQAAABrZXlzdQEAAABrKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQ4AAABsd3BfY29va2llX3N0cgYHAABzNgAAAAAGDwEM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c3UHAAAAY29tbWVudHUKAAAAY29tbWVudHVybHUAAAAAaQAAAABpAQAAAHUBAAAALnUmAAAAaW52YWxpZCBTZXQtQ29va2llMyBmb3JtYXQgZmlsZSAlcjogJXIoBQAAAHUJAAAAcG9ydF9zcGVjdQkAAABwYXRoX3NwZWN1CgAAAGRvbWFpbl9kb3R1BgAAAHNlY3VyZXUHAAAAZGlzY2FyZCgHAAAAdQcAAAB2ZXJzaW9udQQAAABwb3J0dQQAAABwYXRodQYAAABkb21haW51BwAAAGV4cGlyZXN1BwAAAGNvbW1lbnR1CgAAAGNvbW1lbnR1cmxGVCgWAAAAdQgAAAByZWFkbGluZXUIAAAAbWFnaWNfcmV1BgAAAHNlYXJjaHUJAAAATG9hZEVycm9ydQQAAAB0aW1ldQoAAABzdGFydHN3aXRodQMAAABsZW51BQAAAHN0cmlwdRIAAABzcGxpdF9oZWFkZXJfd29yZHN1BQAAAEZhbHNldQQAAABOb25ldQUAAABsb3dlcnUEAAAAVHJ1ZXUDAAAAZ2V0dQgAAABpc28ydGltZXUGAAAAQ29va2lldQcAAABkaXNjYXJkdQoAAABpc19leHBpcmVkdQoAAABzZXRfY29va2lldQcAAABJT0Vycm9ydQkAAABFeGNlcHRpb251GQAAAF93YXJuX3VuaGFuZGxlZF9leGNlcHRpb24oGgAAAHUEAAAAc2VsZnUBAAAAZnUIAAAAZmlsZW5hbWV1DgAAAGlnbm9yZV9kaXNjYXJkdQ4AAABpZ25vcmVfZXhwaXJlc3UFAAAAbWFnaWN1AwAAAG1zZ3UDAAAAbm93dQYAAABoZWFkZXJ1DQAAAGJvb2xlYW5fYXR0cnN1CwAAAHZhbHVlX2F0dHJzdQQAAABsaW5ldQQAAABkYXRhdQQAAABuYW1ldQUAAAB2YWx1ZXUIAAAAc3RhbmRhcmR1BAAAAHJlc3R1AQAAAGt1AQAAAHZ1AgAAAGxjdQEAAABodQcAAABleHBpcmVzdQcAAABkaXNjYXJkdQYAAABkb21haW51EAAAAGRvbWFpbl9zcGVjaWZpZWR1AQAAAGMoAAAAACgAAAAAdTMAAAAvb3B0L2FsdC9weXRob24zMy9saWI2NC9weXRob24zLjMvaHR0cC9jb29raWVqYXIucHl1DAAAAF9yZWFsbHlfbG9hZE4HAABzjAAAAAABDAESAQMBBwEPAgwCBgEAAQYBAAEAAQABBgIDAQMBDAEMAAQBDwEGARwCFgEQAQYBBgENAQ4BHQEMAQ8CBgIYAQkBDAEMAAkBDQEMAQ0CDgIJAQwBDAEMAQ8BDAEJAQwBDwESARIBDwESAQkBAwEDAQkBCQEJARABBgEWAQYBGAINAQcBDQEHAQYBdRkAAABMV1BDb29raWVKYXIuX3JlYWxseV9sb2FkTlRGKAoAAAB1CAAAAF9fbmFtZV9fdQoAAABfX21vZHVsZV9fdQwAAABfX3F1YWxuYW1lX191BwAAAF9fZG9jX191BAAAAFRydWV1CgAAAGFzX2x3cF9zdHJ1BAAAAE5vbmV1BQAAAEZhbHNldQQAAABzYXZldQwAAABfcmVhbGx5X2xvYWQoAQAAAHUKAAAAX19sb2NhbHNfXygAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUMAAAATFdQQ29va2llSmFyIgcAAHMIAAAAEAsGAhIQFQ9jAQAAAAAAAAABAAAABQAAAEIAAABzUAAAAHwAAEVlAABaAQBkAABaAgBkAQBaAwBlBABqBQBkAgCDAQBaBgBkAwBaBwBkBABkBQCEAABaCABkCABkCQBkCQBkBgBkBwCEAwBaCwBkCABTKAoAAAB1EAAAAE1vemlsbGFDb29raWVKYXJ1kgUAAAoKICAgIFdBUk5JTkc6IHlvdSBtYXkgd2FudCB0byBiYWNrdXAgeW91ciBicm93c2VyJ3MgY29va2llcyBmaWxlIGlmIHlvdSB1c2UKICAgIHRoaXMgY2xhc3MgdG8gc2F2ZSBjb29raWVzLiAgSSAqdGhpbmsqIGl0IHdvcmtzLCBidXQgdGhlcmUgaGF2ZSBiZWVuCiAgICBidWdzIGluIHRoZSBwYXN0IQoKICAgIFRoaXMgY2xhc3MgZGlmZmVycyBmcm9tIENvb2tpZUphciBvbmx5IGluIHRoZSBmb3JtYXQgaXQgdXNlcyB0byBzYXZlIGFuZAogICAgbG9hZCBjb29raWVzIHRvIGFuZCBmcm9tIGEgZmlsZS4gIFRoaXMgY2xhc3MgdXNlcyB0aGUgTW96aWxsYS9OZXRzY2FwZQogICAgYGNvb2tpZXMudHh0JyBmb3JtYXQuICBseW54IHVzZXMgdGhpcyBmaWxlIGZvcm1hdCwgdG9vLgoKICAgIERvbid0IGV4cGVjdCBjb29raWVzIHNhdmVkIHdoaWxlIHRoZSBicm93c2VyIGlzIHJ1bm5pbmcgdG8gYmUgbm90aWNlZCBieQogICAgdGhlIGJyb3dzZXIgKGluIGZhY3QsIE1vemlsbGEgb24gdW5peCB3aWxsIG92ZXJ3cml0ZSB5b3VyIHNhdmVkIGNvb2tpZXMgaWYKICAgIHlvdSBjaGFuZ2UgdGhlbSBvbiBkaXNrIHdoaWxlIGl0J3MgcnVubmluZzsgb24gV2luZG93cywgeW91IHByb2JhYmx5IGNhbid0CiAgICBzYXZlIGF0IGFsbCB3aGlsZSB0aGUgYnJvd3NlciBpcyBydW5uaW5nKS4KCiAgICBOb3RlIHRoYXQgdGhlIE1vemlsbGEvTmV0c2NhcGUgZm9ybWF0IHdpbGwgZG93bmdyYWRlIFJGQzI5NjUgY29va2llcyB0bwogICAgTmV0c2NhcGUgY29va2llcyBvbiBzYXZpbmcuCgogICAgSW4gcGFydGljdWxhciwgdGhlIGNvb2tpZSB2ZXJzaW9uIGFuZCBwb3J0IG51bWJlciBpbmZvcm1hdGlvbiBpcyBsb3N0LAogICAgdG9nZXRoZXIgd2l0aCBpbmZvcm1hdGlvbiBhYm91dCB3aGV0aGVyIG9yIG5vdCBQYXRoLCBQb3J0IGFuZCBEaXNjYXJkIHdlcmUKICAgIHNwZWNpZmllZCBieSB0aGUgU2V0LUNvb2tpZTIgKG9yIFNldC1Db29raWUpIGhlYWRlciwgYW5kIHdoZXRoZXIgb3Igbm90IHRoZQogICAgZG9tYWluIGFzIHNldCBpbiB0aGUgSFRUUCBoZWFkZXIgc3RhcnRlZCB3aXRoIGEgZG90ICh5ZXMsIEknbSBhd2FyZSBzb21lCiAgICBkb21haW5zIGluIE5ldHNjYXBlIGZpbGVzIHN0YXJ0IHdpdGggYSBkb3QgYW5kIHNvbWUgZG9uJ3QgLS0gdHJ1c3QgbWUsIHlvdQogICAgcmVhbGx5IGRvbid0IHdhbnQgdG8ga25vdyBhbnkgbW9yZSBhYm91dCB0aGlzKS4KCiAgICBOb3RlIHRoYXQgdGhvdWdoIE1vemlsbGEgYW5kIE5ldHNjYXBlIHVzZSB0aGUgc2FtZSBmb3JtYXQsIHRoZXkgdXNlCiAgICBzbGlnaHRseSBkaWZmZXJlbnQgaGVhZGVycy4gIFRoZSBjbGFzcyBzYXZlcyBjb29raWVzIHVzaW5nIHRoZSBOZXRzY2FwZQogICAgaGVhZGVyIGJ5IGRlZmF1bHQgKE1vemlsbGEgY2FuIGNvcGUgd2l0aCB0aGF0KS4KCiAgICB1HgAAACMoIE5ldHNjYXBlKT8gSFRUUCBDb29raWUgRmlsZXVyAAAAIyBOZXRzY2FwZSBIVFRQIENvb2tpZSBGaWxlCiMgaHR0cDovL2N1cmwuaGF4eC5zZS9yZmMvY29va2llX3NwZWMuaHRtbAojIFRoaXMgaXMgYSBnZW5lcmF0ZWQgZmlsZSEgIERvIG5vdCBlZGl0LgoKYwUAAAAAAAAAEgAAABgAAABDAAAAcwUCAAB0AABqAACDAAB9BQB8AQBqAQCDAAB9BgB8AABqAgBqAwB8BgCDAQBzRwB8AQBqBACDAAABdAUAZAEAfAIAFoMBAIIBAG4AAHl0AXhtAXwBAGoBAIMAAH0HAHwHAGQCAGsCAHJpAFBuAAB8BwBqBgBkAwCDAQByiwB8BwBkAABkDACFAgAZfQcAbgAAfAcAagcAgwAAaggAZA0AgwEAc00AfAcAagcAgwAAZAIAawIAcrgAcU0AbgAAfAcAagkAZAcAgwEAXAcAfQgAfQkAfQoAfQsAfQwAfQ0AfQ4AfAsAZAgAawIAfQsAfAkAZAgAawIAfQkAfA0AZAIAawIAcg8BfA4AfQ0AZAAAfQ4AbgAAfAgAaggAZAkAgwEAfQ8AZA4AfRAAfAwAZAIAawIAcj8BZAAAfQwAZA8AfRAAbgAAdA0AZAoAfA0AfA4AZAAAZA4AfAgAfAkAfA8AfAoAZA4AfAsAfAwAfBAAZAAAZAAAaQAAgxAAfREAfAMADHKOAXwRAGoOAHKOAXFNAG4AAHwEAAxyqgF8EQBqDwB8BQCDAQByqgFxTQBuAAB8AABqEAB8EQCDAQABcU0AV25DAAR0EQBrCgBy0gEBAQGCAABZbi8ABHQSAGsKAHIAAgEBAXQTAIMAAAF0BQBkCwB8AgB8BwBmAgAWgwEAggEAWW4BAFhkAABTKBAAAABOdTQAAAAlciBkb2VzIG5vdCBsb29rIGxpa2UgYSBOZXRzY2FwZSBmb3JtYXQgY29va2llcyBmaWxldQAAAAB1AQAAAAppAQAAAHUBAAAAI3UBAAAAJHUBAAAACXUEAAAAVFJVRXUBAAAALmkAAAAAdSsAAABpbnZhbGlkIE5ldHNjYXBlIGZvcm1hdCBjb29raWVzIGZpbGUgJXI6ICVyaf////8oAgAAAHUBAAAAI3UBAAAAJEZUKBQAAAB1BAAAAHRpbWV1CAAAAHJlYWRsaW5ldQgAAABtYWdpY19yZXUGAAAAc2VhcmNodQUAAABjbG9zZXUJAAAATG9hZEVycm9ydQgAAABlbmRzd2l0aHUFAAAAc3RyaXB1CgAAAHN0YXJ0c3dpdGh1BQAAAHNwbGl0dQQAAABOb25ldQUAAABGYWxzZXUEAAAAVHJ1ZXUGAAAAQ29va2lldQcAAABkaXNjYXJkdQoAAABpc19leHBpcmVkdQoAAABzZXRfY29va2lldQcAAABJT0Vycm9ydQkAAABFeGNlcHRpb251GQAAAF93YXJuX3VuaGFuZGxlZF9leGNlcHRpb24oEgAAAHUEAAAAc2VsZnUBAAAAZnUIAAAAZmlsZW5hbWV1DgAAAGlnbm9yZV9kaXNjYXJkdQ4AAABpZ25vcmVfZXhwaXJlc3UDAAAAbm93dQUAAABtYWdpY3UEAAAAbGluZXUGAAAAZG9tYWludRAAAABkb21haW5fc3BlY2lmaWVkdQQAAABwYXRodQYAAABzZWN1cmV1BwAAAGV4cGlyZXN1BAAAAG5hbWV1BQAAAHZhbHVldQsAAABpbml0aWFsX2RvdHUHAAAAZGlzY2FyZHUBAAAAYygAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUMAAAAX3JlYWxseV9sb2FkxQcAAHNiAAAAAAEMAgwBEgEKAQMBAwENAgMBAwEMAQwABAMPABMDFQESAQYDJAEMAQwBDAQGAQkCDwMGAQwBBgEJAwwBBgEJAQYBAwEDAQMBAwEDAQkBEAEGARYBBgEUAg0BBwENAQcBBgF1HQAAAE1vemlsbGFDb29raWVKYXIuX3JlYWxseV9sb2FkYwQAAAAAAAAADAAAABIAAABDAAAAc4IBAAB8AQBkAABrCAByNgB8AABqAQBkAABrCQByJwB8AABqAQB9AQBxNgB0AgB0AwCDAQCCAQBuAAB0BAB8AQBkAQCDAgB9BAB6KwF8BABqBQB8AABqBgCDAQABdAcAagcAgwAAfQUAeAgBfAAARF0AAX0GAHwCAAxyhwB8BgBqCAByhwBxawBuAAB8AwAMcqMAfAYAagkAfAUAgwEAcqMAcWsAbgAAfAYAagoAcrUAZAIAfQcAbgYAZAMAfQcAfAYAagsAagwAZAQAgwEActYAZAIAfQgAbgYAZAMAfQgAfAYAag0AZAAAawkAcv0AdA4AfAYAag0AgwEAfQkAbgYAZAUAfQkAfAYAag8AZAAAawgAciQBZAUAfQoAfAYAahAAfQsAbhIAfAYAahAAfQoAfAYAag8AfQsAfAQAagUAZAYAahEAfAYAagsAfAgAfAYAahIAfAcAfAkAfAoAfAsAZwcAgwEAZAcAF4MBAAFxawBXV2QAAHwEAGoTAIMAAAFYZAAAUygIAAAATnUBAAAAd3UEAAAAVFJVRXUFAAAARkFMU0V1AQAAAC51AAAAAHUBAAAACXUBAAAACigUAAAAdQQAAABOb25ldQgAAABmaWxlbmFtZXUKAAAAVmFsdWVFcnJvcnUVAAAATUlTU0lOR19GSUxFTkFNRV9URVhUdQQAAABvcGVudQUAAAB3cml0ZXUGAAAAaGVhZGVydQQAAAB0aW1ldQcAAABkaXNjYXJkdQoAAABpc19leHBpcmVkdQYAAABzZWN1cmV1BgAAAGRvbWFpbnUKAAAAc3RhcnRzd2l0aHUHAAAAZXhwaXJlc3UDAAAAc3RydQUAAAB2YWx1ZXUEAAAAbmFtZXUEAAAAam9pbnUEAAAAcGF0aHUFAAAAY2xvc2UoDAAAAHUEAAAAc2VsZnUIAAAAZmlsZW5hbWV1DgAAAGlnbm9yZV9kaXNjYXJkdQ4AAABpZ25vcmVfZXhwaXJlc3UBAAAAZnUDAAAAbm93dQYAAABjb29raWV1BgAAAHNlY3VyZXULAAAAaW5pdGlhbF9kb3R1BwAAAGV4cGlyZXN1BAAAAG5hbWV1BQAAAHZhbHVlKAAAAAAoAAAAAHUzAAAAL29wdC9hbHQvcHl0aG9uMzMvbGliNjQvcHl0aG9uMy4zL2h0dHAvY29va2llamFyLnB5dQQAAABzYXZlBwgAAHNAAAAAAAEMAQ8ADAEPAg8BAwEQAQwBDQEQAQYBFgEGAQkACQEGARIACQEGAQ8BEgIGAQ8EBgEMAgkBCQEGARUBEgEQAnUVAAAATW96aWxsYUNvb2tpZUphci5zYXZlTkYoDAAAAHUIAAAAX19uYW1lX191CgAAAF9fbW9kdWxlX191DAAAAF9fcXVhbG5hbWVfX3UHAAAAX19kb2NfX3UCAAAAcmV1BwAAAGNvbXBpbGV1CAAAAG1hZ2ljX3JldQYAAABoZWFkZXJ1DAAAAF9yZWFsbHlfbG9hZHUEAAAATm9uZXUFAAAARmFsc2V1BAAAAHNhdmUoAQAAAHUKAAAAX19sb2NhbHNfXygAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUQAAAATW96aWxsYUNvb2tpZUphcp4HAABzCgAAABAeBgEPBgYCDEIoWwAAAHUHAAAAX19kb2NfX3UHAAAAX19hbGxfX3UEAAAAY29weXUIAAAAZGF0ZXRpbWV1AgAAAHJldQQAAAB0aW1ldQwAAAB1cmxsaWIucGFyc2V1BgAAAHVybGxpYnUOAAAAdXJsbGliLnJlcXVlc3R1CQAAAHRocmVhZGluZ3UKAAAAX3RocmVhZGluZ3ULAAAASW1wb3J0RXJyb3J1DwAAAGR1bW15X3RocmVhZGluZ3ULAAAAaHR0cC5jbGllbnR1BAAAAGh0dHB1CAAAAGNhbGVuZGFydQYAAAB0aW1lZ211BQAAAEZhbHNldQUAAABkZWJ1Z3UEAAAATm9uZXUGAAAAbG9nZ2VydQYAAABfZGVidWd1AwAAAHN0cnUGAAAAY2xpZW50dQkAAABIVFRQX1BPUlR1EQAAAERFRkFVTFRfSFRUUF9QT1JUdRUAAABNSVNTSU5HX0ZJTEVOQU1FX1RFWFR1GQAAAF93YXJuX3VuaGFuZGxlZF9leGNlcHRpb251CgAAAEVQT0NIX1lFQVJ1BwAAAF90aW1lZ211BAAAAERBWVN1BgAAAE1PTlRIU3UMAAAATU9OVEhTX0xPV0VSdQUAAABtb250aHUGAAAAYXBwZW5kdQUAAABsb3dlcnUJAAAAdGltZTJpc296dQ0AAAB0aW1lMm5ldHNjYXBldQkAAABVVENfWk9ORVN1BwAAAGNvbXBpbGV1BQAAAEFTQ0lJdQsAAABUSU1FWk9ORV9SRXUVAAAAb2Zmc2V0X2Zyb21fdHpfc3RyaW5ndQkAAABfc3RyMnRpbWV1DgAAAFNUUklDVF9EQVRFX1JFdQEAAABJdQoAAABXRUVLREFZX1JFdQEAAABYdRIAAABMT09TRV9IVFRQX0RBVEVfUkV1CQAAAGh0dHAydGltZXULAAAASVNPX0RBVEVfUkV1CAAAAGlzbzJ0aW1ldQkAAAB1bm1hdGNoZWR1DwAAAEhFQURFUl9UT0tFTl9SRXUWAAAASEVBREVSX1FVT1RFRF9WQUxVRV9SRXUPAAAASEVBREVSX1ZBTFVFX1JFdRAAAABIRUFERVJfRVNDQVBFX1JFdRIAAABzcGxpdF9oZWFkZXJfd29yZHN1FQAAAEhFQURFUl9KT0lOX0VTQ0FQRV9SRXURAAAAam9pbl9oZWFkZXJfd29yZHN1DAAAAHN0cmlwX3F1b3Rlc3UQAAAAcGFyc2VfbnNfaGVhZGVyc3UHAAAASVBWNF9SRXUGAAAAaXNfSEROdQwAAABkb21haW5fbWF0Y2h1DgAAAGxpYmVyYWxfaXNfSEROdREAAAB1c2VyX2RvbWFpbl9tYXRjaHULAAAAY3V0X3BvcnRfcmV1DAAAAHJlcXVlc3RfaG9zdHUQAAAAZWZmX3JlcXVlc3RfaG9zdHUMAAAAcmVxdWVzdF9wYXRodQwAAAByZXF1ZXN0X3BvcnR1DgAAAEhUVFBfUEFUSF9TQUZFdQ8AAABFU0NBUEVEX0NIQVJfUkV1FgAAAHVwcGVyY2FzZV9lc2NhcGVkX2NoYXJ1CwAAAGVzY2FwZV9wYXRodQUAAAByZWFjaHUOAAAAaXNfdGhpcmRfcGFydHl1BgAAAENvb2tpZXUMAAAAQ29va2llUG9saWN5dRMAAABEZWZhdWx0Q29va2llUG9saWN5dRIAAAB2YWxzX3NvcnRlZF9ieV9rZXl1CgAAAGRlZXB2YWx1ZXN1BgAAAEFic2VudHUJAAAAQ29va2llSmFydQcAAABJT0Vycm9ydQkAAABMb2FkRXJyb3J1DQAAAEZpbGVDb29raWVKYXJ1DgAAAGx3cF9jb29raWVfc3RydQwAAABMV1BDb29raWVKYXJ1EAAAAE1vemlsbGFDb29raWVKYXIoAAAAACgAAAAAKAAAAAB1MwAAAC9vcHQvYWx0L3B5dGhvbjMzL2xpYjY0L3B5dGhvbjMuMy9odHRwL2Nvb2tpZWphci5weXUIAAAAPG1vZHVsZT4aAAAAc6oAAAAGAgwBEgIMAQwBDAEMARgBAwEQAQ0BEQEMARACBgEGAgwKEgEGAwwOBgEMCBsBEgEYAQYBDQAXAg8TDxQiAhUBDA4MNQYBAwEMAQYBFgEGEBYBDDgGDxYBDCEMBQ8BDwEPAQ8BDFUPAQwZDAcMNBUBDA8MJwwKDBQVAQwQDAsMCgwQBgEPAQwCDA4MIwwRE2ITIRb/AFIMBAwTEwIT/wD/ABMWAhY9DBwWfA==
Base64 mode: content will be decoded on save.
Save
Close
Exit & Reset
Directory Contents
Dirs: 0 × Files: 10
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
client.cpython-33.pyc
43.45 KB
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
client.cpython-33.pyo
43.26 KB
lrw-r--r--
2024-04-17 16:58:22
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
cookiejar.cpython-33.pyc
76.11 KB
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
cookiejar.cpython-33.pyo
75.87 KB
lrw-r--r--
2024-04-17 16:58:22
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
cookies.cpython-33.pyc
21.56 KB
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
cookies.cpython-33.pyo
21.56 KB
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
server.cpython-33.pyc
46.48 KB
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
server.cpython-33.pyo
46.48 KB
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.cpython-33.pyc
145 B
lrw-r--r--
2024-04-17 16:58:25
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.cpython-33.pyo
145 B
lrw-r--r--
2024-04-17 16:58:25
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).