REDROOM
PHP 8.3.30
Path:
Logout
Edit File
Size: 103.42 KB
Close
/opt/imunify360/venv/lib64/python3.11/site-packages/attr/__pycache__/_make.cpython-311.pyc
Text
Base64
pw0NCgAAAAC+G49p03oBAOMAAAAAAAAAAAAAAAAPAAAAAAAAAPOsBAAAlwBkAGQBbABaAGQAZAFsAVoBZABkAWwCWgJkAGQBbANaA2QAZAFsBFoEZABkAWwFWgVkAGQCbAZtB1oHAQBkA2QEbAhtCVoJbQpaCm0LWgsBAGQDZAVsCW0MWgxtDVoNbQ5aDm0PWg8BAGQDZAZsEG0RWhFtEloSbRNaE20UWhQBAGUVahYAAAAAAAAAAFoXZAdaGGQIWhlkCVoaZApaGwIAZQRqHAAAAAAAAAAAaQCmAQAAqwEAAAAAAAAAAFodAgBlFaYAAACrAAAAAAAAAAAAWh4CAGULah8AAAAAAAAAAGULaiAAAAAAAAAAAGULaiEAAAAAAAAAAKYCAACrAgAAAAAAAAAAWiICAEcAZAuEAGQMZQFqIwAAAAAAAAAApgMAAKsDAAAAAAAAAABaJGUkaiUAAAAAAAAAAFolCQACAEcAZA2EAGQOZSamAwAAqwMAAAAAAAAAAFonZSVkAWQPZAFkAWQPZAFkAWQBZAFkEGQBZAFkAWQBZg9kEYQBWihkT2QThAFaKWQUhABaKmQVhABaKwIAZStkFmcAZBeiAaYCAACrAgAAAAAAAAAAWixkGIQAWi1kGYQAWi5kGoQAWi9kG4QAWjBkHIQAWjFkHYQAWjJkHoQAWjNkH4QAWjQCAEcAZCCEAGQhpgIAAKsCAAAAAAAAAABaNWQihABaNmQjhABaNwkAZFBkJIQBWjgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQBkUWQlhAFaOWU5WjoJAGQmhABaO2QnhABaPGQohABaPWQphABaPmQqhABaP2QrhABaQGQshABaQWRSZC2EAVpCZC6EAFpDZFNkL4QBWkRkMIQAWkVkMYQAWkZkMoQAWiFkM4QAWkdkNIQAWkhkNYQAWklkNoQAWkpkN4QAWktkOIQAWkxkOYQAWk1kOoQAWk5kO2VPZDxlT2YEZD2EBFpQAgBHAGQ+hABkP6YCAACrAgAAAAAAAAAAWlFkQIQAZVFqUgAAAAAAAAAARACmAAAAqwAAAAAAAAAAAFpTAgBlPgIAZUICAGVEZVFlU6xBpgIAAKsCAAAAAAAAAABkQoQAZVNEAKYAAACrAAAAAAAAAAAArEGmAgAAqwIAAAAAAAAAAGRDhABlU0QApgAAAKsAAAAAAAAAAACsQaYCAACrAgAAAAAAAAAAWlECAEcAZESEAGRFpgIAAKsCAAAAAAAAAABaVAIAZUICAGVEZVSmAQAAqwEAAAAAAAAAAKYBAACrAQAAAAAAAAAAWlQCAEcAZEaEAGRHpgIAAKsCAAAAAAAAAABaVWRIhABlVWpSAAAAAAAAAABEAKYAAACrAAAAAAAAAAAAWlYCAGU+AgBlQgIAZURlVWVWrEGmAgAAqwIAAAAAAAAAAGVWrEGmAgAAqwIAAAAAAAAAAGVWrEGmAgAAqwIAAAAAAAAAAFpVZRVmAWYBZEmEAVpXAgBlOWQPZA+sSqYCAACrAgAAAAAAAAAAAgBHAGRLhABkTKYCAACrAgAAAAAAAAAApgAAAKsAAAAAAAAAAABaWGRNhABaWWROhABaH2QBUwApVOkAAAAATikB2gppdGVtZ2V0dGVy6QEAAAApA9oHX2NvbXBhdNoHX2NvbmZpZ9oHc2V0dGVycykE2gVQWTMxMNoUX0Fubm90YXRpb25FeHRyYWN0b3LaEGdldF9nZW5lcmljX2Jhc2XaEHNldF9jbG9zdXJlX2NlbGwpBNoWRGVmYXVsdEFscmVhZHlTZXRFcnJvctoTRnJvemVuSW5zdGFuY2VFcnJvctoUTm90QW5BdHRyc0NsYXNzRXJyb3LaGVVuYW5ub3RhdGVkQXR0cmlidXRlRXJyb3J6E19fYXR0cl9jb252ZXJ0ZXJfJXN6EV9fYXR0cl9mYWN0b3J5XyVzKQR6D3R5cGluZy5DbGFzc1ZhcnoKdC5DbGFzc1ZhctoIQ2xhc3NWYXJ6GnR5cGluZ19leHRlbnNpb25zLkNsYXNzVmFy2hJfYXR0cnNfY2FjaGVkX2hhc2hjAAAAAAAAAAAAAAAAAgAAAAAAAADzPAAAAJcAZQBaAWQAWgJkAVoDAgBlBGoFAAAAAAAAAACmAAAAqwAAAAAAAAAAAFoGZAKEAFoHZAOEAFoIZARTACkF2ghfTm90aGluZ2FIAQAACiAgICBTZW50aW5lbCB0byBpbmRpY2F0ZSB0aGUgbGFjayBvZiBhIHZhbHVlIHdoZW4gYGBOb25lYGAgaXMgYW1iaWd1b3VzLgoKICAgIElmIGV4dGVuZGluZyBhdHRycywgeW91IGNhbiB1c2UgYGB0eXBpbmcuTGl0ZXJhbFtOT1RISU5HXWBgIHRvIHNob3cKICAgIHRoYXQgYSB2YWx1ZSBtYXkgYmUgYGBOT1RISU5HYGAuCgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAyMS4xLjAgYGBib29sKE5PVEhJTkcpYGAgaXMgbm93IEZhbHNlLgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAyMi4yLjAgYGBOT1RISU5HYGAgaXMgbm93IGFuIGBgZW51bS5FbnVtYGAgdmFyaWFudC4KICAgIGMBAAAAAAAAAAAAAAABAAAAAwAAAPMGAAAAlwBkAVMAKQJO2gdOT1RISU5HqQCpAdoEc2VsZnMBAAAAIPpqL2J1aWxkZGlyL2J1aWxkL0JVSUxEL2ltdW5pZnkzNjAtdmVudi0yLjYuMS9vcHQvaW11bmlmeTM2MC92ZW52L2xpYi9weXRob24zLjExL3NpdGUtcGFja2FnZXMvYXR0ci9fbWFrZS5wedoIX19yZXByX196EV9Ob3RoaW5nLl9fcmVwcl9fQQAAAHMHAAAAgADYDxiIefMAAAAAYwEAAAAAAAAAAAAAAAEAAAADAAAA8wYAAACXAGQBUwApAk5GchYAAAByFwAAAHMBAAAAIHIZAAAA2ghfX2Jvb2xfX3oRX05vdGhpbmcuX19ib29sX19EAAAAcwcAAACAANgPFIh1chsAAABOKQnaCF9fbmFtZV9f2gpfX21vZHVsZV9f2gxfX3F1YWxuYW1lX1/aB19fZG9jX1/aBGVudW3aBGF1dG9yFQAAAHIaAAAAch0AAAByFgAAAHIbAAAAchkAAAByEwAAAHITAAAANAAAAHNLAAAAgACAAIAAgACAAPACCAUI8AAIBQjwFAAPGIhkjGmJa4xrgEfwBAEFGfAAAQUZ8AABBRnwBgEFFfAAAQUV8AABBRXwAAEFFfAAAQUVchsAAAByEwAAAGMAAAAAAAAAAAAAAAADAAAAAAAAAPMwAAAAlwBlAFoBZABaAmQBWgMCAGUEZAKmAQAAqwEAAAAAAAAAAGQDZgJkBIQBWgVkAlMAKQXaEV9DYWNoZUhhc2hXcmFwcGVyYYEBAAAKICAgIEFuIGludGVnZXIgc3ViY2xhc3MgdGhhdCBwaWNrbGVzIC8gY29waWVzIGFzIE5vbmUKCiAgICBUaGlzIGlzIHVzZWQgZm9yIG5vbi1zbG90cyBjbGFzc2VzIHdpdGggYGBjYWNoZV9oYXNoPVRydWVgYCwgdG8gYXZvaWQKICAgIHNlcmlhbGl6aW5nIGEgcG90ZW50aWFsbHkgKGV2ZW4gbGlrZWx5KSBpbnZhbGlkIGhhc2ggdmFsdWUuIFNpbmNlIGBgTm9uZWBgCiAgICBpcyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdW5jYWxjdWxhdGVkIGhhc2hlcywgd2hlbmV2ZXIgdGhpcyBpcyBjb3BpZWQsCiAgICB0aGUgY29weSdzIHZhbHVlIGZvciB0aGUgaGFzaCBzaG91bGQgYXV0b21hdGljYWxseSByZXNldC4KCiAgICBTZWUgR0ggIzYxMyBmb3IgbW9yZSBkZXRhaWxzLgogICAgTnIWAAAAYwMAAAAAAAAAAAAAAAIAAAADAAAA8woAAACXAHwBfAJmAlMAqQFOchYAAAApA3IYAAAA2hFfbm9uZV9jb25zdHJ1Y3RvctoFX2FyZ3NzAwAAACAgIHIZAAAA2gpfX3JlZHVjZV9fehxfQ2FjaGVIYXNoV3JhcHBlci5fX3JlZHVjZV9fWgAAAHMNAAAAgADYDyCgJdAPJ9AIJ3IbAAAAKQZyHgAAAHIfAAAAciAAAAByIQAAANoEdHlwZXIqAAAAchYAAAByGwAAAHIZAAAAciUAAAByJQAAAE4AAABzQQAAAIAAgACAAIAAgADwAgkFCPAACQUI8BYALDCoNLAEqTqsOrhS8AABBSjwAAEFKPAAAQUo8AABBSjwAAEFKPAAAQUochsAAAByJQAAAFRGYw8AAAAAAAAAAAAAAAYAAAADAAAA81wCAACXAHQBAAAAAAAAAAAAAHwDfAt8DGQBpgQAAKsEAAAAAAAAAABcBAAAfQt9D30MfRB8BIEXfARkAXUBchN8BGQDdQFyD3QDAAAAAAAAAAAAAGQEpgEAAKsBAAAAAAAAAACCAXwJgUV8AHQEAAAAAAAAAAAAAHUBcg90BwAAAAAAAAAAAABkBaYBAACrAQAAAAAAAAAAggF0CQAAAAAAAAAAAAB8CaYBAACrAQAAAAAAAAAAcw90BwAAAAAAAAAAAABkBqYBAACrAQAAAAAAAAAAggF0CwAAAAAAAAAAAAB8CaYBAACrAQAAAAAAAAAAfQB8BoACaQB9BnQNAAAAAAAAAAAAAHwNdA4AAAAAAAAAAAAAdBAAAAAAAAAAAAAAZgKmAgAAqwIAAAAAAAAAAHIOdBMAAAAAAAAAAAAAagoAAAAAAAAAAHwNjgB9DXwBciV0DQAAAAAAAAAAAAB8AXQOAAAAAAAAAAAAAHQQAAAAAAAAAAAAAGYCpgIAAKsCAAAAAAAAAAByCXQXAAAAAAAAAAAAAHwBjgB9AXwIciV0DQAAAAAAAAAAAAB8CHQOAAAAAAAAAAAAAHQQAAAAAAAAAAAAAGYCpgIAAKsCAAAAAAAAAAByCXQVAAAAAAAAAAAAAHwIjgB9CHQZAAAAAAAAAAAAAGQXaQBkB3wAkwFkCHwBkwFkCXwCkwFkCmQCkwFkC3wEkwFkDHwFkwFkDXwIkwFkDnwGkwFkD3wHkwFkEHwKkwFkEXwLkwFkEnwPkwFkE3wMkwFkFHwQkwFkFXwNkwFkFnwOkwGOAVMAKRhh5BkAAAogICAgQ3JlYXRlIGEgbmV3IGF0dHJpYnV0ZSBvbiBhIGNsYXNzLgoKICAgIC4uICB3YXJuaW5nOjoKCiAgICAgICAgRG9lcyAqbm90KiBkbyBhbnl0aGluZyB1bmxlc3MgdGhlIGNsYXNzIGlzIGFsc28gZGVjb3JhdGVkIHdpdGgKICAgICAgICBgYXR0ci5zYCAvIGBhdHRycy5kZWZpbmVgIC8gZXQgY2V0ZXJhIQoKICAgIFBsZWFzZSBjb25zaWRlciB1c2luZyBgYXR0cnMuZmllbGRgIGluIG5ldyBjb2RlIChgYGF0dHIuaWJgYCB3aWxsICpuZXZlcioKICAgIGdvIGF3YXksIHRob3VnaCkuCgogICAgOnBhcmFtIGRlZmF1bHQ6IEEgdmFsdWUgdGhhdCBpcyB1c2VkIGlmIGFuICphdHRycyotZ2VuZXJhdGVkIGBgX19pbml0X19gYAogICAgICAgIGlzIHVzZWQgYW5kIG5vIHZhbHVlIGlzIHBhc3NlZCB3aGlsZSBpbnN0YW50aWF0aW5nIG9yIHRoZSBhdHRyaWJ1dGUgaXMKICAgICAgICBleGNsdWRlZCB1c2luZyBgYGluaXQ9RmFsc2VgYC4KCiAgICAgICAgSWYgdGhlIHZhbHVlIGlzIGFuIGluc3RhbmNlIG9mIGBhdHRycy5GYWN0b3J5YCwgaXRzIGNhbGxhYmxlIHdpbGwgYmUKICAgICAgICB1c2VkIHRvIGNvbnN0cnVjdCBhIG5ldyB2YWx1ZSAodXNlZnVsIGZvciBtdXRhYmxlIGRhdGEgdHlwZXMgbGlrZSBsaXN0cwogICAgICAgIG9yIGRpY3RzKS4KCiAgICAgICAgSWYgYSBkZWZhdWx0IGlzIG5vdCBzZXQgKG9yIHNldCBtYW51YWxseSB0byBgYXR0cnMuTk9USElOR2ApLCBhIHZhbHVlCiAgICAgICAgKm11c3QqIGJlIHN1cHBsaWVkIHdoZW4gaW5zdGFudGlhdGluZzsgb3RoZXJ3aXNlIGEgYFR5cGVFcnJvcmAKICAgICAgICB3aWxsIGJlIHJhaXNlZC4KCiAgICAgICAgVGhlIGRlZmF1bHQgY2FuIGFsc28gYmUgc2V0IHVzaW5nIGRlY29yYXRvciBub3RhdGlvbiBhcyBzaG93biBiZWxvdy4KCiAgICA6dHlwZSBkZWZhdWx0OiBBbnkgdmFsdWUKCiAgICA6cGFyYW0gY2FsbGFibGUgZmFjdG9yeTogU3ludGFjdGljIHN1Z2FyIGZvcgogICAgICAgIGBgZGVmYXVsdD1hdHRyLkZhY3RvcnkoZmFjdG9yeSlgYC4KCiAgICA6cGFyYW0gdmFsaWRhdG9yOiBgY2FsbGFibGVgIHRoYXQgaXMgY2FsbGVkIGJ5ICphdHRycyotZ2VuZXJhdGVkCiAgICAgICAgYGBfX2luaXRfX2BgIG1ldGhvZHMgYWZ0ZXIgdGhlIGluc3RhbmNlIGhhcyBiZWVuIGluaXRpYWxpemVkLiAgVGhleQogICAgICAgIHJlY2VpdmUgdGhlIGluaXRpYWxpemVkIGluc3RhbmNlLCB0aGUgOmZ1bmM6YH5hdHRycy5BdHRyaWJ1dGVgLCBhbmQgdGhlCiAgICAgICAgcGFzc2VkIHZhbHVlLgoKICAgICAgICBUaGUgcmV0dXJuIHZhbHVlIGlzICpub3QqIGluc3BlY3RlZCBzbyB0aGUgdmFsaWRhdG9yIGhhcyB0byB0aHJvdyBhbgogICAgICAgIGV4Y2VwdGlvbiBpdHNlbGYuCgogICAgICAgIElmIGEgYGxpc3RgIGlzIHBhc3NlZCwgaXRzIGl0ZW1zIGFyZSB0cmVhdGVkIGFzIHZhbGlkYXRvcnMgYW5kIG11c3QKICAgICAgICBhbGwgcGFzcy4KCiAgICAgICAgVmFsaWRhdG9ycyBjYW4gYmUgZ2xvYmFsbHkgZGlzYWJsZWQgYW5kIHJlLWVuYWJsZWQgdXNpbmcKICAgICAgICBgYXR0cnMudmFsaWRhdG9ycy5nZXRfZGlzYWJsZWRgIC8gYGF0dHJzLnZhbGlkYXRvcnMuc2V0X2Rpc2FibGVkYC4KCiAgICAgICAgVGhlIHZhbGlkYXRvciBjYW4gYWxzbyBiZSBzZXQgdXNpbmcgZGVjb3JhdG9yIG5vdGF0aW9uIGFzIHNob3duIGJlbG93LgoKICAgIDp0eXBlIHZhbGlkYXRvcjogYGNhbGxhYmxlYCBvciBhIGBsaXN0YCBvZiBgY2FsbGFibGVgXCBzLgoKICAgIDpwYXJhbSByZXByOiBJbmNsdWRlIHRoaXMgYXR0cmlidXRlIGluIHRoZSBnZW5lcmF0ZWQgYGBfX3JlcHJfX2BgCiAgICAgICAgbWV0aG9kLiBJZiBgYFRydWVgYCwgaW5jbHVkZSB0aGUgYXR0cmlidXRlOyBpZiBgYEZhbHNlYGAsIG9taXQgaXQuIEJ5CiAgICAgICAgZGVmYXVsdCwgdGhlIGJ1aWx0LWluIGBgcmVwcigpYGAgZnVuY3Rpb24gaXMgdXNlZC4gVG8gb3ZlcnJpZGUgaG93IHRoZQogICAgICAgIGF0dHJpYnV0ZSB2YWx1ZSBpcyBmb3JtYXR0ZWQsIHBhc3MgYSBgYGNhbGxhYmxlYGAgdGhhdCB0YWtlcyBhIHNpbmdsZQogICAgICAgIHZhbHVlIGFuZCByZXR1cm5zIGEgc3RyaW5nLiBOb3RlIHRoYXQgdGhlIHJlc3VsdGluZyBzdHJpbmcgaXMgdXNlZAogICAgICAgIGFzLWlzLCBpLmUuIGl0IHdpbGwgYmUgdXNlZCBkaXJlY3RseSAqaW5zdGVhZCogb2YgY2FsbGluZyBgYHJlcHIoKWBgCiAgICAgICAgKHRoZSBkZWZhdWx0KS4KICAgIDp0eXBlIHJlcHI6IGEgYGJvb2xgIG9yIGEgYGNhbGxhYmxlYCB0byB1c2UgYSBjdXN0b20gZnVuY3Rpb24uCgogICAgOnBhcmFtIGVxOiBJZiBgYFRydWVgYCAoZGVmYXVsdCksIGluY2x1ZGUgdGhpcyBhdHRyaWJ1dGUgaW4gdGhlCiAgICAgICAgZ2VuZXJhdGVkIGBgX19lcV9fYGAgYW5kIGBgX19uZV9fYGAgbWV0aG9kcyB0aGF0IGNoZWNrIHR3byBpbnN0YW5jZXMKICAgICAgICBmb3IgZXF1YWxpdHkuIFRvIG92ZXJyaWRlIGhvdyB0aGUgYXR0cmlidXRlIHZhbHVlIGlzIGNvbXBhcmVkLAogICAgICAgIHBhc3MgYSBgYGNhbGxhYmxlYGAgdGhhdCB0YWtlcyBhIHNpbmdsZSB2YWx1ZSBhbmQgcmV0dXJucyB0aGUgdmFsdWUKICAgICAgICB0byBiZSBjb21wYXJlZC4KICAgIDp0eXBlIGVxOiBhIGBib29sYCBvciBhIGBjYWxsYWJsZWAuCgogICAgOnBhcmFtIG9yZGVyOiBJZiBgYFRydWVgYCAoZGVmYXVsdCksIGluY2x1ZGUgdGhpcyBhdHRyaWJ1dGVzIGluIHRoZQogICAgICAgIGdlbmVyYXRlZCBgYF9fbHRfX2BgLCBgYF9fbGVfX2BgLCBgYF9fZ3RfX2BgIGFuZCBgYF9fZ2VfX2BgIG1ldGhvZHMuCiAgICAgICAgVG8gb3ZlcnJpZGUgaG93IHRoZSBhdHRyaWJ1dGUgdmFsdWUgaXMgb3JkZXJlZCwKICAgICAgICBwYXNzIGEgYGBjYWxsYWJsZWBgIHRoYXQgdGFrZXMgYSBzaW5nbGUgdmFsdWUgYW5kIHJldHVybnMgdGhlIHZhbHVlCiAgICAgICAgdG8gYmUgb3JkZXJlZC4KICAgIDp0eXBlIG9yZGVyOiBhIGBib29sYCBvciBhIGBjYWxsYWJsZWAuCgogICAgOnBhcmFtIGNtcDogU2V0dGluZyAqY21wKiBpcyBlcXVpdmFsZW50IHRvIHNldHRpbmcgKmVxKiBhbmQgKm9yZGVyKiB0byB0aGUKICAgICAgICBzYW1lIHZhbHVlLiBNdXN0IG5vdCBiZSBtaXhlZCB3aXRoICplcSogb3IgKm9yZGVyKi4KICAgIDp0eXBlIGNtcDogYSBgYm9vbGAgb3IgYSBgY2FsbGFibGVgLgoKICAgIDpwYXJhbSBPcHRpb25hbFtib29sXSBoYXNoOiBJbmNsdWRlIHRoaXMgYXR0cmlidXRlIGluIHRoZSBnZW5lcmF0ZWQKICAgICAgICBgYF9faGFzaF9fYGAgbWV0aG9kLiAgSWYgYGBOb25lYGAgKGRlZmF1bHQpLCBtaXJyb3IgKmVxKidzIHZhbHVlLiAgVGhpcwogICAgICAgIGlzIHRoZSBjb3JyZWN0IGJlaGF2aW9yIGFjY29yZGluZyB0aGUgUHl0aG9uIHNwZWMuICBTZXR0aW5nIHRoaXMgdmFsdWUKICAgICAgICB0byBhbnl0aGluZyBlbHNlIHRoYW4gYGBOb25lYGAgaXMgKmRpc2NvdXJhZ2VkKi4KICAgIDpwYXJhbSBib29sIGluaXQ6IEluY2x1ZGUgdGhpcyBhdHRyaWJ1dGUgaW4gdGhlIGdlbmVyYXRlZCBgYF9faW5pdF9fYGAKICAgICAgICBtZXRob2QuICBJdCBpcyBwb3NzaWJsZSB0byBzZXQgdGhpcyB0byBgYEZhbHNlYGAgYW5kIHNldCBhIGRlZmF1bHQKICAgICAgICB2YWx1ZS4gIEluIHRoYXQgY2FzZSB0aGlzIGF0dHJpYnV0ZWQgaXMgdW5jb25kaXRpb25hbGx5IGluaXRpYWxpemVkCiAgICAgICAgd2l0aCB0aGUgc3BlY2lmaWVkIGRlZmF1bHQgdmFsdWUgb3IgZmFjdG9yeS4KICAgIDpwYXJhbSBjYWxsYWJsZSBjb252ZXJ0ZXI6IGBjYWxsYWJsZWAgdGhhdCBpcyBjYWxsZWQgYnkKICAgICAgICAqYXR0cnMqLWdlbmVyYXRlZCBgYF9faW5pdF9fYGAgbWV0aG9kcyB0byBjb252ZXJ0IGF0dHJpYnV0ZSdzIHZhbHVlCiAgICAgICAgdG8gdGhlIGRlc2lyZWQgZm9ybWF0LiAgSXQgaXMgZ2l2ZW4gdGhlIHBhc3NlZC1pbiB2YWx1ZSwgYW5kIHRoZQogICAgICAgIHJldHVybmVkIHZhbHVlIHdpbGwgYmUgdXNlZCBhcyB0aGUgbmV3IHZhbHVlIG9mIHRoZSBhdHRyaWJ1dGUuICBUaGUKICAgICAgICB2YWx1ZSBpcyBjb252ZXJ0ZWQgYmVmb3JlIGJlaW5nIHBhc3NlZCB0byB0aGUgdmFsaWRhdG9yLCBpZiBhbnkuCiAgICA6cGFyYW0gbWV0YWRhdGE6IEFuIGFyYml0cmFyeSBtYXBwaW5nLCB0byBiZSB1c2VkIGJ5IHRoaXJkLXBhcnR5CiAgICAgICAgY29tcG9uZW50cy4gIFNlZSBgZXh0ZW5kaW5nLW1ldGFkYXRhYC4KCiAgICA6cGFyYW0gdHlwZTogVGhlIHR5cGUgb2YgdGhlIGF0dHJpYnV0ZS4gTm93YWRheXMsIHRoZSBwcmVmZXJyZWQgbWV0aG9kIHRvCiAgICAgICAgc3BlY2lmeSB0aGUgdHlwZSBpcyB1c2luZyBhIHZhcmlhYmxlIGFubm90YXRpb24gKHNlZSA6cGVwOmA1MjZgKS4KICAgICAgICBUaGlzIGFyZ3VtZW50IGlzIHByb3ZpZGVkIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LgogICAgICAgIFJlZ2FyZGxlc3Mgb2YgdGhlIGFwcHJvYWNoIHVzZWQsIHRoZSB0eXBlIHdpbGwgYmUgc3RvcmVkIG9uCiAgICAgICAgYGBBdHRyaWJ1dGUudHlwZWBgLgoKICAgICAgICBQbGVhc2Ugbm90ZSB0aGF0ICphdHRycyogZG9lc24ndCBkbyBhbnl0aGluZyB3aXRoIHRoaXMgbWV0YWRhdGEgYnkKICAgICAgICBpdHNlbGYuIFlvdSBjYW4gdXNlIGl0IGFzIHBhcnQgb2YgeW91ciBvd24gY29kZSBvciBmb3IKICAgICAgICBgc3RhdGljIHR5cGUgY2hlY2tpbmcgPHR5cGVzPmAuCiAgICA6cGFyYW0ga3dfb25seTogTWFrZSB0aGlzIGF0dHJpYnV0ZSBrZXl3b3JkLW9ubHkgaW4gdGhlIGdlbmVyYXRlZAogICAgICAgIGBgX19pbml0X19gYCAoaWYgYGBpbml0YGAgaXMgYGBGYWxzZWBgLCB0aGlzIHBhcmFtZXRlciBpcyBpZ25vcmVkKS4KICAgIDpwYXJhbSBvbl9zZXRhdHRyOiBBbGxvd3MgdG8gb3ZlcndyaXRlIHRoZSAqb25fc2V0YXR0ciogc2V0dGluZyBmcm9tCiAgICAgICAgYGF0dHIuc2AuIElmIGxlZnQgYE5vbmVgLCB0aGUgKm9uX3NldGF0dHIqIHZhbHVlIGZyb20gYGF0dHIuc2AgaXMgdXNlZC4KICAgICAgICBTZXQgdG8gYGF0dHJzLnNldHRlcnMuTk9fT1BgIHRvIHJ1biAqKm5vKiogYHNldGF0dHJgIGhvb2tzIGZvciB0aGlzCiAgICAgICAgYXR0cmlidXRlIC0tIHJlZ2FyZGxlc3Mgb2YgdGhlIHNldHRpbmcgaW4gYGF0dHIuc2AuCiAgICA6dHlwZSBvbl9zZXRhdHRyOiBgY2FsbGFibGVgLCBvciBhIGxpc3Qgb2YgY2FsbGFibGVzLCBvciBgTm9uZWAsIG9yCiAgICAgICAgYGF0dHJzLnNldHRlcnMuTk9fT1BgCiAgICA6cGFyYW0gT3B0aW9uYWxbc3RyXSBhbGlhczogT3ZlcnJpZGUgdGhpcyBhdHRyaWJ1dGUncyBwYXJhbWV0ZXIgbmFtZSBpbiB0aGUKICAgICAgICBnZW5lcmF0ZWQgYGBfX2luaXRfX2BgIG1ldGhvZC4gSWYgbGVmdCBgTm9uZWAsIGRlZmF1bHQgdG8gYGBuYW1lYGAKICAgICAgICBzdHJpcHBlZCBvZiBsZWFkaW5nIHVuZGVyc2NvcmVzLiBTZWUgYHByaXZhdGUtYXR0cmlidXRlc2AuCgogICAgLi4gdmVyc2lvbmFkZGVkOjogMTUuMi4wICpjb252ZXJ0KgogICAgLi4gdmVyc2lvbmFkZGVkOjogMTYuMy4wICptZXRhZGF0YSoKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMTcuMS4wICp2YWxpZGF0b3IqIGNhbiBiZSBhIGBgbGlzdGBgIG5vdy4KICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMTcuMS4wCiAgICAgICAqaGFzaCogaXMgYGBOb25lYGAgYW5kIHRoZXJlZm9yZSBtaXJyb3JzICplcSogYnkgZGVmYXVsdC4KICAgIC4uIHZlcnNpb25hZGRlZDo6IDE3LjMuMCAqdHlwZSoKICAgIC4uIGRlcHJlY2F0ZWQ6OiAxNy40LjAgKmNvbnZlcnQqCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxNy40LjAgKmNvbnZlcnRlciogYXMgYSByZXBsYWNlbWVudCBmb3IgdGhlIGRlcHJlY2F0ZWQKICAgICAgICpjb252ZXJ0KiB0byBhY2hpZXZlIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgbm91bi1iYXNlZCBhcmd1bWVudHMuCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxOC4xLjAKICAgICAgIGBgZmFjdG9yeT1mYGAgaXMgc3ludGFjdGljIHN1Z2FyIGZvciBgYGRlZmF1bHQ9YXR0ci5GYWN0b3J5KGYpYGAuCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxOC4yLjAgKmt3X29ubHkqCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDE5LjIuMCAqY29udmVydCoga2V5d29yZCBhcmd1bWVudCByZW1vdmVkLgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAxOS4yLjAgKnJlcHIqIGFsc28gYWNjZXB0cyBhIGN1c3RvbSBjYWxsYWJsZS4KICAgIC4uIGRlcHJlY2F0ZWQ6OiAxOS4yLjAgKmNtcCogUmVtb3ZhbCBvbiBvciBhZnRlciAyMDIxLTA2LTAxLgogICAgLi4gdmVyc2lvbmFkZGVkOjogMTkuMi4wICplcSogYW5kICpvcmRlcioKICAgIC4uIHZlcnNpb25hZGRlZDo6IDIwLjEuMCAqb25fc2V0YXR0cioKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMjAuMy4wICprd19vbmx5KiBiYWNrcG9ydGVkIHRvIFB5dGhvbiAyCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDIxLjEuMAogICAgICAgKmVxKiwgKm9yZGVyKiwgYW5kICpjbXAqIGFsc28gYWNjZXB0IGEgY3VzdG9tIGNhbGxhYmxlCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDIxLjEuMCAqY21wKiB1bmRlcHJlY2F0ZWQKICAgIC4uIHZlcnNpb25hZGRlZDo6IDIyLjIuMCAqYWxpYXMqCiAgICBUTkb6NkludmFsaWQgdmFsdWUgZm9yIGhhc2guICBNdXN0IGJlIFRydWUsIEZhbHNlLCBvciBOb25lLno9VGhlIGBkZWZhdWx0YCBhbmQgYGZhY3RvcnlgIGFyZ3VtZW50cyBhcmUgbXV0dWFsbHkgZXhjbHVzaXZlLnoqVGhlIGBmYWN0b3J5YCBhcmd1bWVudCBtdXN0IGJlIGEgY2FsbGFibGUu2gdkZWZhdWx02gl2YWxpZGF0b3LaBHJlcHLaA2NtcNoEaGFzaNoE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IHdhbnQgdG8uCgogICAgICAgIElmICp0aGVzZSogaXMgbm90IGBgTm9uZWBgLCAqYXR0cnMqIHdpbGwgKm5vdCogc2VhcmNoIHRoZSBjbGFzcyBib2R5CiAgICAgICAgZm9yIGF0dHJpYnV0ZXMgYW5kIHdpbGwgKm5vdCogcmVtb3ZlIGFueSBhdHRyaWJ1dGVzIGZyb20gaXQuCgogICAgICAgIFRoZSBvcmRlciBpcyBkZWR1Y2VkIGZyb20gdGhlIG9yZGVyIG9mIHRoZSBhdHRyaWJ1dGVzIGluc2lkZSAqdGhlc2UqLgoKICAgIDp0eXBlIHRoZXNlOiBgZGljdGAgb2YgYHN0cmAgdG8gYGF0dHIuaWJgCgogICAgOnBhcmFtIHN0ciByZXByX25zOiBXaGVuIHVzaW5nIG5lc3RlZCBjbGFzc2VzLCB0aGVyZSdzIG5vIHdheSBpbiBQeXRob24gMgogICAgICAgIHRvIGF1dG9tYXRpY2FsbHkgZGV0ZWN0IHRoYXQuICBUaGVyZWZvcmUgaXQncyBwb3NzaWJsZSB0byBzZXQgdGhlCiAgICAgICAgbmFtZXNwYWNlIGV4cGxpY2l0bHkgZm9yIGEgbW9yZSBtZWFuaW5nZnVsIGBgcmVwcmBgIG91dHB1dC4KICAgIDpwYXJhbSBib29sIGF1dG9fZGV0ZWN0OiBJbnN0ZWFkIG9mIHNldHRpbmcgdGhlICppbml0KiwgKnJlcHIqLCAqZXEqLAogICAgICAgICpvcmRlciosIGFuZCAqaGFzaCogYXJndW1lbnRzIGV4cGxpY2l0bHksIGFzc3VtZSB0aGV5IGFyZSBzZXQgdG8KICAgICAgICBgYFRydWVgYCAqKnVubGVzcyBhbnkqKiBvZiB0aGUgaW52b2x2ZWQgbWV0aG9kcyBmb3Igb25lIG9mIHRoZQogICAgICAgIGFyZ3VtZW50cyBpcyBpbXBsZW1lbnRlZCBpbiB0aGUgKmN1cnJlbnQqIGNsYXNzIChpLmUuIGl0IGlzICpub3QqCiAgICAgICAgaW5oZXJpdGVkIGZyb20gc29tZSBiYXNlIGNsYXNzKS4KCiAgICAgICAgU28gZm9yIGV4YW1wbGUgYnkgaW1wbGVtZW50aW5nIGBgX19lcV9fYGAgb24gYSBjbGFzcyB5b3Vyc2VsZiwKICAgICAgICAqYXR0cnMqIHdpbGwgZGVkdWNlIGBgZXE9RmFsc2VgYCBhbmQgd2lsbCBjcmVhdGUgKm5laXRoZXIqCiAgICAgICAgYGBfX2VxX19gYCAqbm9yKiBgYF9fbmVfX2BgIChidXQgUHl0aG9uIGNsYXNzZXMgY29tZSB3aXRoIGEgc2Vuc2libGUKICAgICAgICBgYF9fbmVfX2BgIGJ5IGRlZmF1bHQsIHNvIGl0ICpzaG91bGQqIGJlIGVub3VnaCB0byBvbmx5IGltcGxlbWVudAogICAgICAgIGBgX19lcV9fYGAgaW4gbW9zdCBjYXNlcykuCgogICAgICAgIC4uIHdhcm5pbmc6OgoKICAgICAgICAgICBJZiB5b3UgcHJldmVudCAqYXR0cnMqIGZyb20gY3JlYXRpbmcgdGhlIG9yZGVyaW5nIG1ldGhvZHMgZm9yIHlvdQogICAgICAgICAgIChgYG9yZGVyPUZhbHNlYGAsIGUuZy4gYnkgaW1wbGVtZW50aW5nIGBgX19sZV9fYGApLCBpdCBiZWNvbWVzCiAgICAgICAgICAgKnlvdXIqIHJlc3BvbnNpYmlsaXR5IHRvIG1ha2Ugc3VyZSBpdHMgb3JkZXJpbmcgaXMgc291bmQuIFRoZSBiZXN0CiAgICAgICAgICAgd2F5IGlzIHRvIHVzZSB0aGUgYGZ1bmN0b29scy50b3RhbF9vcmRlcmluZ2AgZGVjb3JhdG9yLgoKCiAgICAgICAgUGFzc2luZyBgYFRydWVgYCBvciBgYEZhbHNlYGAgdG8gKmluaXQqLCAqcmVwciosICplcSosICpvcmRlciosCiAgICAgICAgKmNtcCosIG9yICpoYXNoKiBvdmVycmlkZXMgd2hhdGV2ZXIgKmF1dG9fZGV0ZWN0KiB3b3VsZCBkZXRlcm1pbmUuCgogICAgOnBhcmFtIGJvb2wgcmVwcjogQ3JlYXRlIGEgYGBfX3JlcHJfX2BgIG1ldGhvZCB3aXRoIGEgaHVtYW4gcmVhZGFibGUKICAgICAgICByZXByZXNlbnRhdGlvbiBvZiAqYXR0cnMqIGF0dHJpYnV0ZXMuLgogICAgOnBhcmFtIGJvb2wgc3RyOiBDcmVhdGUgYSBgYF9fc3RyX19gYCBtZXRob2QgdGhhdCBpcyBpZGVudGljYWwgdG8KICAgICAgICBgYF9fcmVwcl9fYGAuICBUaGlzIGlzIHVzdWFsbHkgbm90IG5lY2Vzc2FyeSBleGNlcHQgZm9yCiAgICAgICAgYEV4Y2VwdGlvbmBcIHMuCiAgICA6cGFyYW0gT3B0aW9uYWxbYm9vbF0gZXE6IElmIGBgVHJ1ZWBgIG9yIGBgTm9uZWBgIChkZWZhdWx0KSwgYWRkIGBgX19lcV9fYGAKICAgICAgICBhbmQgYGBfX25lX19gYCBtZXRob2RzIHRoYXQgY2hlY2sgdHdvIGluc3RhbmNlcyBmb3IgZXF1YWxpdHkuCgogICAgICAgIFRoZXkgY29tcGFyZSB0aGUgaW5zdGFuY2VzIGFzIGlmIHRoZXkgd2VyZSB0dXBsZXMgb2YgdGhlaXIgKmF0dHJzKgogICAgICAgIGF0dHJpYnV0ZXMgaWYgYW5kIG9ubHkgaWYgdGhlIHR5cGVzIG9mIGJvdGggY2xhc3NlcyBhcmUgKmlkZW50aWNhbCohCiAgICA6cGFyYW0gT3B0aW9uYWxbYm9vbF0gb3JkZXI6IElmIGBgVHJ1ZWBgLCBhZGQgYGBfX2x0X19gYCwgYGBfX2xlX19gYCwKICAgICAgICBgYF9fZ3RfX2BgLCBhbmQgYGBfX2dlX19gYCBtZXRob2RzIHRoYXQgYmVoYXZlIGxpa2UgKmVxKiBhYm92ZSBhbmQKICAgICAgICBhbGxvdyBpbnN0YW5jZXMgdG8gYmUgb3JkZXJlZC4gSWYgYGBOb25lYGAgKGRlZmF1bHQpIG1pcnJvciB2YWx1ZSBvZgogICAgICAgICplcSouCiAgICA6cGFyYW0gT3B0aW9uYWxbYm9vbF0gY21wOiBTZXR0aW5nICpjbXAqIGlzIGVxdWl2YWxlbnQgdG8gc2V0dGluZyAqZXEqCiAgICAgICAgYW5kICpvcmRlciogdG8gdGhlIHNhbWUgdmFsdWUuIE11c3Qgbm90IGJlIG1peGVkIHdpdGggKmVxKiBvciAqb3JkZXIqLgogICAgOnBhcmFtIE9wdGlvbmFsW2Jvb2xdIHVuc2FmZV9oYXNoOiBJZiBgYE5vbmVgYCAoZGVmYXVsdCksIHRoZSBgYF9faGFzaF9fYGAKICAgICAgICBtZXRob2QgaXMgZ2VuZXJhdGVkIGFjY29yZGluZyBob3cgKmVxKiBhbmQgKmZyb3plbiogYXJlIHNldC4KCiAgICAgICAgMS4gSWYgKmJvdGgqIGFyZSBUcnVlLCAqYXR0cnMqIHdpbGwgZ2VuZXJhdGUgYSBgYF9faGFzaF9fYGAgZm9yIHlvdS4KICAgICAgICAyLiBJZiAqZXEqIGlzIFRydWUgYW5kICpmcm96ZW4qIGlzIEZhbHNlLCBgYF9faGFzaF9fYGAgd2lsbCBiZSBzZXQgdG8KICAgICAgICAgICBOb25lLCBtYXJraW5nIGl0IHVuaGFzaGFibGUgKHdoaWNoIGl0IGlzKS4KICAgICAgICAzLiBJZiAqZXEqIGlzIEZhbHNlLCBgYF9faGFzaF9fYGAgd2lsbCBiZSBsZWZ0IHVudG91Y2hlZCBtZWFuaW5nIHRoZQogICAgICAgICAgIGBgX19oYXNoX19gYCBtZXRob2Qgb2YgdGhlIGJhc2UgY2xhc3Mgd2lsbCBiZSB1c2VkIChpZiBiYXNlIGNsYXNzIGlzCiAgICAgICAgICAgYGBvYmplY3RgYCwgdGhpcyBtZWFucyBpdCB3aWxsIGZhbGwgYmFjayB0byBpZC1iYXNlZCBoYXNoaW5nLikuCgogICAgICAgIEFsdGhvdWdoIG5vdCByZWNvbW1lbmRlZCwgeW91IGNhbiBkZWNpZGUgZm9yIHlvdXJzZWxmIGFuZCBmb3JjZQogICAgICAgICphdHRycyogdG8gY3JlYXRlIG9uZSAoZS5nLiBpZiB0aGUgY2xhc3MgaXMgaW1tdXRhYmxlIGV2ZW4gdGhvdWdoIHlvdQogICAgICAgIGRpZG4ndCBmcmVlemUgaXQgcHJvZ3JhbW1hdGljYWxseSkgYnkgcGFzc2luZyBgYFRydWVgYCBvciBub3QuICBCb3RoIG9mCiAgICAgICAgdGhlc2UgY2FzZXMgYXJlIHJhdGhlciBzcGVjaWFsIGFuZCBzaG91bGQgYmUgdXNlZCBjYXJlZnVsbHkuCgogICAgICAgIFNlZSBvdXIgZG9jdW1lbnRhdGlvbiBvbiBgaGFzaGluZ2AsIFB5dGhvbidzIGRvY3VtZW50YXRpb24gb24KICAgICAgICBgb2JqZWN0Ll9faGFzaF9fYCwgYW5kIHRoZSBgR2l0SHViIGlzc3VlIHRoYXQgbGVkIHRvIHRoZSBkZWZhdWx0IFwKICAgICAgICBiZWhhdmlvciA8aHR0cHM6Ly9naXRodWIuY29tL3B5dGhvbi1hdHRycy9hdHRycy9pc3N1ZXMvMTM2PmBfIGZvciBtb3JlCiAgICAgICAgZGV0YWlscy4KICAgIDpwYXJhbSBPcHRpb25hbFtib29sXSBoYXNoOiBBbGlhcyBmb3IgKnVuc2FmZV9oYXNoKi4gKnVuc2FmZV9oYXNoKiB0YWtlcwogICAgICAgIHByZWNlZGVuY2UuCiAgICA6cGFyYW0gYm9vbCBpbml0OiBDcmVhdGUgYSBgYF9faW5pdF9fYGAgbWV0aG9kIHRoYXQgaW5pdGlhbGl6ZXMgdGhlCiAgICAgICAgKmF0dHJzKiBhdHRyaWJ1dGVzLiBMZWFkaW5nIHVuZGVyc2NvcmVzIGFyZSBzdHJpcHBlZCBmb3IgdGhlIGFyZ3VtZW50CiAgICAgICAgbmFtZS4gSWYgYSBgYF9fYXR0cnNfcHJlX2luaXRfX2BgIG1ldGhvZCBleGlzdHMgb24gdGhlIGNsYXNzLCBpdCB3aWxsCiAgICAgICAgYmUgY2FsbGVkIGJlZm9yZSB0aGUgY2xhc3MgaXMgaW5pdGlhbGl6ZWQuIElmIGEgYGBfX2F0dHJzX3Bvc3RfaW5pdF9fYGAKICAgICAgICBtZXRob2QgZXhpc3RzIG9uIHRoZSBjbGFzcywgaXQgd2lsbCBiZSBjYWxsZWQgYWZ0ZXIgdGhlIGNsYXNzIGlzIGZ1bGx5CiAgICAgICAgaW5pdGlhbGl6ZWQuCgogICAgICAgIElmIGBgaW5pdGBgIGlzIGBgRmFsc2VgYCwgYW4gYGBfX2F0dHJzX2luaXRfX2BgIG1ldGhvZCB3aWxsIGJlCiAgICAgICAgaW5qZWN0ZWQgaW5zdGVhZC4gVGhpcyBhbGxvd3MgeW91IHRvIGRlZmluZSBhIGN1c3RvbSBgYF9faW5pdF9fYGAKICAgICAgICBtZXRob2QgdGhhdCBjYW4gZG8gcHJlLWluaXQgd29yayBzdWNoIGFzIGBgc3VwZXIoKS5fX2luaXRfXygpYGAsCiAgICAgICAgYW5kIHRoZW4gY2FsbCBgYF9fYXR0cnNfaW5pdF9fKClgYCBhbmQgYGBfX2F0dHJzX3Bvc3RfaW5pdF9fKClgYC4KICAgIDpwYXJhbSBib29sIHNsb3RzOiBDcmVhdGUgYSA6dGVybTpgc2xvdHRlZCBjbGFzcyA8c2xvdHRlZCBjbGFzc2VzPmAgdGhhdCdzCiAgICAgICAgbW9yZSBtZW1vcnktZWZmaWNpZW50LiBTbG90dGVkIGNsYXNzZXMgYXJlIGdlbmVyYWxseSBzdXBlcmlvciB0byB0aGUKICAgICAgICBkZWZhdWx0IGRpY3QgY2xhc3NlcywgYnV0IGhhdmUgc29tZSBnb3RjaGFzIHlvdSBzaG91bGQga25vdyBhYm91dCwgc28KICAgICAgICB3ZSBlbmNvdXJhZ2UgeW91IHRvIHJlYWQgdGhlIDp0ZXJtOmBnbG9zc2FyeSBlbnRyeSA8c2xvdHRlZCBjbGFzc2VzPmAuCiAgICA6cGFyYW0gYm9vbCBmcm96ZW46IE1ha2UgaW5zdGFuY2VzIGltbXV0YWJsZSBhZnRlciBpbml0aWFsaXphdGlvbi4gIElmCiAgICAgICAgc29tZW9uZSBhdHRlbXB0cyB0byBtb2RpZnkgYSBmcm96ZW4gaW5zdGFuY2UsCiAgICAgICAgYGF0dHJzLmV4Y2VwdGlvbnMuRnJvemVuSW5zdGFuY2VFcnJvcmAgaXMgcmFpc2VkLgoKICAgICAgICAuLiBub3RlOjoKCiAgICAgICAgICAgIDEuIFRoaXMgaXMgYWNoaWV2ZWQgYnkgaW5zdGFsbGluZyBhIGN1c3RvbSBgYF9fc2V0YXR0cl9fYGAgbWV0aG9kCiAgICAgICAgICAgICAgIG9uIHlvdXIgY2xhc3MsIHNvIHlvdSBjYW4ndCBpbXBsZW1lbnQgeW91ciBvd24uCgogICAgICAgICAgICAyLiBUcnVlIGltbXV0YWJpbGl0eSBpcyBpbXBvc3NpYmxlIGluIFB5dGhvbi4KCiAgICAgICAgICAgIDMuIFRoaXMgKmRvZXMqIGhhdmUgYSBtaW5vciBhIHJ1bnRpbWUgcGVyZm9ybWFuY2UgYGltcGFjdAogICAgICAgICAgICAgICA8aG93LWZyb3plbj5gIHdoZW4gaW5pdGlhbGl6aW5nIG5ldyBpbnN0YW5jZXMuICBJbiBvdGhlciB3b3JkczoKICAgICAgICAgICAgICAgYGBfX2luaXRfX2BgIGlzIHNsaWdodGx5IHNsb3dlciB3aXRoIGBgZnJvemVuPVRydWVgYC4KCiAgICAgICAgICAgIDQuIElmIGEgY2xhc3MgaXMgZnJvemVuLCB5b3UgY2Fubm90IG1vZGlmeSBgYHNlbGZgYCBpbgogICAgICAgICAgICAgICBgYF9fYXR0cnNfcG9zdF9pbml0X19gYCBvciBhIHNlbGYtd3JpdHRlbiBgYF9faW5pdF9fYGAuIFlvdSBjYW4KICAgICAgICAgICAgICAgY2lyY3VtdmVudCB0aGF0IGxpbWl0YXRpb24gYnkgdXNpbmcKICAgICAgICAgICAgICAgYGBvYmplY3QuX19zZXRhdHRyX18oc2VsZiwgImF0dHJpYnV0ZV9uYW1lIiwgdmFsdWUpYGAuCgogICAgICAgICAgICA1LiBTdWJjbGFzc2VzIG9mIGEgZnJvemVuIGNsYXNzIGFyZSBmcm96ZW4gdG9vLgoKICAgIDpwYXJhbSBib29sIHdlYWtyZWZfc2xvdDogTWFrZSBpbnN0YW5jZXMgd2Vhay1yZWZlcmVuY2VhYmxlLiAgVGhpcyBoYXMgbm8KICAgICAgICBlZmZlY3QgdW5sZXNzIGBgc2xvdHNgYCBpcyBhbHNvIGVuYWJsZWQuCiAgICA6cGFyYW0gYm9vbCBhdXRvX2F0dHJpYnM6IElmIGBgVHJ1ZWBgLCBjb2xsZWN0IDpwZXA6YDUyNmAtYW5ub3RhdGVkCiAgICAgICAgYXR0cmlidXRlcyBmcm9tIHRoZSBjbGFzcyBib2R5LgoKICAgICAgICBJbiB0aGlzIGNhc2UsIHlvdSAqKm11c3QqKiBhbm5vdGF0ZSBldmVyeSBmaWVsZC4gIElmICphdHRycyoKICAgICAgICBlbmNvdW50ZXJzIGEgZmllbGQgdGhhdCBpcyBzZXQgdG8gYW4gYGF0dHIuaWJgIGJ1dCBsYWNrcyBhIHR5cGUKICAgICAgICBhbm5vdGF0aW9uLCBhbiBgYXR0ci5leGNlcHRpb25zLlVuYW5ub3RhdGVkQXR0cmlidXRlRXJyb3JgIGlzCiAgICAgICAgcmFpc2VkLiAgVXNlIGBgZmllbGRfbmFtZTogdHlwaW5nLkFueSA9IGF0dHIuaWIoLi4uKWBgIGlmIHlvdSBkb24ndAogICAgICAgIHdhbnQgdG8gc2V0IGEgdHlwZS4KCiAgICAgICAgSWYgeW91IGFzc2lnbiBhIHZhbHVlIHRvIHRob3NlIGF0dHJpYnV0ZXMgKGUuZy4gYGB4OiBpbnQgPSA0MmBgKSwgdGhhdAogICAgICAgIHZhbHVlIGJlY29tZXMgdGhlIGRlZmF1bHQgdmFsdWUgbGlrZSBpZiBpdCB3ZXJlIHBhc3NlZCB1c2luZwogICAgICAgIGBgYXR0ci5pYihkZWZhdWx0PTQyKWBgLiAgUGFzc2luZyBhbiBpbnN0YW5jZSBvZiBgYXR0cnMuRmFjdG9yeWAgYWxzbwogICAgICAgIHdvcmtzIGFzIGV4cGVjdGVkIGluIG1vc3QgY2FzZXMgKHNlZSB3YXJuaW5nIGJlbG93KS4KCiAgICAgICAgQXR0cmlidXRlcyBhbm5vdGF0ZWQgYXMgYHR5cGluZy5DbGFzc1ZhcmAsIGFuZCBhdHRyaWJ1dGVzIHRoYXQgYXJlCiAgICAgICAgbmVpdGhlciBhbm5vdGF0ZWQgbm9yIHNldCB0byBhbiBgYXR0ci5pYmAgYXJlICoqaWdub3JlZCoqLgoKICAgICAgICAuLiB3YXJuaW5nOjoKICAgICAgICAgICBGb3IgZmVhdHVyZXMgdGhhdCB1c2UgdGhlIGF0dHJpYnV0ZSBuYW1lIHRvIGNyZWF0ZSBkZWNvcmF0b3JzIChlLmcuCiAgICAgICAgICAgOnJlZjpgdmFsaWRhdG9ycyA8dmFsaWRhdG9ycz5gKSwgeW91IHN0aWxsICptdXN0KiBhc3NpZ24gYGF0dHIuaWJgCiAgICAgICAgICAgdG8gdGhlbS4gT3RoZXJ3aXNlIFB5dGhvbiB3aWxsIGVpdGhlciBub3QgZmluZCB0aGUgbmFtZSBvciB0cnkgdG8KICAgICAgICAgICB1c2UgdGhlIGRlZmF1bHQgdmFsdWUgdG8gY2FsbCBlLmcuIGBgdmFsaWRhdG9yYGAgb24gaXQuCgogICAgICAgICAgIFRoZXNlIGVycm9ycyBjYW4gYmUgcXVpdGUgY29uZnVzaW5nIGFuZCBwcm9iYWJseSB0aGUgbW9zdCBjb21tb24gYnVnCiAgICAgICAgICAgcmVwb3J0IG9uIG91ciBidWcgdHJhY2tlci4KCiAgICA6cGFyYW0gYm9vbCBrd19vbmx5OiBNYWtlIGFsbCBhdHRyaWJ1dGVzIGtleXdvcmQtb25seQogICAgICAgIGluIHRoZSBnZW5lcmF0ZWQgYGBfX2luaXRfX2BgIChpZiBgYGluaXRgYCBpcyBgYEZhbHNlYGAsIHRoaXMKICAgICAgICBwYXJhbWV0ZXIgaXMgaWdub3JlZCkuCiAgICA6cGFyYW0gYm9vbCBjYWNoZV9oYXNoOiBFbnN1cmUgdGhhdCB0aGUgb2JqZWN0J3MgaGFzaCBjb2RlIGlzIGNvbXB1dGVkCiAgICAgICAgb25seSBvbmNlIGFuZCBzdG9yZWQgb24gdGhlIG9iamVjdC4gIElmIHRoaXMgaXMgc2V0IHRvIGBgVHJ1ZWBgLAogICAgICAgIGhhc2hpbmcgbXVzdCBiZSBlaXRoZXIgZXhwbGljaXRseSBvciBpbXBsaWNpdGx5IGVuYWJsZWQgZm9yIHRoaXMKICAgICAgICBjbGFzcy4gIElmIHRoZSBoYXNoIGNvZGUgaXMgY2FjaGVkLCBhdm9pZCBhbnkgcmVhc3NpZ25tZW50cyBvZgogICAgICAgIGZpZWxkcyBpbnZvbHZlZCBpbiBoYXNoIGNvZGUgY29tcHV0YXRpb24gb3IgbXV0YXRpb25zIG9mIHRoZSBvYmplY3RzCiAgICAgICAgdGhvc2UgZmllbGRzIHBvaW50IHRvIGFmdGVyIG9iamVjdCBjcmVhdGlvbi4gIElmIHN1Y2ggY2hhbmdlcyBvY2N1ciwKICAgICAgICB0aGUgYmVoYXZpb3Igb2YgdGhlIG9iamVjdCdzIGhhc2ggY29kZSBpcyB1bmRlZmluZWQuCiAgICA6cGFyYW0gYm9vbCBhdXRvX2V4YzogSWYgdGhlIGNsYXNzIHN1YmNsYXNzZXMgYEJhc2VFeGNlcHRpb25gCiAgICAgICAgKHdoaWNoIGltcGxpY2l0bHkgaW5jbHVkZXMgYW55IHN1YmNsYXNzIG9mIGFueSBleGNlcHRpb24pLCB0aGUKICAgICAgICBmb2xsb3dpbmcgaGFwcGVucyB0byBiZWhhdmUgbGlrZSBhIHdlbGwtYmVoYXZlZCBQeXRob24gZXhjZXB0aW9ucwogICAgICAgIGNsYXNzOgoKICAgICAgICAtIHRoZSB2YWx1ZXMgZm9yICplcSosICpvcmRlciosIGFuZCAqaGFzaCogYXJlIGlnbm9yZWQgYW5kIHRoZQogICAgICAgICAgaW5zdGFuY2VzIGNvbXBhcmUgYW5kIGhhc2ggYnkgdGhlIGluc3RhbmNlJ3MgaWRzIChOLkIuICphdHRycyogd2lsbAogICAgICAgICAgKm5vdCogcmVtb3ZlIGV4aXN0aW5nIGltcGxlbWVudGF0aW9ucyBvZiBgYF9faGFzaF9fYGAgb3IgdGhlIGVxdWFsaXR5CiAgICAgICAgICBtZXRob2RzLiBJdCBqdXN0IHdvbid0IGFkZCBvd24gb25lcy4pLAogICAgICAgIC0gYWxsIGF0dHJpYnV0ZXMgdGhhdCBhcmUgZWl0aGVyIHBhc3NlZCBpbnRvIGBgX19pbml0X19gYCBvciBoYXZlIGEKICAgICAgICAgIGRlZmF1bHQgdmFsdWUgYXJlIGFkZGl0aW9uYWxseSBhdmFpbGFibGUgYXMgYSB0dXBsZSBpbiB0aGUgYGBhcmdzYGAKICAgICAgICAgIGF0dHJpYnV0ZSwKICAgICAgICAtIHRoZSB2YWx1ZSBvZiAqc3RyKiBpcyBpZ25vcmVkIGxlYXZpbmcgYGBfX3N0cl9fYGAgdG8gYmFzZSBjbGFzc2VzLgogICAgOnBhcmFtIGJvb2wgY29sbGVjdF9ieV9tcm86IFNldHRpbmcgdGhpcyB0byBgVHJ1ZWAgZml4ZXMgdGhlIHdheSAqYXR0cnMqCiAgICAgICBjb2xsZWN0cyBhdHRyaWJ1dGVzIGZyb20gYmFzZSBjbGFzc2VzLiAgVGhlIGRlZmF1bHQgYmVoYXZpb3IgaXMKICAgICAgIGluY29ycmVjdCBpbiBjZXJ0YWluIGNhc2VzIG9mIG11bHRpcGxlIGluaGVyaXRhbmNlLiAgSXQgc2hvdWxkIGJlIG9uIGJ5CiAgICAgICBkZWZhdWx0IGJ1dCBpcyBrZXB0IG9mZiBmb3IgYmFja3dhcmQtY29tcGF0aWJpbGl0eS4KCiAgICAgICBTZWUgaXNzdWUgYCM0MjggPGh0dHBzOi8vZ2l0aHViLmNvbS9weXRob24tYXR0cnMvYXR0cnMvaXNzdWVzLzQyOD5gXyBmb3IKICAgICAgIG1vcmUgZGV0YWlscy4KCiAgICA6cGFyYW0gT3B0aW9uYWxbYm9vbF0gZ2V0c3RhdGVfc2V0c3RhdGU6CiAgICAgICAuLiBub3RlOjoKICAgICAgICAgIFRoaXMgaXMgdXN1YWxseSBvbmx5IGludGVyZXN0aW5nIGZvciBzbG90dGVkIGNsYXNzZXMgYW5kIHlvdSBzaG91bGQKICAgICAgICAgIHByb2JhYmx5IGp1c3Qgc2V0ICphdXRvX2RldGVjdCogdG8gYFRydWVgLgoKICAgICAgIElmIGBUcnVlYCwgYGBfX2dldHN0YXRlX19gYCBhbmQKICAgICAgIGBgX19zZXRzdGF0ZV9fYGAgYXJlIGdlbmVyYXRlZCBhbmQgYXR0YWNoZWQgdG8gdGhlIGNsYXNzLiBUaGlzIGlzCiAgICAgICBuZWNlc3NhcnkgZm9yIHNsb3R0ZWQgY2xhc3NlcyB0byBiZSBwaWNrbGVhYmxlLiBJZiBsZWZ0IGBOb25lYCwgaXQncwogICAgICAgYFRydWVgIGJ5IGRlZmF1bHQgZm9yIHNsb3R0ZWQgY2xhc3NlcyBhbmQgYGBGYWxzZWBgIGZvciBkaWN0IGNsYXNzZXMuCgogICAgICAgSWYgKmF1dG9fZGV0ZWN0KiBpcyBgVHJ1ZWAsIGFuZCAqZ2V0c3RhdGVfc2V0c3RhdGUqIGlzIGxlZnQgYE5vbmVgLAogICAgICAgYW5kICoqZWl0aGVyKiogYGBfX2dldHN0YXRlX19gYCBvciBgYF9fc2V0c3RhdGVfX2BgIGlzIGRldGVjdGVkIGRpcmVjdGx5CiAgICAgICBvbiB0aGUgY2xhc3MgKGkuZS4gbm90IGluaGVyaXRlZCksIGl0IGlzIHNldCB0byBgRmFsc2VgICh0aGlzIGlzIHVzdWFsbHkKICAgICAgIHdoYXQgeW91IHdhbnQpLgoKICAgIDpwYXJhbSBvbl9zZXRhdHRyOiBBIGNhbGxhYmxlIHRoYXQgaXMgcnVuIHdoZW5ldmVyIHRoZSB1c2VyIGF0dGVtcHRzIHRvIHNldAogICAgICAgIGFuIGF0dHJpYnV0ZSAoZWl0aGVyIGJ5IGFzc2lnbm1lbnQgbGlrZSBgYGkueCA9IDQyYGAgb3IgYnkgdXNpbmcKICAgICAgICBgc2V0YXR0cmAgbGlrZSBgYHNldGF0dHIoaSwgIngiLCA0MilgYCkuIEl0IHJlY2VpdmVzIHRoZSBzYW1lIGFyZ3VtZW50cwogICAgICAgIGFzIHZhbGlkYXRvcnM6IHRoZSBpbnN0YW5jZSwgdGhlIGF0dHJpYnV0ZSB0aGF0IGlzIGJlaW5nIG1vZGlmaWVkLCBhbmQKICAgICAgICB0aGUgbmV3IHZhbHVlLgoKICAgICAgICBJZiBubyBleGNlcHRpb24gaXMgcmFpc2VkLCB0aGUgYXR0cmlidXRlIGlzIHNldCB0byB0aGUgcmV0dXJuIHZhbHVlIG9mCiAgICAgICAgdGhlIGNhbGxhYmxlLgoKICAgICAgICBJZiBhIGxpc3Qgb2YgY2FsbGFibGVzIGlzIHBhc3NlZCwgdGhleSdyZSBhdXRvbWF0aWNhbGx5IHdyYXBwZWQgaW4gYW4KICAgICAgICBgYXR0cnMuc2V0dGVycy5waXBlYC4KICAgIDp0eXBlIG9uX3NldGF0dHI6IGBjYWxsYWJsZWAsIG9yIGEgbGlzdCBvZiBjYWxsYWJsZXMsIG9yIGBOb25lYCwgb3IKICAgICAgICBgYXR0cnMuc2V0dGVycy5OT19PUGAKCiAgICA6cGFyYW0gT3B0aW9uYWxbY2FsbGFibGVdIGZpZWxkX3RyYW5zZm9ybWVyOgogICAgICAgIEEgZnVuY3Rpb24gdGhhdCBpcyBjYWxsZWQgd2l0aCB0aGUgb3JpZ2luYWwgY2xhc3Mgb2JqZWN0IGFuZCBhbGwKICAgICAgICBmaWVsZHMgcmlnaHQgYmVmb3JlICphdHRycyogZmluYWxpemVzIHRoZSBjbGFzcy4gIFlvdSBjYW4gdXNlCiAgICAgICAgdGhpcywgZS5nLiwgdG8gYXV0b21hdGljYWxseSBhZGQgY29udmVydGVycyBvciB2YWxpZGF0b3JzIHRvCiAgICAgICAgZmllbGRzIGJhc2VkIG9uIHRoZWlyIHR5cGVzLiAgU2VlIGB0cmFuc2Zvcm0tZmllbGRzYCBmb3IgbW9yZSBkZXRhaWxzLgoKICAgIDpwYXJhbSBib29sIG1hdGNoX2FyZ3M6CiAgICAgICAgSWYgYFRydWVgIChkZWZhdWx0KSwgc2V0IGBgX19tYXRjaF9hcmdzX19gYCBvbiB0aGUgY2xhc3MgdG8gc3VwcG9ydAogICAgICAgIDpwZXA6YDYzNGAgKFN0cnVjdHVyYWwgUGF0dGVybiBNYXRjaGluZykuIEl0IGlzIGEgdHVwbGUgb2YgYWxsCiAgICAgICAgbm9uLWtleXdvcmQtb25seSBgYF9faW5pdF9fYGAgcGFyYW1ldGVyIG5hbWVzIG9uIFB5dGhvbiAzLjEwIGFuZCBsYXRlci4KICAgICAgICBJZ25vcmVkIG9uIG9sZGVyIFB5dGhvbiB2ZXJzaW9ucy4KCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxNi4wLjAgKnNsb3RzKgogICAgLi4gdmVyc2lvbmFkZGVkOjogMTYuMS4wICpmcm96ZW4qCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxNi4zLjAgKnN0cioKICAgIC4uIHZlcnNpb25hZGRlZDo6IDE2LjMuMCBTdXBwb3J0IGZvciBgYF9fYXR0cnNfcG9zdF9pbml0X19gYC4KICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMTcuMS4wCiAgICAgICAqaGFzaCogc3VwcG9ydHMgYGBOb25lYGAgYXMgdmFsdWUgd2hpY2ggaXMgYWxzbyB0aGUgZGVmYXVsdCBub3cuCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxNy4zLjAgKmF1dG9fYXR0cmlicyoKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMTguMS4wCiAgICAgICBJZiAqdGhlc2UqIGlzIHBhc3NlZCwgbm8gYXR0cmlidXRlcyBhcmUgZGVsZXRlZCBmcm9tIHRoZSBjbGFzcyBib2R5LgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAxOC4xLjAgSWYgKnRoZXNlKiBpcyBvcmRlcmVkLCB0aGUgb3JkZXIgaXMgcmV0YWluZWQuCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxOC4yLjAgKndlYWtyZWZfc2xvdCoKICAgIC4uIGRlcHJlY2F0ZWQ6OiAxOC4yLjAKICAgICAgIGBgX19sdF9fYGAsIGBgX19sZV9fYGAsIGBgX19ndF9fYGAsIGFuZCBgYF9fZ2VfX2BgIG5vdyByYWlzZSBhCiAgICAgICBgRGVwcmVjYXRpb25XYXJuaW5nYCBpZiB0aGUgY2xhc3NlcyBjb21wYXJlZCBhcmUgc3ViY2xhc3NlcyBvZgogICAgICAgZWFjaCBvdGhlci4gYGBfX2VxYGAgYW5kIGBgX19uZV9fYGAgbmV2ZXIgdHJpZWQgdG8gY29tcGFyZWQgc3ViY2xhc3NlcwogICAgICAgdG8gZWFjaCBvdGhlci4KICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMTkuMi4wCiAgICAgICBgYF9fbHRfX2BgLCBgYF9fbGVfX2BgLCBgYF9fZ3RfX2BgLCBhbmQgYGBfX2dlX19gYCBub3cgZG8gbm90IGNvbnNpZGVyCiAgICAgICBzdWJjbGFzc2VzIGNvbXBhcmFibGUgYW55bW9yZS4KICAgIC4uIHZlcnNpb25hZGRlZDo6IDE4LjIuMCAqa3dfb25seSoKICAgIC4uIHZlcnNpb25hZGRlZDo6IDE4LjIuMCAqY2FjaGVfaGFzaCoKICAgIC4uIHZlcnNpb25hZGRlZDo6IDE5LjEuMCAqYXV0b19leGMqCiAgICAuLiBkZXByZWNhdGVkOjogMTkuMi4wICpjbXAqIFJlbW92YWwgb24gb3IgYWZ0ZXIgMjAyMS0wNi0wMS4KICAgIC4uIHZlcnNpb25hZGRlZDo6IDE5LjIuMCAqZXEqIGFuZCAqb3JkZXIqCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyMC4xLjAgKmF1dG9fZGV0ZWN0KgogICAgLi4gdmVyc2lvbmFkZGVkOjogMjAuMS4wICpjb2xsZWN0X2J5X21ybyoKICAgIC4uIHZlcnNpb25hZGRlZDo6IDIwLjEuMCAqZ2V0c3RhdGVfc2V0c3RhdGUqCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyMC4xLjAgKm9uX3NldGF0dHIqCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyMC4zLjAgKmZpZWxkX3RyYW5zZm9ybWVyKgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAyMS4xLjAKICAgICAgIGBgaW5pdD1GYWxzZWBgIGluamVjdHMgYGBfX2F0dHJzX2luaXRfX2BgCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDIxLjEuMCBTdXBwb3J0IGZv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ICpSZWFkLW9ubHkqIHJlcHJlc2VudGF0aW9uIG9mIGFuIGF0dHJpYnV0ZS4KCiAgICAuLiB3YXJuaW5nOjoKCiAgICAgICBZb3Ugc2hvdWxkIG5ldmVyIGluc3RhbnRpYXRlIHRoaXMgY2xhc3MgeW91cnNlbGYuCgogICAgVGhlIGNsYXNzIGhhcyAqYWxsKiBhcmd1bWVudHMgb2YgYGF0dHIuaWJgIChleGNlcHQgZm9yIGBgZmFjdG9yeWBgCiAgICB3aGljaCBpcyBvbmx5IHN5bnRhY3RpYyBzdWdhciBmb3IgYGBkZWZhdWx0PUZhY3RvcnkoLi4uKWBgIHBsdXMgdGhlCiAgICBmb2xsb3dpbmc6CgogICAgLSBgYG5hbWVgYCAoYHN0cmApOiBUaGUgbmFtZSBvZiB0aGUgYXR0cmlidXRlLgogICAgLSBgYGFsaWFzYGAgKGBzdHJgKTogVGhlIF9faW5pdF9fIHBhcmFtZXRlciBuYW1lIG9mIHRoZSBhdHRyaWJ1dGUsIGFmdGVyCiAgICAgIGFueSBleHBsaWNpdCBvdmVycmlkZXMgYW5kIGRlZmF1bHQgcHJpdmF0ZS1hdHRyaWJ1dGUtbmFtZSBoYW5kbGluZy4KICAgIC0gYGBpbmhlcml0ZWRgYCAoYGJvb2xgKTogV2hldGhlciBvciBub3QgdGhhdCBhdHRyaWJ1dGUgaGFzIGJlZW4gaW5oZXJpdGVkCiAgICAgIGZyb20gYSBiYXNlIGNsYXNzLgogICAgLSBgYGVxX2tleWBgIGFuZCBgYG9yZGVyX2tleWBgIChgdHlwaW5nLkNhbGxhYmxlYCBvciBgTm9uZWApOiBUaGUgY2FsbGFibGVzCiAgICAgIHRoYXQgYXJlIHVzZWQgZm9yIGNvbXBhcmluZyBhbmQgb3JkZXJpbmcgb2JqZWN0cyBieSB0aGlzIGF0dHJpYnV0ZSwKICAgICAgcmVzcGVjdGl2ZWx5LiBUaGVzZSBhcmUgc2V0IGJ5IHBhc3NpbmcgYSBjYWxsYWJsZSB0byBgYXR0ci5pYmAncyBgYGVxYGAsCiAgICAgIGBgb3JkZXJgYCwgb3IgYGBjbXBgYCBhcmd1bWVudHMuIFNlZSBhbHNvIDpyZWY6YGNvbXBhcmlzb24gY3VzdG9taXphdGlvbgogICAgICA8Y3VzdG9tLWNvbXBhcmlzb24+YC4KCiAgICBJbnN0YW5jZXMgb2YgdGhpcyBjbGFzcyBhcmUgZnJlcXVlbnRseSB1c2VkIGZvciBpbnRyb3NwZWN0aW9uIHB1cnBvc2VzCiAgICBsaWtlOgoKICAgIC0gYGZpZWxkc2AgcmV0dXJucyBhIHR1cGxlIG9mIHRoZW0uCiAgICAtIFZhbGlkYXRvcnMgZ2V0IHRoZW0gcGFzc2VkIGFzIHRoZSBmaXJzdCBhcmd1bWVudC4KICAgIC0gVGhlIDpyZWY6YGZpZWxkIHRyYW5zZm9ybWVyIDx0cmFuc2Zvcm0tZmllbGRzPmAgaG9vayByZWNlaXZlcyBhIGxpc3Qgb2YKICAgICAgdGhlbS4KICAgIC0gVGhlIGBgYWxpYXNgYCBwcm9wZXJ0eSBleHBvc2VzIHRoZSBfX2luaXRfXyBwYXJhbWV0ZXIgbmFtZSBvZiB0aGUgZmllbGQsCiAgICAgIHdpdGggYW55IG92ZXJyaWRlcyBhbmQgZGVmYXVsdCBwcml2YXRlLWF0dHJpYnV0ZSBoYW5kbGluZyBhcHBsaWVkLgoKCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyMC4xLjAgKmluaGVyaXRlZCoKICAgIC4uIHZlcnNpb25hZGRlZDo6IDIwLjEuMCAqb25fc2V0YXR0cioKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMjAuMi4wICppbmhlcml0ZWQqIGlzIG5vdCB0YWtlbiBpbnRvIGFjY291bnQgZm9yCiAgICAgICAgZXF1YWxpdHkgY2hlY2tzIGFuZCBoYXNoaW5nIGFueW1vcmUuCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyMS4xLjAgKmVxX2tleSogYW5kICpvcmRlcl9rZXkqCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyMi4yLjAgKmFsaWFzKgoKICAgIEZvciB0aGUgZnVsbCB2ZXJzaW9uIGhpc3Rvcnkgb2YgdGhlIGZpZWxkcywgc2VlIGBhdHRyLmliYC4KICAgICkRcl4AAAByLgAAAHIvAAAAcjAAAAByNwAAAHI4AAAAcjkAAAByOgAAAHIyAAAAcjMAAAByNQAAAHIrAAAAcjQAAAByNgAAAHKUAAAAcjsAAAByPAAA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
Base64 mode: content will be decoded on save.
Save
Close
Exit & Reset
Directory Contents
Dirs: 0 × Files: 13
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
converters.cpython-311.pyc
4.57 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
exceptions.cpython-311.pyc
3.90 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
filters.cpython-311.pyc
2.82 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
setters.cpython-311.pyc
1.91 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
validators.cpython-311.pyc
27.98 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_cmp.cpython-311.pyc
4.97 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_compat.cpython-311.pyc
6.32 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_config.cpython-311.pyc
1.17 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_funcs.cpython-311.pyc
16.19 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_make.cpython-311.pyc
103.42 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_next_gen.cpython-311.pyc
6.60 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_version_info.cpython-311.pyc
3.56 KB
lrw-r--r--
2026-02-13 12:40:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.cpython-311.pyc
4.26 KB
lrw-r--r--
2026-02-13 12:40:40
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).