REDROOM
PHP 8.0.30
Path:
Logout
Edit File
Size: 30.24 KB
Close
/opt/alt/python37/lib64/python3.7/site-packages/numpy/polynomial/__pycache__/_polybase.cpython-37.pyc
Text
Base64
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b21haW4gdG8gdXNlLiBUaGUgaW50ZXJ2YWwgYGBbZG9tYWluWzBdLCBkb21haW5bMV1dYGAgaXMgbWFwcGVkCiAgICAgICAgdG8gdGhlIGludGVydmFsIGBgW3dpbmRvd1swXSwgd2luZG93WzFdXWBgIGJ5IHNoaWZ0aW5nIGFuZCBzY2FsaW5nLgogICAgICAgIFRoZSBkZWZhdWx0IHZhbHVlIGlzIHRoZSBkZXJpdmVkIGNsYXNzIGRvbWFpbi4KICAgIHdpbmRvdyA6ICgyLCkgYXJyYXlfbGlrZSwgb3B0aW9uYWwKICAgICAgICBXaW5kb3csIHNlZSBkb21haW4gZm9yIGl0cyB1c2UuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIHRoZQogICAgICAgIGRlcml2ZWQgY2xhc3Mgd2luZG93LgoKICAgIEF0dHJpYnV0ZXMKICAgIC0tLS0tLS0tLS0KICAgIGNvZWYgOiAoTiwpIG5kYXJyYXkKICAgICAgICBTZXJpZXMgY29lZmZpY2llbnRzIGluIG9yZGVyIG9mIGluY3JlYXNpbmcgZGVncmVlLgogICAgZG9tYWluIDogKDIsKSBuZGFycmF5CiAgICAgICAgRG9tYWluIHRoYXQgaXMgbWFwcGVkIHRvIHdpbmRvdy4KICAgIHdpbmRvdyA6ICgyLCkgbmRhcnJheQogICAgICAgIFdpbmRvdyB0aGF0IGRvbWFpbiBpcyBtYXBwZWQgdG8uCgogICAgQ2xhc3MgQXR0cmlidXRlcwogICAgLS0tLS0tLS0tLS0tLS0tLQogICAgbWF4cG93ZXIgOiBpbnQKICAgICAgICBNYXhpbXVtIHBvd2VyIGFsbG93ZWQsIGkuZS4sIHRoZSBsYXJnZXN0IG51bWJlciBgYG5gYCBzdWNoIHRoYXQKICAgICAgICBgYHAoeCkqKm5gYCBpcyBhbGxvd2VkLiBUaGlzIGlzIHRvIGxpbWl0IHJ1bmF3YXkgcG9seW5vbWlhbCBzaXplLgogICAgZG9tYWluIDogKDIsKSBuZGFycmF5CiAgICAgICAgRGVmYXVsdCBkb21haW4gb2YgdGhlIGNsYXNzLgogICAgd2luZG93IDogKDIsKSBuZGFycmF5CiAgICAgICAgRGVmYXVsdCB3aW5kb3cgb2Yg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ZXJ0ZWQgc2VyaWVzLiBJZiB0aGUgdmFsdWUgaXMgTm9uZSwKICAgICAgICAgICAgdGhlIGRlZmF1bHQgZG9tYWluIG9mIGBraW5kYCBpcyB1c2VkLgogICAgICAgIGtpbmQgOiBjbGFzcywgb3B0aW9uYWwKICAgICAgICAgICAgVGhlIHBvbHlub21pYWwgc2VyaWVzIHR5cGUgY2xhc3MgdG8gd2hpY2ggdGhlIGN1cnJlbnQgaW5zdGFuY2UKICAgICAgICAgICAgc2hvdWxkIGJlIGNvbnZlcnRlZC4gSWYga2luZCBpcyBOb25lLCB0aGVuIHRoZSBjbGFzcyBvZiB0aGUKICAgICAgICAgICAgY3VycmVudCBpbnN0YW5jZSBpcyB1c2VkLgogICAgICAgIHdpbmRvdyA6IGFycmF5X2xpa2UsIG9wdGlvbmFsCiAgICAgICAgICAgIFRoZSB3aW5kb3cgb2YgdGhlIGNvbnZlcnRlZCBzZXJpZXMuIElmIHRoZSB2YWx1ZSBpcyBOb25lLAogICAgICAgICAgICB0aGUgZGVmYXVsdCB3aW5kb3cgb2YgYGtpbmRgIGlzIHVzZWQuCgogICAgICAgIFJldHVybnMKICAgICAgICAtLS0tLS0tCiAgICAgICAgbmV3X3NlcmllcyA6IHNlcmllcwogICAgICAgICAgICBUaGUgcmV0dXJuZWQgY2xhc3MgY2FuIGJlIG9mIGRpZmZlcmVudCB0eXBlIHRoYW4gdGhlIGN1cnJlbnQKICAgICAgICAgICAgaW5zdGFuY2UgYW5kL29yIGhhdmUgYSBkaWZmZXJlbnQgZG9tYWluIGFuZC9vciBkaWZmZXJlbnQKICAgICAgICAgICAgd2luZG93LgoKICAgICAgICBOb3RlcwogICAgICAgIC0tLS0tCiAgICAgICAgQ29udmVyc2lvbiBiZXR3ZWVuIGRvbWFpbnMgYW5kIGNsYXNzIHR5cGVzIGNhbiByZXN1bHQgaW4KICAgICAgICBudW1lcmljYWxseSBpbGwgZGVmaW5lZCBzZXJpZXMuCgogICAgICAgIEV4YW1wbGVzCiAgICAgICAgLS0tLS0tLS0KCiAgICAgICAgTikBchEAAAApBHIoAAAAchAAAAByEQAAANoIaWRlbnRpdHkpBHIOAAAAchAAAADaBGtpbmRyEQAAAHINAAAAcg0AAAByDwAAANoHY29udmVydCkCAABzDgAAAAAgCAEGAQgBBgEIAQYBehNBQkNQb2x5QmFzZS5jb252ZXJ0YwEAAAAAAAAAAQAAAAQAAABDAAAAcxAAAAB0AKABfABqAnwAagOhAlMAKQFhwwMAAFJldHVybiB0aGUgbWFwcGluZyBwYXJhbWV0ZXJzLgoKICAgICAgICBUaGUgcmV0dXJuZWQgdmFsdWVzIGRlZmluZSBhIGxpbmVhciBtYXAgYGBvZmYgKyBzY2wqeGBgIHRoYXQgaXMKICAgICAgICBhcHBsaWVkIHRvIHRoZSBpbnB1dCBhcmd1bWVudHMgYmVmb3JlIHRoZSBzZXJpZXMgaXMgZXZhbHVhdGVkLiBUaGUKICAgICAgICBtYXAgZGVwZW5kcyBvbiB0aGUgYGBkb21haW5gYCBhbmQgYGB3aW5kb3dgYDsgaWYgdGhlIGN1cnJlbnQKICAgICAgICBgYGRvbWFpbmBgIGlzIGVxdWFsIHRvIHRoZSBgYHdpbmRvd2BgIHRoZSByZXN1bHRpbmcgbWFwIGlzIHRoZQogICAgICAgIGlkZW50aXR5LiAgSWYgdGhlIGNvZWZmaWNpZW50cyBvZiB0aGUgc2VyaWVzIGluc3RhbmNlIGFyZSB0byBiZQogICAgICAgIHVzZWQgYnkgdGhlbXNlbHZlcyBvdXRzaWRlIHRoaXMgY2xhc3MsIHRoZW4gdGhlIGxpbmVhciBmdW5jdGlvbgogICAgICAgIG11c3QgYmUgc3Vic3RpdHV0ZWQgZm9yIHRoZSBgYHhgYCBpbiB0aGUgc3RhbmRhcmQgcmVwcmVzZW50YXRpb24gb2YKICAgICAgICB0aGUgYmFzZSBwb2x5bm9taWFscy4KCiAgICAgICAgUmV0dXJucwogICAgICAgIC0tLS0tLS0KICAgICAgICBvZmYsIHNjbCA6IGZsb2F0IG9yIGNvbXBsZXgKICAgICAgICAgICAgVGhlIG1hcHBpbmcgZnVuY3Rpb24gaXMgZGVmaW5lZCBieSBgYG9mZiArIHNjbCp4YGAuCgogICAgICAgIE5vdGVzCiAgICAgICAgLS0tLS0KICAgICAgICBJZiB0aGUgY3VycmVudCBkb21haW4gaXMgdGhlIGludGVydmFsIGBgW2wxLCByMV1gYCBhbmQgdGhlIHdpbmRvdwogICAgICAgIGlzIGBgW2wyLCByMl1gYCwgdGhlbiB0aGUgbGluZWFyIG1hcHBpbmcgZnVuY3Rpb24gYGBMYGAgaXMKICAgICAgICBkZWZpbmVkIGJ5IHRoZSBlcXVhdGlvbnM6OgoKICAgICAgICAgICAgTChsMSkgPSBsMgogICAgICAgICAgICBMKHIxKSA9IHIyCgogICAgICAgICkEci4AAAByQQAAAHIQAAAAchEAAAApAXIOAAAAcg0AAAByDQAAAHIPAAAAckEAAABRAgAAcwIAAAAAG3oUQUJDUG9seUJhc2UubWFwcGFybXNyCQAAAGMEAAAAAAAAAAcAAAAIAAAAQwAAAHNQAAAAfACgAKEAXAJ9BH0FfANkAWsIchpkAn0Dbgx8BHwFfAMUABcAfQN8AKABfABqAnwBfAJ8A2QDfAUbAKEFfQZ8AKADfAZ8AGoEfABqBaEDUwApBGERAwAASW50ZWdyYXRlLgoKICAgICAgICBSZXR1cm4gYSBzZXJpZXMgaW5zdGFuY2UgdGhhdCBpcyB0aGUgZGVmaW5pdGUgaW50ZWdyYWwgb2YgdGhlCiAgICAgICAgY3VycmVudCBzZXJpZXMuCgogICAgICAgIFBhcmFtZXRlcnMKICAgICAgICAtLS0tLS0tLS0tCiAgICAgICAgbSA6IG5vbi1uZWdhdGl2ZSBpbnQKICAgICAgICAgICAgVGhlIG51bWJlciBvZiBpbnRlZ3JhdGlvbnMgdG8gcGVyZm9ybS4KICAgICAgICBrIDogYXJyYXlfbGlrZQogICAgICAgICAgICBJbnRlZ3JhdGlvbiBjb25zdGFudHMuIFRoZSBmaXJzdCBjb25zdGFudCBpcyBhcHBsaWVkIHRvIHRoZQogICAgICAgICAgICBmaXJzdCBpbnRlZ3JhdGlvbiwgdGhlIHNlY29uZCB0byB0aGUgc2Vjb25kLCBhbmQgc28gb24uIFRoZQogICAgICAgICAgICBsaXN0IG9mIHZhbHVlcyBtdXN0IGxlc3MgdGhhbiBvciBlcXVhbCB0byBgbWAgaW4gbGVuZ3RoIGFuZCBhbnkKICAgICAgICAgICAgbWlzc2luZyB2YWx1ZXMgYXJlIHNldCB0byB6ZXJvLgogICAgICAgIGxibmQgOiBTY2FsYXIKICAgICAgICAgICAgVGhlIGxvd2VyIGJvdW5kIG9mIHRoZSBkZWZpbml0ZSBpbnRlZ3JhbC4KCiAgICAgICAgUmV0dXJucwogICAgICAgIC0tLS0tLS0KICAgICAgICBuZXdfc2VyaWVzIDogc2VyaWVzCiAgICAgICAgICAgIEEgbmV3IHNlcmllcyByZXByZXNlbnRpbmcgdGhlIGludGVncmFsLiBUaGUgZG9tYWluIGlzIHRoZSBzYW1lCiAgICAgICAgICAgIGFzIHRoZSBkb21haW4gb2YgdGhlIGludGVncmF0ZWQgc2VyaWVzLgoKICAgICAgICBOcgEAAABnAAAAAAAA8D8pBnJBAAAAchkAAAByIAAAAHIoAAAAchAAAAByEQAAACkHcg4AAADaAW3aAWtaBGxibmRyQwAAAHJEAAAAciAAAAByDQAAAHINAAAAcg8AAADaBWludGVnbgIAAHMMAAAAABkMAQgBBgIMARgBehFBQkNQb2x5QmFzZS5pbnRlZ2MCAAAAAAAAAAUAAAAFAAAAQwAAAHMuAAAAfACgAKEAXAJ9An0DfACgAXwAagJ8AXwDoQN9BHwAoAN8BHwAagR8AGoFoQNTACkBYacBAABEaWZmZXJlbnRpYXRlLgoKICAgICAgICBSZXR1cm4gYSBzZXJpZXMgaW5zdGFuY2Ugb2YgdGhhdCBpcyB0aGUgZGVyaXZhdGl2ZSBvZiB0aGUgY3VycmVudAogICAgICAgIHNlcmllcy4KCiAgICAgICAgUGFyYW1ldGVycwogICAgICAgIC0tLS0tLS0tLS0KICAgICAgICBtIDogbm9uLW5lZ2F0aXZlIGludAogICAgICAgICAgICBGaW5kIHRoZSBkZXJpdmF0aXZlIG9mIG9yZGVyIGBtYC4KCiAgICAgICAgUmV0dXJucwogICAgICAgIC0tLS0tLS0KICAgICAgICBuZXdfc2VyaWVzIDogc2VyaWVzCiAgICAgICAgICAgIEEgbmV3IHNlcmllcyByZXByZXNlbnRpbmcgdGhlIGRlcml2YXRpdmUuIFRoZSBkb21haW4gaXMgdGhlIHNhbWUKICAgICAgICAgICAgYXMgdGhlIGRvbWFpbiBvZiB0aGUgZGlmZmVyZW50aWF0ZWQgc2VyaWVzLgoKICAgICAgICApBnJBAAAAchoAAAByIAAAAHIoAAAAchAAAAByEQAAACkFcg4AAABycgAAAHJDAAAAckQAAAByIAAAAHINAAAAcg0AAAByDwAAANoFZGVyaXaPAgAAcwYAAAAAEgwBEAF6EUFCQ1BvbHlCYXNlLmRlcml2YwEAAAAAAAAAAgAAAAUAAABDAAAAcx4AAAB8AKAAfABqAaEBfQF0AqADfAF8AGoEfABqBaEDUwApAWEsAQAAUmV0dXJuIHRoZSByb290cyBvZiB0aGUgc2VyaWVzIHBvbHlub21pYWwuCgogICAgICAgIENvbXB1dGUgdGhlIHJvb3RzIGZvciB0aGUgc2VyaWVzLiBOb3RlIHRoYXQgdGhlIGFjY3VyYWN5IG9mIHRoZQogICAgICAgIHJvb3RzIGRlY3JlYXNlIHRoZSBmdXJ0aGVyIG91dHNpZGUgdGhlIGRvbWFpbiB0aGV5IGxpZS4KCiAgICAgICAgUmV0dXJucwogICAgICAgIC0tLS0tLS0KICAgICAgICByb290cyA6IG5kYXJyYXkKICAgICAgICAgICAgQXJyYXkgY29udGFpbmluZyB0aGUgcm9vdHMgb2YgdGhlIHNlcmllcy4KCiAgICAgICAgKQZyHQAAAHIgAAAAci4AAADaCW1hcGRvbWFpbnIRAAAAchAAAAApAnIOAAAA2gVyb290c3INAAAAcg0AAAByDwAAAHJ3AAAApQIAAHMEAAAAAAwMAXoRQUJDUG9seUJhc2Uucm9vdHNjAwAAAAAAAAAFAAAABQAAAEMAAABzNAAAAHwCZAFrCHIOfABqAH0CdAGgAnwCZAIZAHwCZAMZAHwBoQN9A3wAfAODAX0EfAN8BGYCUwApBGG+AwAAUmV0dXJuIHgsIHkgdmFsdWVzIGF0IGVxdWFsbHkgc3BhY2VkIHBvaW50cyBpbiBkb21haW4uCgogICAgICAgIFJldHVybnMgdGhlIHgsIHkgdmFsdWVzIGF0IGBuYCBsaW5lYXJseSBzcGFjZWQgcG9pbnRzIGFjcm9zcyB0aGUKICAgICAgICBkb21haW4uICBIZXJlIHkgaXMgdGhlIHZhbHVlIG9mIHRoZSBwb2x5bm9taWFsIGF0IHRoZSBwb2ludHMgeC4gQnkKICAgICAgICBkZWZhdWx0IHRoZSBkb21haW4gaXMgdGhlIHNhbWUgYXMgdGhhdCBvZiB0aGUgc2VyaWVzIGluc3RhbmNlLgogICAgICAgIFRoaXMgbWV0aG9kIGlzIGludGVuZGVkIG1vc3RseSBhcyBhIHBsb3R0aW5nIGFpZC4KCiAgICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMS41LjAKCiAgICAgICAgUGFyYW1ldGVycwogICAgICAgIC0tLS0tLS0tLS0KICAgICAgICBuIDogaW50LCBvcHRpb25hbAogICAgICAgICAgICBOdW1iZXIgb2YgcG9pbnQgcGFpcnMgdG8gcmV0dXJuLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyAxMDAuCiAgICAgICAgZG9tYWluIDoge05vbmUsIGFycmF5X2xpa2V9LCBvcHRpb25hbAogICAgICAgICAgICBJZiBub3QgTm9uZSwgdGhlIHNwZWNpZmllZCBkb21haW4gaXMgdXNlZCBpbnN0ZWFkIG9mIHRoYXQgb2YKICAgICAgICAgICAgdGhlIGNhbGxpbmcgaW5zdGFuY2UuIEl0IHNob3VsZCBiZSBvZiB0aGUgZm9ybSBgYFtiZWcsZW5kXWBgLgogICAgICAgICAgICBUaGUgZGVmYXVsdCBpcyBOb25lIHdoaWNoIGNhc2UgdGhlIGNsYXNzIGRvbWFpbiBpcyB1c2VkLgoKICAgICAgICBSZXR1cm5zCiAgICAgICAgLS0tLS0tLQogICAgICAgIHgsIHkgOiBuZGFycmF5CiAgICAgICAgICAgIHggaXMgZXF1YWwgdG8gbGluc3BhY2Uoc2VsZi5kb21haW5bMF0sIHNlbGYuZG9tYWluWzFdLCBuKSBhbmQKICAgICAgICAgICAgeSBpcyB0aGUgc2VyaWVzIGV2YWx1YXRlZCBhdCBlbGVtZW50IG9mIHguCgogICAgICAgIE5yAQAAAHIJAAAAKQNyEAAAAHIhAAAA2ghsaW5zcGFjZSkFcg4AAADaAW5yEAAAANoBeNoBeXINAAAAcg0AAAByDwAAAHJ4AAAAtAIAAHMKAAAAABoIAQYBFgEIAXoUQUJDUG9seUJhc2UubGluc3BhY2VGYwkAAAAAAAAADQAAAAgAAABDAAAAc5gAAAB8BGQBawhyFHQAoAF8AaEBfQRuHnQCfASDAXQDawhyMnQEfASDAWQCawJyMnwAagV9BHwIZAFrCHJAfABqBn0IdACgB3wBfAR8CKEDfQl8AGoIfAl8AnwDfAd8BXwGZAONBn0KfAZygnwKXAJ9C30MfAB8C3wEfAhkBI0DfAxmAlMAfAp9C3wAfAt8BHwIZASNA1MAZAFTACkFYXoMAABMZWFzdCBzcXVhcmVzIGZpdCB0byBkYXRhLgoKICAgICAgICBSZXR1cm4gYSBzZXJpZXMgaW5zdGFuY2UgdGhhdCBpcyB0aGUgbGVhc3Qgc3F1YXJlcyBmaXQgdG8gdGhlIGRhdGEKICAgICAgICBgeWAgc2FtcGxlZCBhdCBgeGAuIFRoZSBkb21haW4gb2YgdGhlIHJldHVybmVkIGluc3RhbmNlIGNhbiBiZQogICAgICAgIHNwZWNpZmllZCBhbmQgdGhpcyB3aWxsIG9mdGVuIHJlc3VsdCBpbiBhIHN1cGVyaW9yIGZpdCB3aXRoIGxlc3MKICAgICAgICBjaGFuY2Ugb2YgaWxsIGNvbmRpdGlvbmluZy4KCiAgICAgICAgUGFyYW1ldGVycwogICAgICAgIC0tLS0tLS0tLS0KICAgICAgICB4IDogYXJyYXlfbGlrZSwgc2hhcGUgKE0sKQogICAgICAgICAgICB4LWNvb3JkaW5hdGVzIG9mIHRoZSBNIHNhbXBsZSBwb2ludHMgYGAoeFtpXSwgeVtpXSlgYC4KICAgICAgICB5IDogYXJyYXlfbGlrZSwgc2hhcGUgKE0sKSBvciAoTSwgSykKICAgICAgICAgICAgeS1jb29yZGluYXRlcyBvZiB0aGUgc2FtcGxlIHBvaW50cy4gU2V2ZXJhbCBkYXRhIHNldHMgb2Ygc2FtcGxlCiAgICAgICAgICAgIHBvaW50cyBzaGFyaW5nIHRoZSBzYW1lIHgtY29vcmRpbmF0ZXMgY2FuIGJlIGZpdHRlZCBhdCBvbmNlIGJ5CiAgICAgICAgICAgIHBhc3NpbmcgaW4gYSAyRC1hcnJheSB0aGF0IGNvbnRhaW5zIG9uZSBkYXRhc2V0IHBlciBjb2x1bW4uCiAgICAgICAgZGVnIDogaW50IG9yIDEtRCBhcnJheV9saWtlCiAgICAgICAgICAgIERlZ3JlZShzKSBvZiB0aGUgZml0dGluZyBwb2x5bm9taWFscy4gSWYgYGRlZ2AgaXMgYSBzaW5nbGUgaW50ZWdlcgogICAgICAgICAgICBhbGwgdGVybXMgdXAgdG8gYW5kIGluY2x1ZGluZyB0aGUgYGRlZ2AndGggdGVybSBhcmUgaW5jbHVkZWQgaW4gdGhlCiAgICAgICAgICAgIGZpdC4gRm9yIE51bVB5IHZlcnNpb25zID49IDEuMTEuMCBhIGxpc3Qgb2YgaW50ZWdlcnMgc3BlY2lmeWluZyB0aGUKICAgICAgICAgICAgZGVncmVlcyBvZiB0aGUgdGVybXMgdG8gaW5jbHVkZSBtYXkgYmUgdXNlZCBpbnN0ZWFkLgogICAgICAgIGRvbWFpbiA6IHtOb25lLCBbYmVnLCBlbmRdLCBbXX0sIG9wdGlvbmFsCiAgICAgICAgICAgIERvbWFpbiB0byB1c2UgZm9yIHRoZSByZXR1cm5lZCBzZXJpZXMuIElmIGBgTm9uZWBgLAogICAgICAgICAgICB0aGVuIGEgbWluaW1hbCBkb21haW4gdGhhdCBjb3ZlcnMgdGhlIHBvaW50cyBgeGAgaXMgY2hvc2VuLiAgSWYKICAgICAgICAgICAgYGBbXWBgIHRoZSBjbGFzcyBkb21haW4gaXMgdXNlZC4gVGhlIGRlZmF1bHQgdmFsdWUgd2FzIHRoZQogICAgICAgICAgICBjbGFzcyBkb21haW4gaW4gTnVtUHkgMS40IGFuZCBgYE5vbmVgYCBpbiBsYXRlciB2ZXJzaW9ucy4KICAgICAgICAgICAgVGhlIGBgW11gYCBvcHRpb24gd2FzIGFkZGVkIGluIG51bXB5IDEuNS4wLgogICAgICAgIHJjb25kIDogZmxvYXQsIG9wdGlvbmFsCiAgICAgICAgICAgIFJlbGF0aXZlIGNvbmRpdGlvbiBudW1iZXIgb2YgdGhlIGZpdC4gU2luZ3VsYXIgdmFsdWVzIHNtYWxsZXIKICAgICAgICAgICAgdGhhbiB0aGlzIHJlbGF0aXZlIHRvIHRoZSBsYXJnZXN0IHNpbmd1bGFyIHZhbHVlIHdpbGwgYmUKICAgICAgICAgICAgaWdub3JlZC4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgbGVuKHgpKmVwcywgd2hlcmUgZXBzIGlzIHRoZQogICAgICAgICAgICByZWxhdGl2ZSBwcmVjaXNpb24gb2YgdGhlIGZsb2F0IHR5cGUsIGFib3V0IDJlLTE2IGluIG1vc3QKICAgICAgICAgICAgY2FzZXMuCiAgICAgICAgZnVsbCA6IGJvb2wsIG9wdGlvbmFsCiAgICAgICAgICAgIFN3aXRjaCBkZXRlcm1pbmluZyBuYXR1cmUgb2YgcmV0dXJuIHZhbHVlLiBXaGVuIGl0IGlzIEZhbHNlCiAgICAgICAgICAgICh0aGUgZGVmYXVsdCkganVzdCB0aGUgY29lZmZpY2llbnRzIGFyZSByZXR1cm5lZCwgd2hlbiBUcnVlCiAgICAgICAgICAgIGRpYWdub3N0aWMgaW5mb3JtYXRpb24gZnJvbSB0aGUgc2luZ3VsYXIgdmFsdWUgZGVjb21wb3NpdGlvbiBpcwogICAgICAgICAgICBhbHNvIHJldHVybmVkLgogICAgICAgIHcgOiBhcnJheV9saWtlLCBzaGFwZSAoTSwpLCBvcHRpb25hbAogICAgICAgICAgICBXZWlnaHRzLiBJZiBub3QgTm9uZSB0aGUgY29udHJpYnV0aW9uIG9mIGVhY2ggcG9pbnQKICAgICAgICAgICAgYGAoeFtpXSx5W2ldKWBgIHRvIHRoZSBmaXQgaXMgd2VpZ2h0ZWQgYnkgYHdbaV1gLiBJZGVhbGx5IHRoZQogICAgICAgICAgICB3ZWlnaHRzIGFyZSBjaG9zZW4gc28gdGhhdCB0aGUgZXJyb3JzIG9mIHRoZSBwcm9kdWN0cwogICAgICAgICAgICBgYHdbaV0qeVtpXWBgIGFsbCBoYXZlIHRoZSBzYW1lIHZhcmlhbmNlLiAgVGhlIGRlZmF1bHQgdmFsdWUgaXMKICAgICAgICAgICAgTm9uZS4KCiAgICAgICAgICAgIC4uIHZlcnNpb25hZGRlZDo6IDEuNS4wCiAgICAgICAgd2luZG93IDoge1tiZWcsIGVuZF19LCBvcHRpb25hbAogICAgICAgICAgICBXaW5kb3cgdG8gdXNlIGZvciB0aGUgcmV0dXJuZWQgc2VyaWVzLiBUaGUgZGVmYXVsdAogICAgICAgICAgICB2YWx1ZSBpcyB0aGUgZGVmYXVs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ZXJ0IHNlcmllcyB0byBzZXJpZXMgb2YgdGhpcyBjbGFzcy4KCiAgICAgICAgVGhlIGBzZXJpZXNgIGlzIGV4cGVjdGVkIHRvIGJlIGFuIGluc3RhbmNlIG9mIHNvbWUgcG9seW5vbWlhbAogICAgICAgIHNlcmllcyBvZiBvbmUgb2YgdGhlIHR5cGVzIHN1cHBvcnRlZCBieSBieSB0aGUgbnVtcHkucG9seW5vbWlhbAogICAgICAgIG1vZHVsZSwgYnV0IGNvdWxkIGJlIHNvbWUgb3RoZXIgY2xhc3MgdGhhdCBzdXBwb3J0cyB0aGUgY29udmVydAogICAgICAgIG1ldGhvZC4KCiAgICAgICAgLi4gdmVyc2lvbmFkZGVkOjogMS43LjAKCiAgICAgICAgUGFyYW1ldGVycwogICAgICAgIC0tLS0tLS0tLS0KICAgICAgICBzZXJpZXMgOiBzZXJpZXMKICAgICAgICAgICAgVGhlIHNlcmllcyBpbnN0YW5jZSB0byBiZSBjb252ZXJ0ZWQuCiAgICAgICAgZG9tYWluIDoge05vbmUsIGFycmF5X2xpa2V9LCBvcHRpb25hbAogICAgICAgICAgICBJZiBnaXZlbiwgdGhlIGFycmF5IG11c3QgYmUgb2YgdGhlIGZvcm0gYGBbYmVnLCBlbmRdYGAsIHdoZXJlCiAgICAgICAgICAgIGBgYmVnYGAgYW5kIGBgZW5kYGAgYXJlIHRoZSBlbmRwb2ludHMgb2YgdGhlIGRvbWFpbi4gSWYgTm9uZSBpcwogICAgICAgICAgICBnaXZlbiB0aGVuIHRoZSBjbGFzcyBkb21haW4gaXMgdXNlZC4gVGhlIGRlZmF1bHQgaXMgTm9uZS4KICAgICAgICB3aW5kb3cgOiB7Tm9uZSwgYXJyYXlfbGlrZX0sIG9wdGlvbmFsCiAgICAgICAgICAgIElmIGdpdmVuLCB0aGUgcmVzdWx0aW5nIGFycmF5IG11c3QgYmUgaWYgdGhlIGZvcm0KICAgICAgICAgICAgYGBbYmVnLCBlbmRdYGAsIHdoZXJlIGBgYmVnYGAgYW5kIGBgZW5kYGAgYXJlIHRoZSBlbmRwb2ludHMgb2YKICAgICAgICAgICAgdGhlIHdpbmRvdy4gSWYgTm9uZSBpcyBnaXZlbiB0aGVuIHRoZSBjbGFzcyB3aW5kb3cgaXMgdXNlZC4gVGhlCiAgICAgICAgICAgIGRlZmF1bHQgaXMgTm9uZS4KCiAgICAgICAgUmV0dXJucwogICAgICAgIC0tLS0tLS0KICAgICAgICBuZXdfc2VyaWVzIDogc2VyaWVzCiAgICAgICAgICAgIEEgc2VyaWVzIG9mIHRoZSBzYW1lIGtpbmQgYXMgdGhlIGNhbGxpbmcgY2xhc3MgYW5kIGVxdWFsIHRvCiAgICAgICAgICAgIGBzZXJpZXNgIHdoZW4gZXZhbHVhdGVkLgoKICAgICAgICBTZWUgQWxzbwogICAgICAgIC0tLS0tLS0tCiAgICAgICAgY29udmVydCA6IHNpbWlsYXIgaW5zdGFuY2UgbWV0aG9kCgogICAgICAgIE4pA3IQAAAAchEAAABycQAAACkEcoEAAABaBnNlcmllc3IQAAAAchEAAAByDQAAAHINAAAAcg8AAADaBGNhc3SdAwAAcwoAAAAAJAgBBgEIAQYBehBBQkNQb2x5QmFzZS5jYXN0KQJOTikBcgEAAAApA05OTikBcgkAAAApAnIMAAAATikFTk5GTk4pAk5OKQJOTikCTk4pTXI1AAAA2gpfX21vZHVsZV9f2gxfX3F1YWxuYW1lX1/aB19fZG9jX19yBQAAANoNX19tZXRhY2xhc3NfX9oIX19oYXNoX19aD19fYXJyYXlfdWZ1bmNfX3JcAAAAcgcAAAByEAAAAHIRAAAAchIAAAByBgAAAHITAAAAchQAAAByFQAAAHIWAAAAchcAAAByGAAAAHIZAAAAchoAAAByGwAAAHIcAAAAch0AAAByHgAAAHIkAAAAciUAAAByJgAAAHIpAAAAcisAAAByMQAAAHI4AAAAcjoAAAByPgAAAHJAAAAAckUAAAByRwAAAHJIAAAAckkAAABySgAAAHJOAAAAck8AAAByUAAAAHJSAAAAclUAAAByUQAAAHJYAAAAclYAAAByXQAAAHJeAAAAcl8AAAByYAAAAHJiAAAAcmMAAAByYQAAAHJlAAAAcmQAAAByZwAAAHJoAAAAcjwAAAByaQAAAHJsAAAAciwAAAByagAAAHJxAAAAckEAAABydAAAAHJ1AAAAcncAAAByeAAAANoLY2xhc3NtZXRob2RygwAAAHKEAAAAcm8AAAByhQAAAHKGAAAAcg0AAAByDQAAAHINAAAAcg8AAAByCwAAABMAAABzmAAAAAgqBAEEAwQDBAMEAgwEDAQMBAwEDAQMBAwEDAQMBAwEDAQMBAwEDAQMBAgXCBIIEggSCCQKEAgICAgIBwgFCAUIAwgFCAMIAwgKCAoICggECAkIBggGCAwIBQgHCAcIBwgECAUIBggGCA4ICAgHCAsIDQgZChcIHQooCB0QIQoWCA8KIAIBAAEMVgIBECgCAQwgAgEMJgIBKRNyiQAAANoKX19mdXR1cmVfX3ICAAAAcgMAAAByBAAAANoDYWJjcgUAAAByBgAAAHIHAAAA2gdudW1iZXJzcggAAADaBW51bXB5ciEAAADaAHIKAAAAci4AAADaB19fYWxsX1/aBm9iamVjdHILAAAAcg0AAAByDQAAAHINAAAAcg8AAADaCDxtb2R1bGU+CAAAAHMOAAAABAEUAhQBDAIIAQwCBgI=
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
chebyshev.cpython-37.pyc
60.57 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
hermite.cpython-37.pyc
55.33 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
hermite_e.cpython-37.pyc
55.36 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
laguerre.cpython-37.pyc
53.73 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
legendre.cpython-37.pyc
54.61 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
polynomial.cpython-37.pyc
50.42 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
polyutils.cpython-37.pyc
11.91 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
setup.cpython-37.pyc
603 B
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_polybase.cpython-37.pyc
30.24 KB
lrw-r--r--
2023-04-24 19:38:36
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.cpython-37.pyc
1.37 KB
lrw-r--r--
2023-04-24 19:38: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).