REDROOM
PHP 8.0.30
Path:
Logout
Edit File
Size: 28.63 KB
Close
//proc/thread-self/root/opt/alt/python37/lib64/python3.7/site-packages/sqlalchemy/pool/__pycache__/base.cpython-37.pyc
Text
Base64
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IGNvbm5lY3Rpb24gcmVjeWNsaW5nLCB3aGljaCBtZWFucyB1cG9uCiAgICAgICAgICBjaGVja291dCwgaWYgdGhpcyB0aW1lb3V0IGlzIHN1cnBhc3NlZCB0aGUgY29ubmVjdGlvbiB3aWxsIGJlCiAgICAgICAgICBjbG9zZWQgYW5kIHJlcGxhY2VkIHdpdGggYSBuZXdseSBvcGVuZWQgY29ubmVjdGlvbi4gRGVmYXVsdHMgdG8gLTEuCgogICAgICAgIDpwYXJhbSBsb2dnaW5nX25hbWU6ICBTdHJpbmcgaWRlbnRpZmllciB3aGljaCB3aWxsIGJlIHVzZWQgd2l0aGluCiAgICAgICAgICB0aGUgIm5hbWUiIGZpZWxkIG9mIGxvZ2dpbmcgcmVjb3JkcyBnZW5lcmF0ZWQgd2l0aGluIHRoZQogICAgICAgICAgInNxbGFsY2hlbXkucG9vbCIgbG9nZ2VyLiBEZWZhdWx0cyB0byBhIGhleHN0cmluZyBvZiB0aGUgb2JqZWN0J3MKICAgICAgICAgIGlkLgoKICAgICAgICA6cGFyYW0gZWNobzogaWYgVHJ1ZSwgdGhlIGNvbm5lY3Rpb24gcG9vbCB3aWxsIGxvZwogICAgICAgICBpbmZvcm1hdGlvbmFsIG91dHB1dCBzdWNoIGFzIHdoZW4gY29ubmVjdGlvbnMgYXJlIGludmFsaWRhdGVkCiAgICAgICAgIGFzIHdlbGwgYXMgd2hlbiBjb25uZWN0aW9ucyBhcmUgcmVjeWNsZWQgdG8gdGhlIGRlZmF1bHQgbG9nIGhhbmRsZXIsCiAgICAgICAgIHdoaWNoIGRlZmF1bHRzIHRvIGBgc3lzLnN0ZG91dGBgIGZvciBvdXRwdXQuLiAgIElmIHNldCB0byB0aGUgc3RyaW5nCiAgICAgICAgIGBgImRlYnVnImBgLCB0aGUgbG9nZ2luZyB3aWxsIGluY2x1ZGUgcG9vbCBjaGVja291dHMgYW5kIGNoZWNraW5zLgoKICAgICAgICAgVGhlIDpwYXJhbXJlZjpgLlBvb2wuZWNob2AgcGFyYW1ldGVyIGNhbiBhbHNvIGJlIHNldCBmcm9tIHRoZQogICAgICAgICA6ZnVuYzpgLmNyZWF0ZV9lbmdpbmVgIGNhbGwgYnkgdXNpbmcgdGhlCiAgICAgICAgIDpwYXJhbXJlZjpgLmNyZWF0ZV9lbmdpbmUuZWNob19wb29sYCBwYXJhbWV0ZXIuCgogICAgICAgICAuLiBzZWVhbHNvOjoKCiAgICAgICAgICAgICA6cmVmOmBkYmVuZ2luZV9sb2dnaW5nYCAtIGZ1cnRoZXIgZGV0YWlsIG9uIGhvdyB0byBjb25maWd1cmUKICAgICAgICAgICAgIGxvZ2dpbmcuCgogICAgICAgIDpwYXJhbSB1c2VfdGhyZWFkbG9jYWw6IElmIHNldCB0byBUcnVlLCByZXBlYXRlZCBjYWxscyB0bwogICAgICAgICAgOm1ldGg6YGNvbm5lY3RgIHdpdGhpbiB0aGUgc2FtZSBhcHBsaWNhdGlvbiB0aHJlYWQgd2lsbCBiZQogICAgICAgICAgZ3VhcmFudGVlZCB0byByZXR1cm4gdGhlIHNhbWUgY29ubmVjdGlvbiBvYmplY3QgdGhhdCBpcyBhbHJlYWR5CiAgICAgICAgICBjaGVja2VkIG91dC4gICBUaGlzIGlzIGEgbGVnYWN5IHVzZSBjYXNlIGFuZCB0aGUgZmxhZyBoYXMgbm8KICAgICAgICAgIGVmZmVjdCB3aGVuIHVzaW5nIHRoZSBwb29sIHdpdGggYSA6Y2xhc3M6YC5FbmdpbmVgIG9iamVjdC4KCiAgICAgICAgOnBhcmFtIHJlc2V0X29uX3JldHVybjogRGV0ZXJtaW5lIHN0ZXBzIHRvIHRha2Ugb24KICAgICAgICAgIGNvbm5lY3Rpb25zIGFzIHRoZXkgYXJlIHJldHVybmVkIHRvIHRoZSBwb29sLgogICAgICAgICAgcmVzZXRfb25fcmV0dXJuIGNhbiBoYXZlIGFueSBvZiB0aGVzZSB2YWx1ZXM6CgogICAgICAgICAgKiBgYCJyb2xsYmFjayJgYCAtIGNhbGwgcm9sbGJhY2soKSBvbiB0aGUgY29ubmVjdGlvbiwKICAgICAgICAgICAgdG8gcmVsZWFzZSBsb2NrcyBhbmQgdHJhbnNhY3Rpb24gcmVzb3VyY2VzLgogICAgICAgICAgICBUaGlzIGlzIHRoZSBkZWZhdWx0IHZhbHVlLiAgVGhlIHZhc3QgbWFqb3JpdHkKICAgICAgICAgICAgb2YgdXNlIGNhc2VzIHNob3VsZCBsZWF2ZSB0aGlzIHZhbHVlIHNldC4KICAgICAgICAgICogYGBUcnVlYGAgLSBzYW1lIGFzICdyb2xsYmFjaycsIHRoaXMgaXMgaGVyZSBmb3IKICAgICAgICAgICAgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuCiAgICAgICAgICAqIGBgImNvbW1pdCJgYCAtIGNhbGwgY29tbWl0KCkgb24gdGhlIGNvbm5lY3Rpb24sCiAgICAgICAgICAgIHRvIHJlbGVhc2UgbG9ja3MgYW5kIHRyYW5zYWN0aW9uIHJlc291cmNlcy4KICAgICAgICAgICAgQSBjb21taXQgaGVyZSBtYXkgYmUgZGVzaXJhYmxlIGZvciBkYXRhYmFzZXMgdGhhdAogICAgICAgICAgICBjYWNoZSBxdWVyeSBwbGFucyBpZiBhIGNvbW1pdCBpcyBlbWl0dGVkLAogICAgICAgICAgICBzdWNoIGFzIE1pY3Jvc29mdCBTUUwgU2VydmVyLiAgSG93ZXZlciwgdGhpcwogICAgICAgICAgICB2YWx1ZSBpcyBtb3JlIGRhbmdlcm91cyB0aGFuICdyb2xsYmFjaycgYmVjYXVzZQogICAgICAgICAgICBhbnkgZGF0YSBjaGFuZ2VzIHByZXNlbnQgb24gdGhlIHRyYW5zYWN0aW9uCiAgICAgICAgICAgIGFyZSBjb21taXR0ZWQgdW5jb25kaXRpb25hbGx5LgogICAgICAgICAgKiBgYE5vbmVgYCAtIGRvbid0IGRvIGFueXRoaW5nIG9uIHRoZSBjb25uZWN0aW9uLgogICAgICAgICAgICBUaGlzIHNldHRpbmcgc2hvdWxkIGdlbmVyYWxseSBvbmx5IGJlIG1hZGUgb24gYSBkYXRhYmFzZQogICAgICAgICAgICB0aGF0IGhhcyBubyB0cmFuc2FjdGlvbiBzdXBwb3J0IGF0IGFsbCwKICAgICAgICAgICAgbmFtZWx5IE15U1FMIE15SVNBTTsgd2hlbiB1c2VkIG9uIHRoaXMgYmFja2VuZCwgcGVyZm9ybWFuY2UKICAgICAgICAgICAgY2FuIGJlIGltcHJvdmVkIGFzIHRoZSAicm9sbGJhY2siIGNhbGwgaXMgc3RpbGwgZXhwZW5zaXZlIG9uCiAgICAgICAgICAgIE15U1FMLiAgIEl0IGlzICoqc3Ryb25nbHkgcmVjb21tZW5kZWQqKiB0aGF0IHRoaXMgc2V0dGluZyBub3QgYmUKICAgICAgICAgICAgdXNlZCBmb3IgdHJhbnNhY3Rpb24tc3VwcG9ydGluZyBkYXRhYmFzZXMgaW4gY29uanVuY3Rpb24gd2l0aAogICAgICAgICAgICBhIHBlcnNpc3RlbnQgcG9vbCBzdWNoIGFzIDpjbGFzczpgLlF1ZXVlUG9vbGAsIGFzIGl0IG9wZW5zCiAgICAgICAgICAgIHRoZSBwb3NzaWJpbGl0eSBmb3IgY29ubmVjdGlvbnMgc3RpbGwgaW4gYSB0cmFuc2FjdGlvbiB0byBiZQogICAgICAgICAgICBpZGxlIGluIHRoZSBwb29sLiAgIFRoZSBzZXR0aW5nIG1heSBiZSBhcHByb3ByaWF0ZSBpbiB0aGUKICAgICAgICAgICAgY2FzZSBvZiA6Y2xhc3M6YC5OdWxsUG9vbGAgb3Igc3BlY2lhbCBjaXJjdW1zdGFuY2VzIHdoZXJlCiAgICAgICAgICAgIHRoZSBjb25uZWN0aW9uIHBvb2wgaW4gdXNlIGlzIG5vdCBiZWluZyB1c2VkIHRvIG1haW50YWluIGNvbm5lY3Rpb24KICAgICAgICAgICAgbGlmZWN5Y2xlLgoKICAgICAgICAgICogYGBGYWxzZWBgIC0gc2FtZSBhcyBOb25lLCB0aGlzIGlzIGhlcmUgZm9yCiAgICAgICAgICAgIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LgoKICAgICAgICA6cGFyYW0gZXZlbnRzOiBhIGxpc3Qgb2YgMi10dXBsZXMsIGVhY2ggb2YgdGhlIGZvcm0KICAgICAgICAgYGAoY2FsbGFibGUsIHRhcmdldClgYCB3aGljaCB3aWxsIGJlIHBhc3NlZCB0byA6ZnVuYzpgLmV2ZW50Lmxpc3RlbmAKICAgICAgICAgdXBvbiBjb25zdHJ1Y3Rpb24uICAgUHJvdmlkZWQgaGVyZSBzbyB0aGF0IGV2ZW50IGxpc3RlbmVycwogICAgICAgICBjYW4gYmUgYXNzaWduZWQgdmlhIDpmdW5jOmAuY3JlYXRlX2VuZ2luZWAgYmVmb3JlIGRpYWxlY3QtbGV2ZWwKICAgICAgICAgbGlzdGVuZXJzIGFyZSBhcHBsaWVkLgoKICAgICAgICA6cGFyYW0gbGlzdGVuZXJzOiBBIGxpc3Qgb2YgOmNsYXNzOmAuUG9vbExpc3RlbmVyYC1saWtlIG9iamVjdHMgb3IKICAgICAgICAgIGRpY3Rpb25hcmllcyBvZiBjYWxsYWJsZXMgdGhhdCByZWNlaXZlIGV2ZW50cyB3aGVuIERCLUFQSQogICAgICAgICAgY29ubmVjdGlvbnMgYXJlIGNyZWF0ZWQsIGNoZWNrZWQgb3V0IGFuZCBjaGVja2VkIGluIHRvIHRoZQogICAgICAgICAgcG9vbC4KCiAgICAgICAgOnBhcmFtIGRpYWxlY3Q6IGEgOmNsYXNzOmAuRGlhbGVjdGAgdGhhdCB3aWxsIGhhbmRsZSB0aGUgam9iCiAgICAgICAgIG9mIGNhbGxpbmcgcm9sbGJhY2soKSwgY2xvc2UoKSwgb3IgY29tbWl0KCkgb24gREJBUEkgY29ubmVjdGlvbnMuCiAgICAgICAgIElmIG9taXR0ZWQsIGEgYnVpbHQtaW4gInN0dWIiIGRpYWxlY3QgaXMgdXNlZC4gICBBcHBsaWNhdGlvbnMgdGhhdAogICAgICAgICBtYWtlIHVzZSBvZiA6ZnVuYzpgfi5jcmVhdGVfZW5naW5lYCBzaG91bGQgbm90IHVzZSB0aGlzIHBhcmFtZXRlcgogICAgICAgICBhcyBpdCBpcyBoYW5kbGVkIGJ5IHRoZSBlbmdpbmUgY3JlYXRpb24gc3RyYXRlZ3kuCgogICAgICAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAxLjEgLSBgYGRpYWxlY3RgYCBpcyBub3cgYSBwdWJsaWMgcGFyYW1ldGVyCiAgICAgICAgICAgIHRvIHRoZSA6Y2xhc3M6YC5Qb29sYC4KCiAgICAgICAgOnBhcmFtIHByZV9waW5nOiBpZiBUcnVlLCB0aGUgcG9vbCB3aWxsIGVtaXQgYSAicGluZyIgKHR5cGljYWxseQogICAgICAgICAiU0VMRUNUIDEiLCBidXQgaXMgZGlhbGVjdC1zcGVjaWZpYykgb24gdGhlIGNvbm5lY3Rpb24KICAgICAgICAgdXBvbiBjaGVja291dCwgdG8gdGVzdCBpZiB0aGUgY29ubmVjdGlvbiBpcyBhbGl2ZSBvciBub3QuICAgSWYgbm90LAogICAgICAgICB0aGUgY29ubmVjdGlvbiBpcyB0cmFuc3BhcmVudGx5IHJlLWNvbm5lY3RlZCBhbmQgdXBvbiBzdWNjZXNzLCBhbGwKICAgICAgICAgb3RoZXIgcG9vbGVkIGNvbm5lY3Rpb25zIGVzdGFibGlzaGVkIHByaW9yIHRvIHRoYXQgdGltZXN0YW1wIGFyZQogICAgICAgICBpbnZhbGlkYXRlZC4gICAgIFJlcXVpcmVzIHRoYXQgYSBkaWFsZWN0IGlzIHBhc3NlZCBhcyB3ZWxsIHRvCiAgICAgICAgIGludGVycHJldCB0aGUgZGlzY29ubmVjdGlvbiBlcnJvci4KCiAgICAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDEuMgoKICAgICAgICBOKQFaCGVjaG9mbGFncgEAAAByDgAAAFRaBG5vbmVGchQAAAB6J0ludmFsaWQgdmFsdWUgZm9yICdyZXNldF9vbl9yZXR1cm4nOiAlcikBWg5vbmx5X3Byb3BhZ2F0ZSkZ2gxsb2dnaW5nX25hbWVaEl9vcmlnX2xvZ2dpbmdfbmFtZXIHAAAAWg9pbnN0YW5jZV9sb2dnZXJyCQAAANoFbG9jYWzaDF90aHJlYWRjb25uc9oIX2NyZWF0b3LaCF9yZWN5Y2xl2hBfaW52YWxpZGF0ZV90aW1l2hBfdXNlX3RocmVhZGxvY2Fs2glfcHJlX3BpbmdyCgAAANoQX3Jlc2V0X29uX3JldHVybnIMAAAAcgsAAAByBQAAANoNQXJndW1lbnRFcnJvctoEZWNob9oIZGlzcGF0Y2haB191cGRhdGXaCF9kaWFsZWN0cgQAAADaBmxpc3RlbtoMYWRkX2xpc3RlbmVyKQ9yDwAAANoHY3JlYXRvctoHcmVjeWNsZXIsAAAAch8AAAByIgAAAFoPcmVzZXRfb25fcmV0dXJuciAAAADaBmV2ZW50c1oHZGlhbGVjdFoIcHJlX3BpbmfaCV9kaXNwYXRjaNoCZm7aBnRhcmdldNoBbHIRAAAAchEAAAByEgAAANoIX19pbml0X18/AAAAczwAAAAAfwAFBAEOAgYCDgEKAQYBBgEGAQYBBgEOAQgBEAEIAQwBCAIEAQoDBgIEARABBAEGAQQBDgESAQYBCgF6DVBvb2wuX19pbml0X19jAQAAAAAAAAABAAAAAgAAAEMAAABzCgAAAHwAagBkARkAUwApAk5yJQAAACkB2ghfX2RpY3RfXykBcg8AAAByEQAAAHIRAAAAchIAAAByJQAAAOcAAABzAgAAAAACeg1Qb29sLl9jcmVhdG9yYwIAAAAAAAAAAgAAAAMAAABDAAAAcxoAAAB8AXwAagBkATwAfACgAXwBoQF8AF8CZABTACkCTnIlAAAAKQNyOQAAANoUX3Nob3VsZF93cmFwX2NyZWF0b3LaD19pbnZva2VfY3JlYXRvcikCcg8AAAByMQAAAHIRAAAAchEAAAByEgAAAHIlAAAA6wAAAHMEAAAAAAIKAWMCAAAAAAAAAAUAAAAIAAAAAwAAAHOYAAAAeRR0AGoBfABqAmQBZAKNAn0CVwBuHAQAdANrCnIwAQABAAEAhwBmAWQDZASECFMAWAB8AmQFGQBkBmsJckp0BHwCZAUZAIMBcExkB30DdAR8AmQHGQCDAXwDGAB9BHwCZAcZAHwCZAUZAGYCZAhnAWQJZgJrAnJ8iABTAHwEZAprAnKIiABTAIcAZgFkC2QEhAhTAGQGUwApDHpsRGV0ZWN0IGlmIGNyZWF0b3IgYWNjZXB0cyBhIHNpbmdsZSBhcmd1bWVudCwgb3IgaXMgc2VudAogICAgICAgIGFzIGEgbGVnYWN5IHN0eWxlIG5vLWFyZyBmdW5jdGlvbi4KCiAgICAgICAgVCkBWgdub19zZWxmYwEAAAAAAAAAAQAAAAEAAAATAAAAcwYAAACIAIMAUwApAU5yEQAAACkB2gRjcmVjKQFyMQAAAHIRAAAAchIAAADaCDxsYW1iZGE++QAAAPMAAAAAeitQb29sLl9zaG91bGRfd3JhcF9jcmVhdG9yLjxsb2NhbHM+LjxsYW1iZGE+6QMAAABOcgEAAADaEWNvbm5lY3Rpb25fcmVjb3JkKQFO6QEAAABjAQAAAAAAAAABAAAAAQAAABMAAABzBgAAAIgAgwBTACkBTnIRAAAAKQFyPAAAACkBcjEAAAByEQAAAHISAAAAcj0AAAAIAQAAcj4AAAApBXIIAAAAWhRnZXRfY2FsbGFibGVfYXJnc3BlY3IlAAAA2glUeXBlRXJyb3LaA2xlbikFcg8AAAByMQAAAFoHYXJnc3BlY1oJZGVmYXVsdGVk2gtwb3NpdGlvbmFsc3IRAAAAKQFyMQAAAHISAAAAcjoAAADwAAAAcxYAAAAABgIBFAEOAQ4CHAEQBBoBBAIIAQQEehlQb29sLl9zaG91bGRfd3JhcF9jcmVhdG9yYwIAAAAAAAAAAgAAAAgAAABDAAAAc0oAAAB8AGoAoAFkAXwBoQIBAHkQfABqAqADfAGhAQEAVwBuJgQAdARrCnJEAQABAAEAfABqAGoFZAJ8AWQDZASNAwEAWQBuAlgAZABTACkFTnoVQ2xvc2luZyBjb25uZWN0aW9uICVyeh9FeGNlcHRpb24gY2xvc2luZyBjb25uZWN0aW9uICVyVCkB2ghleGNfaW5mbykG2gZsb2dnZXLaBWRlYnVnci4AAAByFwAAANoJRXhjZXB0aW9u2gVlcnJvcikCcg8AAADaCmNvbm5lY3Rpb25yEQAAAHIRAAAAchIAAADaEV9jbG9zZV9jb25uZWN0aW9uCgEAAHMMAAAAAAEOAgIBEAEOAQYBehZQb29sLl9jbG9zZV9jb25uZWN0aW9uegMwLjd6lVRoZSA6bWV0aDpgLlBvb2wuYWRkX2xpc3RlbmVyYCBtZXRob2QgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHJlbGVhc2UuICBQbGVhc2UgdXNlIHRoZSA6Y2xhc3M6YC5Qb29sRXZlbnRzYCBsaXN0ZW5lciBpbnRlcmZhY2UuYwIAAAAAAAAAAgAAAAQAAABDAAAAcxIAAAB0AGoBoAJ8AHwBoQIBAGQBUwApAmERAQAAQWRkIGEgOmNsYXNzOmAuUG9vbExpc3RlbmVyYC1saWtlIG9iamVjdCB0byB0aGlzIHBvb2wuCgogICAgICAgIGBgbGlzdGVuZXJgYCBtYXkgYmUgYW4gb2JqZWN0IHRoYXQgaW1wbGVtZW50cyBzb21lIG9yIGFsbCBvZgogICAgICAgIFBvb2xMaXN0ZW5lciwgb3IgYSBkaWN0aW9uYXJ5IG9mIGNhbGxhYmxlcyBjb250YWluaW5nIGltcGxlbWVudGF0aW9ucwogICAgICAgIG9mIHNvbWUgb3IgYWxsIG9mIHRoZSBuYW1lZCBtZXRob2RzIGluIFBvb2xMaXN0ZW5lci4KCiAgICAgICAgTikDcgYAAABaDFBvb2xMaXN0ZW5lcloPX2FkYXB0X2xpc3RlbmVyKQJyDwAAAFoIbGlzdGVuZXJyEQAAAHIRAAAAchIAAAByMAAAABQBAABzAgAAAAAOehFQb29sLmFkZF9saXN0ZW5lcmMBAAAAAAAAAAEAAAADAAAAQwAAAHMKAAAAdACgAXwAoQFTACkBYZIBAABQcm9kdWNlIGEgREJBUEkgY29ubmVjdGlvbiB0aGF0IGlzIG5vdCByZWZlcmVuY2VkIGJ5IGFueQogICAgICAgIHRocmVhZC1sb2NhbCBjb250ZXh0LgoKICAgICAgICBUaGlzIG1ldGhvZCBpcyBlcXVpdmFsZW50IHRvIDptZXRoOmAuUG9vbC5jb25uZWN0YCB3aGVuIHRoZQogICAgICAgIDpwYXJhbXJlZjpgLlBvb2wudXNlX3RocmVhZGxvY2FsYCBmbGFnIGlzIG5vdCBzZXQgdG8gVHJ1ZS4KICAgICAgICBXaGVuIDpwYXJhbXJlZjpgLlBvb2wudXNlX3RocmVhZGxvY2FsYCBpcyBUcnVlLCB0aGUKICAgICAgICA6bWV0aDpgLlBvb2wudW5pcXVlX2Nvbm5lY3Rpb25gIG1ldGhvZCBwcm92aWRlcyBhIG1lYW5zIG9mIGJ5cGFzc2luZwogICAgICAgIHRoZSB0aHJlYWRsb2NhbCBjb250ZXh0LgoKICAgICAgICApAtoQX0Nvbm5lY3Rpb25GYWlyedoJX2NoZWNrb3V0KQFyDwAAAHIRAAAAchEAAAByEgAAANoRdW5pcXVlX2Nvbm5lY3Rpb24kAQAAcwIAAAAAC3oWUG9vbC51bmlxdWVfY29ubmVjdGlvbmMBAAAAAAAAAAEAAAACAAAAQwAAAHMIAAAAdAB8AIMBUwApAXo2Q2FsbGVkIGJ5IHN1YmNsYXNzZXMgdG8gY3JlYXRlIGEgbmV3IENvbm5lY3Rpb25SZWNvcmQuKQHaEV9Db25uZWN0aW9uUmVjb3JkKQFyDwAAAHIRAAAAchEAAAByEgAAANoSX2NyZWF0ZV9jb25uZWN0aW9uMQEAAHMCAAAAAAN6F1Bvb2wuX2NyZWF0ZV9jb25uZWN0aW9uYwQAAAAAAAAABQAAAAQAAABDAAAAc0QAAAB0AHwBZAFkAoMDfQR8BHIcfABqAXwEagJrAHImdAOgA6EAfABfAXwDckB0AHwBZANkBIMDckB8AaAEfAKhAQEAZAJTACkFYZoBAABNYXJrIGFsbCBjb25uZWN0aW9ucyBlc3RhYmxpc2hlZCB3aXRoaW4gdGhlIGdlbmVyYXRpb24KICAgICAgICBvZiB0aGUgZ2l2ZW4gY29ubmVjdGlvbiBhcyBpbnZhbGlkYXRlZC4KCiAgICAgICAgSWYgdGhpcyBwb29sJ3MgbGFzdCBpbnZhbGlkYXRlIHRpbWUgaXMgYmVmb3JlIHdoZW4gdGhlIGdpdmVuCiAgICAgICAgY29ubmVjdGlvbiB3YXMgY3JlYXRlZCwgdXBkYXRlIHRoZSB0aW1lc3RhbXAgdGlsIG5vdy4gIE90aGVyd2lzZSwKICAgICAgICBubyBhY3Rpb24gaXMgcGVyZm9ybWVkLgoKICAgICAgICBDb25uZWN0aW9ucyB3aXRoIGEgc3RhcnQgdGltZSBwcmlvciB0byB0aGlzIHBvb2wncyBpbnZhbGlkYXRpb24KICAgICAgICB0aW1lIHdpbGwgYmUgcmVjeWNsZWQgdXBvbiBuZXh0IGNoZWNrb3V0LgogICAgICAgINoSX2Nvbm5lY3Rpb25fcmVjb3JkTtoIaXNfdmFsaWRGKQXaB2dldGF0dHJyJwAAANoJc3RhcnR0aW1l2gR0aW1l2gppbnZhbGlkYXRlKQVyDwAAAHJKAAAA2glleGNlcHRpb27aCF9jaGVja2lu2gNyZWNyEQAAAHIRAAAAchIAAADaC19pbnZhbGlkYXRlNgEAAHMKAAAAAAsMARABCgEQAXoQUG9vbC5faW52YWxpZGF0ZWMBAAAAAAAAAAEAAAABAAAAQwAAAHMKAAAAdACDAIIBZAFTACkCYRgBAABSZXR1cm4gYSBuZXcgOmNsYXNzOmAuUG9vbGAsIG9mIHRoZSBzYW1lIGNsYXNzIGFzIHRoaXMgb25lCiAgICAgICAgYW5kIGNvbmZpZ3VyZWQgd2l0aCBpZGVudGljYWwgY3JlYXRpb24gYXJndW1lbnRzLgoKICAgICAgICBUaGlzIG1ldGhvZCBpcyB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggOm1ldGg6YGRpc3Bvc2VgCiAgICAgICAg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Ll9Db25uZWN0aW9uUmVjb3JkYCBtYXkgZXhpc3QgZm9yIGEgc3BhbiBsb25nZXIgdGhhbiB0aGF0CiAgICBvZiBhIHNpbmdsZSBEQkFQSSBjb25uZWN0aW9uLiAgRm9yIGV4YW1wbGUsIGlmIHRoZQogICAgOm1ldGg6YC5fQ29ubmVjdGlvblJlY29yZC5pbnZhbGlkYXRlYAogICAgbWV0aG9kIGlzIGNhbGxlZCwgdGhlIERCQVBJIGNvbm5lY3Rpb24gYXNzb2NpYXRlZCB3aXRoIHRoaXMKICAgIDpjbGFzczpgLl9Db25uZWN0aW9uUmVjb3JkYAogICAgd2lsbCBiZSBkaXNjYXJkZWQsIGJ1dCB0aGUgOmNsYXNzOmAuX0Nvbm5lY3Rpb25SZWNvcmRgIG1heSBiZSB1c2VkIGFnYWluLAogICAgaW4gd2hpY2ggY2FzZSBhIG5ldyBEQkFQSSBjb25uZWN0aW9uIGlzIHByb2R1Y2VkIHdoZW4gdGhlIDpjbGFzczpgLlBvb2xgCiAgICBuZXh0IHVzZXMgdGhpcyByZWNvcmQuCgogICAgVGhlIDpjbGFzczpgLl9Db25uZWN0aW9uUmVjb3JkYCBpcyBkZWxpdmVyZWQgYWxvbmcgd2l0aCBjb25uZWN0aW9uCiAgICBwb29sIGV2ZW50cywgaW5jbHVkaW5nIDptZXRoOmAuUG9vbEV2ZW50cy5jb25uZWN0YCBhbmQKICAgIDptZXRoOmAuUG9vbEV2ZW50cy5jaGVja291dGAsIGhvd2V2ZXIgOmNsYXNzOmAuX0Nvbm5lY3Rpb25SZWNvcmRgIHN0aWxsCiAgICByZW1haW5zIGFuIGludGVybmFsIG9iamVjdCB3aG9zZSBBUEkgYW5kIGludGVybmFscyBtYXkgY2hhbmdlLgoKICAgIC4uIHNlZWFsc286OgoKICAgICAgICA6Y2xhc3M6YC5fQ29ubmVjdGlvbkZhaXJ5YAoKICAgIFRjAwAAAAAAAAADAAAAAwAAAEMAAABzIgAAAHwBfABfAHwCchZ8AGoBZAFkAo0BAQB0AoMAfABfA2QAUwApA05UKQHaE2ZpcnN0X2Nvbm5lY3RfY2hlY2spBNoXX0Nvbm5lY3Rpb25SZWNvcmRfX3Bvb2zaGl9Db25uZWN0aW9uUmVjb3JkX19jb25uZWN0cgIAAADaEWZpbmFsaXplX2NhbGxiYWNrKQNyDwAAANoEcG9vbHJgAAAAchEAAAByEQAAAHISAAAAcjgAAACyAQAAcwgAAAAAAQYBBAEMAXoaX0Nvbm5lY3Rpb25SZWNvcmQuX19pbml0X19OcgEAAABjAQAAAAAAAAABAAAAAQAAAEMAAABzBAAAAGkAUwApAWFZAgAAVGhlIGBgLmluZm9gYCBkaWN0aW9uYXJ5IGFzc29jaWF0ZWQgd2l0aCB0aGUgREJBUEkgY29ubmVjdGlvbi4KCiAgICAgICAgVGhpcyBkaWN0aW9uYXJ5IGlzIHNoYXJlZCBhbW9uZyB0aGUgOmF0dHI6YC5fQ29ubmVjdGlvbkZhaXJ5LmluZm9gCiAgICAgICAgYW5kIDphdHRyOmAuQ29ubmVjdGlvbi5pbmZvYCBhY2Nlc3NvcnMuCgogICAgICAgIC4uIG5vdGU6OgoKICAgICAgICAgICAgVGhlIGxpZmVzcGFuIG9mIHRoaXMgZGljdGlvbmFyeSBpcyBsaW5rZWQgdG8gdGhlCiAgICAgICAgICAgIERCQVBJIGNvbm5lY3Rpb24gaXRzZWxmLCBtZWFuaW5nIHRoYXQgaXQgaXMgKipkaXNjYXJkZWQqKiBlYWNoIHRpbWUKICAgICAgICAgICAgdGhlIERCQVBJIGNvbm5lY3Rpb24gaXMgY2xvc2VkIGFuZC9vciBpbnZhbGlkYXRlZC4gICBUaGUKICAgICAgICAgICAgOmF0dHI6YC5fQ29ubmVjdGlvblJlY29yZC5yZWNvcmRfaW5mb2AgZGljdGlvbmFyeSByZW1haW5zCiAgICAgICAgICAgIHBlcnNpc3RlbnQgdGhyb3VnaG91dCB0aGUgbGlmZXNwYW4gb2YgdGhlCiAgICAgICAgICAgIDpjbGFzczpgLl9Db25uZWN0aW9uUmVjb3JkYCBjb250YWluZXIuCgogICAgICAgIHIRAAAAKQFyDwAAAHIRAAAAchEAAAByEgAAANoEaW5mb8cBAABzAgAAAAARehZfQ29ubmVjdGlvblJlY29yZC5pbmZvYwEAAAAAAAAAAQAAAAEAAABDAAAAcwQAAABpAFMAKQFhvQEAAEFuICJpbmZvJyBkaWN0aW9uYXJ5IGFzc29jaWF0ZWQgd2l0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IHdpdGggdGhlIHVuZGVybHlpbmcgREJBUEkgY29ubmVjdGlvbgogICAgICAgIHJlZmVycmVkIHRvIGJ5IHRoaXMgOmNsYXNzOmAuQ29ubmVjdGlvbkZhaXJ5YCwgYWxsb3dpbmcgdXNlci1kZWZpbmVkCiAgICAgICAgZGF0YSB0byBiZSBhc3NvY2lhdGVkIHdpdGggdGhlIGNvbm5lY3Rpb24uCgogICAgICAgIFRoZSBkYXRhIGhlcmUgd2lsbCBmb2xsb3cgYWxvbmcgd2l0aCB0aGUgREJBUEkgY29ubmVjdGlvbiBpbmNsdWRpbmcKICAgICAgICBhZnRlciBpdCBpcyByZXR1cm5lZCB0byB0aGUgY29ubmVjdGlvbiBwb29sIGFuZCB1c2VkIGFnYWluCiAgICAgICAgaW4gc3Vic2VxdWVudCBpbnN0YW5jZXMgb2YgOmNsYXNzOmAuX0Nvbm5lY3Rpb25GYWlyeWAuICBJdCBpcyBzaGFyZWQKICAgICAgICB3aXRoIHRoZSA6YXR0cjpgLl9Db25uZWN0aW9uUmVjb3JkLmluZm9gIGFuZCA6YXR0cjpgLkNvbm5lY3Rpb24uaW5mb2AKICAgICAgICBhY2Nlc3NvcnMuCgogICAgICAgIFRoZSBkaWN0aW9uYXJ5IGFzc29jaWF0ZWQgd2l0aCBhIHBhcnRpY3VsYXIgREJBUEkgY29ubmVjdGlvbiBpcwogICAgICAgIGRpc2NhcmRlZCB3aGVuIHRoZSBjb25uZWN0aW9uIGl0c2VsZiBpcyBkaXNjYXJkZWQuCgogICAgICAgICkCclEAAABybQAAACkBcg8AAAByEQAAAHIRAAAAchIAAABybQAAAHsDAABzAgAAAAAQehVfQ29ubmVjdGlvbkZhaXJ5LmluZm9jAQAAAAAAAAABAAAAAQAAAEMAAABzFgAAAHwAagByDnwAagBqAVMAZAFTAGQBUwApAmGfAQAASW5mbyBkaWN0aW9uYXJ5IGFzc29jaWF0ZWQgd2l0aCB0aGUgOmNsYXNzOmAuX0Nvbm5lY3Rpb25SZWNvcmQKICAgICAgICBjb250YWluZXIgcmVmZXJyZWQgdG8gYnkgdGhpcyA6Y2xhc3M6YC5Db25uZWN0aW9uRmFpcnlgLgoKICAgICAgICBVbmxpa2UgdGhlIDphdHRyOmAuX0Nvbm5lY3Rpb25GYWlyeS5pbmZvYCBkaWN0aW9uYXJ5LCB0aGUgbGlmZXNwYW4KICAgICAgICBvZiB0aGlzIGRpY3Rpb25hcnkgaXMgcGVyc2lzdGVudCBhY3Jvc3MgY29ubmVjdGlvbnMgdGhhdCBhcmUKICAgICAgICBkaXNjb25uZWN0ZWQgYW5kL29yIGludmFsaWRhdGVkIHdpdGhpbiB0aGUgbGlmZXNwYW4gb2YgYQogICAgICAgIDpjbGFzczpgLl9Db25uZWN0aW9uUmVjb3JkYC4KCiAgICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMS4xCgogICAgICAgIE4pAnJRAAAAcm4AAAApAXIPAAAAchEAAAByEQAAAHISAAAAcm4AAACNAwAAcwYAAAAADQYBCAJ6HF9Db25uZWN0aW9uRmFpcnkucmVjb3JkX2luZm9GYwMAAAAAAAAAAwAAAAQAAABDAAAAc0QAAAB8AGoAZAFrCHIYdAGgAmQCoQEBAGQBUwB8AGoDci58AGoDagR8AXwCZAONAgEAfAJzQGQBfABfAHwAoAWhAAEAZAFTACkEYc4CAABNYXJrIHRoaXMgY29ubmVjdGlvbiBhcyBpbnZhbGlkYXRlZC4KCiAgICAgICAgVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBkaXJlY3RseSwgYW5kIGlzIGFsc28gY2FsbGVkIGFzIGEgcmVzdWx0CiAgICAgICAgb2YgdGhlIDptZXRoOmAuQ29ubmVjdGlvbi5pbnZhbGlkYXRlYCBtZXRob2QuICAgV2hlbiBpbnZva2VkLAogICAgICAgIHRoZSBEQkFQSSBjb25uZWN0aW9uIGlzIGltbWVkaWF0ZWx5IGNsb3NlZCBhbmQgZGlzY2FyZGVkIGZyb20KICAgICAgICBmdXJ0aGVyIHVzZSBieSB0aGUgcG9vbC4gIFRoZSBpbnZhbGlkYXRpb24gbWVjaGFuaXNtIHByb2NlZWRzCiAgICAgICAgdmlhIHRoZSA6bWV0aDpgLl9Db25uZWN0aW9uUmVjb3JkLmludmFsaWRhdGVgIGludGVybmFsIG1ldGhvZC4KCiAgICAgICAgOnBhcmFtIGU6IGFuIGV4Y2VwdGlvbiBvYmplY3QgaW5kaWNhdGluZyBh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
Base64 mode: content will be decoded on save.
Save
Close
Exit & Reset
Directory Contents
Dirs: 0 × Files: 4
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
base.cpython-37.pyc
28.63 KB
lrw-r--r--
2023-11-14 14:32:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
dbapi_proxy.cpython-37.pyc
4.67 KB
lrw-r--r--
2023-11-14 14:32:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
impl.cpython-37.pyc
14.38 KB
lrw-r--r--
2023-11-14 14:32:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.cpython-37.pyc
1.19 KB
lrw-r--r--
2023-11-14 14:32:36
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).