REDROOM
PHP 8.2.30
Path:
Logout
Edit File
Size: 83.69 KB
Close
/opt/imunify360/venv/lib/python3.11/site-packages/babel/__pycache__/dates.cpython-311.pyc
Text
Base64
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ZXhpa28gKE1leGlrby1TdGFkdCkgKE9ydHN6ZWl0KScKCiAgICBJZiB0aGUgdGltZXpvbmUgaXMgYXNzb2NpYXRlZCB3aXRoIGEgY291bnRyeSB0aGF0IHVzZXMgb25seSBhIHNpbmdsZQogICAgdGltZXpvbmUsIGp1c3QgdGhlIGxvY2FsaXplZCBjb3VudHJ5IG5hbWUgaXMgcmV0dXJuZWQ6CgogICAgPj4+IHR6ID0gZ2V0X3RpbWV6b25lKCdFdXJvcGUvQmVybGluJykKICAgID4+PiBnZXRfdGltZXpvbmVfbmFtZSh0eiwgbG9jYWxlPSdkZV9ERScpCiAgICB1J01pdHRlbGV1cm9wXHhlNGlzY2hlIFplaXQnCgogICAgLi4gdmVyc2lvbmFkZGVkOjogMC45CgogICAgOnBhcmFtIGR0X29yX3R6aW5mbzogdGhlIGBgZGF0ZXRpbWVgYCBvciBgYHR6aW5mb2BgIG9iamVjdCB0aGF0IGRldGVybWluZXMKICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSB0aW1lem9uZTsgaWYgYE5vbmVgLCB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIGluCiAgICAgICAgICAgICAgICAgICAgICAgICBVVEMgaXMgYXNzdW1lZAogICAgOnBhcmFtIGxvY2FsZTogdGhlIGBMb2NhbGVgIG9iamVjdCwgb3IgYSBsb2NhbGUgc3RyaW5nCiAgICA6cGFyYW0gcmV0dXJuX2NpdHk6IFRydWUgb3IgRmFsc2UsIGlmIFRydWUgdGhlbiByZXR1cm4gZXhlbXBsYXIgY2l0eSAobG9jYXRpb24pCiAgICAgICAgICAgICAgICAgICAgICAgIGZvciB0aGUgdGltZSB6b25lCiAgICA6cmV0dXJuOiB0aGUgbG9jYWxpemVkIHRpbWV6b25lIG5hbWUgdXNpbmcgbG9jYXRpb24gZm9ybWF0CgogICAg2gx6b25lX2FsaWFzZXPaBnJlZ2lvbtoQem9uZV90ZXJyaXRvcmllc9oCWlraD3RlcnJpdG9yeV96b25lc+kBAAAA2ghmYWxsYmFja9oEY2l0edoKbWV0YV96b25lc/oBL9oBX/oBICkC2gEw2gExKQxyCQAAAHJhAAAAcj4AAAByCwAA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IGltcG9ydCB0aW1lCiAgICA+Pj4gZHQgPSB0aW1lKDE1LCAzMCwgdHppbmZvPWdldF90aW1lem9uZSgnQW1lcmljYS9Mb3NfQW5nZWxlcycpKQogICAgPj4+IGdldF90aW1lem9uZV9uYW1lKGR0LCBsb2NhbGU9J2VuX1VTJykKICAgIHUnUGFjaWZpYyBTdGFuZGFyZCBUaW1lJwogICAgPj4+IGdldF90aW1lem9uZV9uYW1lKGR0LCBsb2NhbGU9J2VuX1VTJywgcmV0dXJuX3pvbmU9VHJ1ZSkKICAgICdBbWVyaWNhL0xvc19BbmdlbGVzJwogICAgPj4+IGdldF90aW1lem9uZV9uYW1lKGR0LCB3aWR0aD0nc2hvcnQnLCBsb2NhbGU9J2VuX1VTJykKICAgIHUnUFNUJwoKICAgIElmIHRoaXMgZnVuY3Rpb24gZ2V0cyBwYXNzZWQgb25seSBhIGB0emluZm9gIG9iamVjdCBhbmQgbm8gY29uY3JldGUKICAgIGBkYXRldGltZWAsICB0aGUgcmV0dXJuZWQgZGlzcGxheSBuYW1lIGlzIGluZGVwZW5kZW50IG9mIGRheWxpZ2h0IHNhdmluZ3MKICAgIHRpbWUuIFRoaXMgY2FuIGJlIHVzZWQgZm9yIGV4YW1wbGUgZm9yIHNlbGVjdGluZyB0aW1lem9uZXMsIG9yIHRvIHNldCB0aGUKICAgIHRpbWUgb2YgZXZlbnRzIHRoYXQgcmVjdXIgYWNyb3NzIERTVCBjaGFuZ2VzOgoKICAgID4+PiB0eiA9IGdldF90aW1lem9uZSgnQW1lcmljYS9Mb3NfQW5nZWxlcycpCiAgICA+Pj4gZ2V0X3RpbWV6b25lX25hbWUodHosIGxvY2FsZT0nZW5fVVMnKQogICAgdSdQYWNpZmljIFRpbWUnCiAgICA+Pj4gZ2V0X3RpbWV6b25lX25hbWUodHosICdzaG9ydCcsIGxvY2FsZT0nZW5fVVMnKQogICAgdSdQVCcKCiAgICBJZiBubyBsb2NhbGl6ZWQgZGlzcGxheSBuYW1lIGZvciB0aGUgdGltZXpvbmUgaXMgYXZhaWxhYmxlLCBhbmQgdGhlIHRpbWV6b25lCiAgICBpcyBhc3NvY2lhdGVkIHdpdGggYSBjb3VudHJ5IHRoYXQgdXNlcyBvbmx5IGEgc2luZ2xlIHRpbWV6b25lLCB0aGUgbmFtZSBvZgogICAgdGhhdCBjb3VudHJ5IGlzIHJldHVybmVkLCBmb3JtYXR0ZWQgYWNjb3JkaW5nIHRvIHRoZSBsb2NhbGU6CgogICAgPj4+IHR6ID0gZ2V0X3RpbWV6b25lKCdFdXJvcGUvQmVybGluJykKICAgID4+PiBnZXRfdGltZXpvbmVfbmFtZSh0eiwgbG9jYWxlPSdkZV9ERScpCiAgICB1J01pdHRlbGV1cm9wXHhlNGlzY2hlIFplaXQnCiAgICA+Pj4gZ2V0X3RpbWV6b25lX25hbWUodHosIGxvY2FsZT0ncHRfQlInKQogICAgdSdIb3JceGUxcmlvIGRhIEV1cm9wYSBDZW50cmFsJwoKICAgIE9uIHRoZSBvdGhlciBoYW5kLCBpZiB0aGUgY291bnRyeSB1c2VzIG11bHRpcGxlIHRpbWV6b25lcywgdGhlIGNpdHkgaXMgYWxzbwogICAgaW5jbHVkZWQgaW4gdGhlIHJlcHJlc2VudGF0aW9uOgoKICAgID4+PiB0eiA9IGdldF90aW1lem9uZSgnQW1lcmljYS9TdF9Kb2hucycpCiAgICA+Pj4gZ2V0X3RpbWV6b25lX25hbWUodHosIGxvY2FsZT0nZGVfREUnKQogICAgdSdOZXVmdW5kbGFuZC1aZWl0JwoKICAgIE5vdGUgdGhhdCBzaG9ydCBmb3JtYXQgaXMgY3VycmVudGx5IG5vdCBzdXBwb3J0ZWQgZm9yIGFsbCB0aW1lem9uZXMgYW5kCiAgICBhbGwgbG9jYWxlcy4gIFRoaXMgaXMgcGFydGlhbGx5IGJlY2F1c2Ugbm90IGV2ZXJ5IHRpbWV6b25lIGhhcyBhIHNob3J0CiAgICBjb2RlIGluIGV2ZXJ5IGxvY2FsZS4gIEluIHRoYXQgY2FzZSBpdCBjdXJyZW50bHkgZmFsbHMgYmFjayB0byB0aGUgbG9uZwogICAgZm9ybWF0LgoKICAgIEZvciBtb3JlIGluZm9ybWF0aW9uIHNlZSBgTERNTCBBcHBlbmRpeCBKOiBUaW1lIFpvbmUgRGlzcGxheSBOYW1lcwogICAgPGh0dHBzOi8vd3d3LnVuaWNvZGUub3JnL3JlcG9ydHMvdHIzNS8jVGltZV9ab25lX0ZhbGxiYWNrPmBfCgogICAgLi4gdmVyc2lvbmFkZGVkOjogMC45CgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiAxLjAKICAgICAgIEFkZGVkIGB6b25lX3ZhcmlhbnRgIHN1cHBvcnQuCgogICAgOnBhcmFtIGR0X29yX3R6aW5mbzogdGhlIGBgZGF0ZXRpbWVgYCBvciBgYHR6aW5mb2BgIG9iamVjdCB0aGF0IGRldGVybWluZXMKICAgICAgICAgICAgICAgICAgICAgICAgIHRoZSB0aW1lem9uZTsgaWYgYSBgYHR6aW5mb2BgIG9iamVjdCBpcyB1c2VkLCB0aGUKICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdGluZyBkaXNwbGF5IG5hbWUgd2lsbCBiZSBnZW5lcmljLCBpLmUuCiAgICAgICAgICAgICAgICAgICAgICAgICBpbmRlcGVuZGVudCBvZiBkYXlsaWdodCBzYXZpbmdzIHRpbWU7IGlmIGBOb25lYCwgdGhlCiAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50IGRhdGUgaW4gVVRDIGlzIGFzc3VtZWQKICAgIDpwYXJhbSB3aWR0aDogZWl0aGVyICJsb25nIiBvciAic2hvcnQiCiAgICA6cGFyYW0gdW5jb21tb246IGRlcHJlY2F0ZWQgYW5kIGlnbm9yZWQKICAgIDpwYXJhbSB6b25lX3ZhcmlhbnQ6IGRlZmluZXMgdGhlIHpvbmUgdmFyaWF0aW9uIHRvIHJldHVybi4gIEJ5IGRlZmF1bHQgdGhlCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcmlhdGlvbiBpcyBkZWZpbmVkIGZyb20gdGhlIGRhdGV0aW1lIG9iamVjdAogICAgICAgICAgICAgICAgICAgICAgICAgICBwYXNzZWQgaW4uICBJZiBubyBkYXRldGltZSBvYmplY3QgaXMgcGFzc2VkIGluLCB0aGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgYGAnZ2VuZXJpYydgYCB2YXJpYXRpb24gaXMgYXNzdW1lZC4gIFRoZSBmb2xsb3dpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFs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b3JtYXRfdGltZSh0LCAiaGggJ28nJ2Nsb2NrJyBhLCB6enp6IiwgdHppbmZvPWdldF90aW1lem9uZSgnVVMvRWFzdGVybicpLAogICAgLi4uICAgICAgICAgICAgIGxvY2FsZT0nZW4nKQogICAgdSIwOSBvJ2Nsb2NrIEFNLCBFYXN0ZXJuIERheWxpZ2h0IFRpbWUiCgogICAgQXMgdGhhdCBleGFtcGxlIHNob3dzLCB3aGVuIHRoaXMgZnVuY3Rpb24gZ2V0cyBwYXNzZWQgYQogICAgYGBkYXRldGltZS5kYXRldGltZWBgIHZhbHVlLCB0aGUgYWN0dWFsIHRpbWUgaW4gdGhlIGZvcm1hdHRlZCBzdHJpbmcgaXMKICAgIGFkanVzdGVkIHRvIHRoZSB0aW1lem9uZSBzcGVjaWZpZWQgYnkgdGhlIGB0emluZm9gIHBhcmFtZXRlci4gSWYgdGhlCiAgICBgYGRhdGV0aW1lYGAgaXMgIm5haXZlIiAoaS5lLiBpdCBoYXMgbm8gYXNzb2NpYXRlZCB0aW1lem9uZSBpbmZvcm1hdGlvbiksCiAgICBpdCBpcyBhc3N1bWVkIHRvIGJlIGluIFVUQy4KCiAgICBUaGVzZSB0aW1lem9uZSBjYWxjdWxhdGlvbnMgYXJlICoqbm90KiogcGVyZm9ybWVkIGlmIHRoZSB2YWx1ZSBpcyBvZiB0eXBlCiAgICBgYGRhdGV0aW1lLnRpbWVgYCwgYXMgd2l0aG91dCBkYXRlIGluZm9ybWF0aW9uIHRoZXJlJ3Mgbm8gd2F5IHRvIGRldGVybWluZQogICAgd2hhdCBhIGdpdmVuIHRpbWUgd291bGQgdHJhbnNsYXRlIHRvIGluIGEgZGlmZmVyZW50IHRpbWV6b25lIHdpdGhvdXQKICAgIGluZm9ybWF0aW9uIGFib3V0IHdoZXRoZXIgZGF5bGlnaHQgc2F2aW5ncyB0aW1lIGlzIGluIGVmZmVjdCBvciBub3QuIFRoaXMKICAgIG1lYW5zIHRoYXQgdGltZSB2YWx1ZXMgYXJlIGxlZnQgYXMtaXMsIGFuZCB0aGUgdmFsdWUgb2YgdGhlIGB0emluZm9gCiAgICBwYXJhbWV0ZXIgaXMgb25seSB1c2VkIHRvIGRpc3BsYXkgdGhlIHRpbWV6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b3JtYXRfc2tlbGV0b24oJ3lNTWQnLCB0LCBsb2NhbGU9J2ZpJykgICMgeU1NZCBpcyBub3QgaW4gdGhlIEZpbm5pc2ggbG9jYWxlOyB5TWQgZ2V0cyB1c2VkCiAgICB1JzEuNC4yMDA3JwogICAgPj4+IGZvcm1hdF9za2VsZXRvbigneU1NZCcsIHQsIGZ1enp5PUZhbHNlLCBsb2NhbGU9J2ZpJykgICMgeU1NZCBpcyBub3QgaW4gdGhlIEZpbm5pc2ggbG9jYWxlLCBhbiBlcnJvciBpcyB0aHJvd24KICAgIFRyYWNlYmFjayAobW9zdCByZWNlbnQgY2FsbCBsYXN0KToKICAgICAgICAuLi4KICAgIEtleUVycm9yOiB5TU1kCgogICAgQWZ0ZXIgdGhlIHNrZWxldG9uIGlzIHJlc29sdmVkIHRvIGEgcGF0dGVybiBgZm9ybWF0X2RhdGV0aW1lYCBpcyBjYWxsZWQgc28KICAgIGFsbCB0aW1lem9uZSBwcm9jZXNzaW5nIGV0YyBpcyB0aGUgc2FtZSBhcyBmb3IgdGhhdC4KCiAgICA6cGFyYW0gc2tlbGV0b246IEEgZGF0ZSB0aW1lIHNrZWxldG9uIGFzIGRlZmluZWQgaW4gdGhlIGNsZHIgZGF0YS4KICAgIDpwYXJhbSBkYXRldGltZTogdGhlIGBgdGltZWBgIG9yIGBgZGF0ZXRpbWVgYCBvYmplY3Q7IGlmIGBOb25lYCwgdGhlIGN1cnJlbnQKICAgICAgICAgICAgICAgICB0aW1lIGluIFVUQyBpcyB1c2VkCiAgICA6cGFyYW0gdHppbmZvOiB0aGUgdGltZS16b25lIHRvIGFwcGx5IHRvIHRoZSB0aW1lIGZvciBkaXNwbGF5CiAgICA6cGFyYW0gZnV6enk6IElmIHRoZSBza2VsZXRvbiBpcyBub3QgZm91bmQsIGFsbG93IGNob29zaW5nIGEgc2tlbGV0b24gdGhhdCdzCiAgICAgICAgICAgICAgICAgIGNsb3NlIGVub3VnaCB0byBpdC4KICAgIDpwYXJhbSBsb2NhbGU6IGEgYExvY2FsZWAgb2JqZWN0IG9yIGEgbG9jYWxlIGlkZW50aWZpZXIKICAgICkFcgkAAAByYQAAANoSZGF0ZXRpbWVfc2tlbGV0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ICBUaGUgdGhyZXNob2xkIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBkZXRlcm1pbmUgYXQgd2hpY2ggdmFsdWUgdGhlCiAgICBwcmVzZW50YXRpb24gc3dpdGNoZXMgdG8gdGhlIG5leHQgaGlnaGVyIHVuaXQuIEEgaGlnaGVyIHRocmVzaG9sZCBmYWN0b3IKICAgIG1lYW5zIHRoZSBwcmVzZW50YXRpb24gd2lsbCBzd2l0Y2ggbGF0ZXIuIEZvciBleGFtcGxlOgoKICAgID4+PiBmb3JtYXRfdGltZWRlbHRhKHRpbWVkZWx0YShob3Vycz0yMyksIHRocmVzaG9sZD0wLjksIGxvY2FsZT0nZW5fVVMnKQogICAgdScxIGRheScKICAgID4+PiBmb3JtYXRfdGltZWRlbHRhKHRpbWVkZWx0YShob3Vycz0yMyksIHRocmVzaG9sZD0xLjEsIGxvY2FsZT0nZW5fVVMnKQogICAgdScyMyBob3VycycKCiAgICBJbiBhZGRpdGlvbiBkaXJlY3Rpb25hbCBpbmZvcm1hdGlvbiBjYW4gYmUgcHJvdmlkZWQgdGhhdCBpbmZvcm1zCiAgICB0aGUgdXNlciBpZiB0aGUgZGF0ZSBpcyBpbiB0aGUgcGFzdCBvciBpbiB0aGUgZnV0dXJlOgoKICAgID4+PiBmb3JtYXRfdGltZWRlbHRhKHRpbWVkZWx0YShob3Vycz0xKSwgYWRkX2RpcmVjdGlvbj1UcnVlLCBsb2NhbGU9J2VuJykKICAgIHUnaW4gMSBob3VyJwogICAgPj4+IGZvcm1hdF90aW1lZGVsdGEodGltZWRlbHRhKGhvdXJzPS0xKSwgYWRkX2RpcmVjdGlvbj1UcnVlLCBsb2NhbGU9J2VuJykKICAgIHUnMSBob3VyIGFnbycKCiAgICBUaGUgZm9ybWF0IHBhcmFtZXRlciBjb250cm9scyBob3cgY29tcGFjdCBvciB3aWRlIHRoZSBwcmVzZW50YXRpb24gaXM6CgogICAgPj4+IGZvcm1hdF90aW1lZGVsdGEodGltZWRlbHRhKGhvdXJzPTMpLCBmb3JtYXQ9J3Nob3J0JywgbG9jYWxlPSdlbicpCiAgICB1JzMgaHInCiAgICA+Pj4gZm9ybWF0X3RpbWVkZWx0YSh0aW1lZGVsdGEoaG91cnM9MyksIGZvcm1hdD0nbmFycm93JywgbG9jYWxlPSdlbicpCiAgICB1JzNoJwoKICAgIDpwYXJhbSBkZWx0YTogYSBgYHRpbWVkZWx0YWBgIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIHRpbWUgZGlmZmVyZW5jZSB0bwogICAgICAgICAgICAgICAgICBmb3JtYXQsIG9yIHRoZSBkZWx0YSBpbiBzZWNvbmRzIGFzIGFuIGBpbnRgIHZhbHVlCiAgICA6cGFyYW0gZ3JhbnVsYXJpdHk6IGRldGVybWluZXMgdGhlIHNtYWxsZXN0IHVuaXQgdGhhdCBzaG91bGQgYmUgZGlzcGxheWVkLAogICAgICAgICAgICAgICAgICAgICAgICB0aGUgdmFsdWUgY2FuIGJlIG9uZSBvZiAieWVhciIsICJtb250aCIsICJ3ZWVrIiwgImRheSIsCiAgICAgICAgICAgICAgICAgICAgICAgICJob3VyIiwgIm1pbnV0ZSIgb3IgInNlY29uZCIKICAgIDpwYXJhbSB0aHJlc2hvbGQ6IGZhY3RvciB0aGF0IGRldGVybWluZXMgYXQgd2hpY2ggcG9pbnQgdGhlIHByZXNlbnRhdGlvbgogICAgICAgICAgICAgICAgICAgICAgc3dpdGNoZXMgdG8gdGhlIG5leHQgaGlnaGVyIHVuaXQKICAgIDpwYXJhbSBhZGRfZGlyZWN0aW9uOiBpZiB0aGlzIGZsYWcgaXMgc2V0IHRvIGBUcnVlYCB0aGUgcmV0dXJuIHZhbHVlIHdpbGwKICAgICAgICAgICAgICAgICAgICAgICAgICBpbmNsdWRlIGRpcmVjdGlvbmFsIGluZm9ybWF0aW9uLiAgRm9yIGluc3RhbmNlIGEKICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGl2ZSB0aW1lZGVsdGEgd2lsbCBpbmNsdWRlIHRoZSBpbmZvcm1hdGlvbiBhYm91dAogICAgICAgICAgICAgICAgICAgICAgICAgIGl0IGJlaW5nIGluIHRoZSBmdXR1cmUsIGEgbmVnYXRpdmUgd2lsbCBiZSBpbmZvcm1hdGlvbgogICAgICAgICAgICAgICAgICAgICAgICAgIGFib3V0IHRoZSB2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ZSgxNiwgMTgpLCB0aW1lKDE2LCAyNCksICJIbSIsIGxvY2FsZT0iaXQiKQogICAgJzE2OjE44oCTMTY6MjQnCgogICAgSWYgdGhlIHN0YXJ0IGluc3RhbnQgZXF1YWxzIHRoZSBlbmQgaW5zdGFudCwgdGhlIGludGVydmFsIGlzIGZvcm1hdHRlZCBsaWtlIHRoZSBpbnN0YW50LgoKICAgID4+PiBmb3JtYXRfaW50ZXJ2YWwodGltZSgxNiwgMTgpLCB0aW1lKDE2LCAxOCksICJIbSIsIGxvY2FsZT0iaXQiKQogICAgJzE2OjE4JwoKICAgIFVua25vd24gc2tlbGV0b25zIGZhbGwgYmFjayB0byAiZGVmYXVsdCIgZm9ybWF0dGluZy4KCiAgICA+Pj4gZm9ybWF0X2ludGVydmFsKGRhdGUoMjAxNSwgMSwgMSksIGRhdGUoMjAxNywgMSwgMSksICJ3enEiLCBsb2NhbGU9ImphIikKICAgICcyMDE1LzAxLzAx772eMjAxNy8wMS8wMScKCiAgICA+Pj4gZm9ybWF0X2ludGVydmFsKHRpbWUoMTYsIDE4KSwgdGltZSgxNiwgMjQpLCAieHh4IiwgbG9jYWxlPSJqYSIpCiAgICAnMTY6MTg6MDDvvZ4xNjoyNDowMCcKCiAgICA+Pj4gZm9ybWF0X2ludGVydmFsKGRhdGUoMjAxNiwgMSwgMTUpLCBkYXRlKDIwMTYsIDEsIDE3KSwgInh4eCIsIGxvY2FsZT0iZGUiKQogICAgJzE1LjAxLjIwMTbigInigJPigIkxNy4wMS4yMDE2JwoKICAgIDpwYXJhbSBzdGFydDogRmlyc3QgaW5zdGFudCAoZGF0ZXRpbWUvZGF0ZS90aW1lKQogICAgOnBhcmFtIGVuZDogU2Vjb25kIGluc3RhbnQgKGRhdGV0aW1lL2RhdGUvdGltZSkKICAgIDpwYXJhbSBza2VsZXRvbjogVGhlICJza2VsZXRvbiBmb3JtYXQiIHRvIHVzZSBmb3IgZm9ybWF0dGluZy4KICAgIDpwYXJhbSB0emluZm86IHR6aW5mbyB0byB1c2UgKGlmIG5vbmUgaXMgYWxyZWFkeSBhdHRhY2hlZCkKICAgIDpwYXJhbSBmdXp6eTogSWYgdGhlIHNrZWxldG9uIGlz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
Base64 mode: content will be decoded on save.
Save
Close
Exit & Reset
Directory Contents
Dirs: 0 × Files: 11
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
core.cpython-311.pyc
50.85 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
dates.cpython-311.pyc
83.69 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
languages.cpython-311.pyc
4.23 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
lists.cpython-311.pyc
3.84 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
localedata.cpython-311.pyc
13.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
numbers.cpython-311.pyc
53.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
plural.cpython-311.pyc
34.77 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
support.cpython-311.pyc
35.94 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
units.cpython-311.pyc
11.77 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
util.cpython-311.pyc
11.55 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
1.07 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).