├── .DS_Store
├── .gitignore
├── README.md
├── bot-report.md
├── discord-export
├── Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html
├── Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files
│ ├── 01bc15fca097d7ebd27815146d19cad0-EDCFF.png
│ ├── 01fe66bc1531b9b6fdd9f09f90bcbd2e-502DF.png
│ ├── 025a312229f81f0132287a07237573a4-15005.png
│ ├── 0476f86bd02b37a62ebfd7c92177337c-83072.png
│ ├── 049983139ea262a4e388c5132423e557-7C91D.png
│ ├── 05d0501f278247d31dc24aab71d597d5-F7D75.png
│ ├── 06007823cf9ba08c135053b30354a9c1-C25F2.png
│ ├── 08a051c6ef73c89fd5967637cbbb4acd-9A9A6.png
│ ├── 0ae311857ca5610dd4e8476c7100f7bd-A60D6.png
│ ├── 0b57a4cd1eac7593076c69120770f939-ED546.png
│ ├── 0c7b6a3f6c588019cf1ee9a24a9e9c45-808EC.png
│ ├── 0c8e9b652a07346bede9f2908c1284cf-338CD.png
│ ├── 0cb8eb26d3020c1f114848c9b939485a-DE601.png
│ ├── 1-B2132.png
│ ├── 1027315829559267418-BAAAC.gif
│ ├── 1059580261278437427-A8825.png
│ ├── 1059580451800494151-15055.png
│ ├── 1072161465827610706-C0EE3.png
│ ├── 1078643963902300188-F9EC8.png
│ ├── 1078643990720679987-79053.png
│ ├── 1083067870231150753-8D7D1.gif
│ ├── 1083068685914214490-81D5F.gif
│ ├── 1083068770823721071-EE4F6.png
│ ├── 108db4db43a8df92fb224ce27c8419ec-5A94A.png
│ ├── 1116051479728509000-C3981.gif
│ ├── 1151912105633652846-041BB.png
│ ├── 1628fc11e7961d85181295493426b775-7E20F.png
│ ├── 193e9e307ce19973be344f727859ce00-C1D87.png
│ ├── 1ab551dd1fb9fdf9a05600a122a20370-4C661.png
│ ├── 1d3ee8a85bdb38661da993daa0743a92-03106.png
│ ├── 1f32e-DC8F0.svg
│ ├── 1f389-5C738.svg
│ ├── 1f3c1-445DC.svg
│ ├── 1f3c6-621A1.svg
│ ├── 1f3fb-E58B7.svg
│ ├── 1f427-DA043.svg
│ ├── 1f43a-EB486.svg
│ ├── 1f440-6C64D.svg
│ ├── 1f446-1f3fd-9C328.svg
│ ├── 1f446-9CC34.svg
│ ├── 1f448-3DF32.svg
│ ├── 1f44b-8A059.svg
│ ├── 1f44c-59547.svg
│ ├── 1f44d-1f3fb-ED2AA.svg
│ ├── 1f44d-1f3fc-EAB0D.svg
│ ├── 1f44d-1f3fe-78CB5.svg
│ ├── 1f44d-27259.svg
│ ├── 1f44f-3D381.svg
│ ├── 1f46e-200d-2642-fe0f-E7F72.svg
│ ├── 1f480-94524.svg
│ ├── 1f4a8-89124.svg
│ ├── 1f4aa-2FD27.svg
│ ├── 1f4af-4CFF5.svg
│ ├── 1f4b8-E3468.svg
│ ├── 1f4c6-44E30.svg
│ ├── 1f4cc-F74F8.svg
│ ├── 1f4dc-AC641.svg
│ ├── 1f50d-195C0.svg
│ ├── 1f525-8FE4F.svg
│ ├── 1f602-168C5.svg
│ ├── 1f603-5E531.svg
│ ├── 1f604-BF863.svg
│ ├── 1f605-42B43.svg
│ ├── 1f606-BE94E.svg
│ ├── 1f607-0FB5B.svg
│ ├── 1f609-9EC67.svg
│ ├── 1f60a-3283D.svg
│ ├── 1f615-4892B.svg
│ ├── 1f616-1E722.svg
│ ├── 1f622-BDD22.svg
│ ├── 1f626-91074.svg
│ ├── 1f629-B734A.svg
│ ├── 1f62d-02603.svg
│ ├── 1f62e-FE396.svg
│ ├── 1f633-5703D.svg
│ ├── 1f639-E6A85.svg
│ ├── 1f63c-284BD.svg
│ ├── 1f640-9CDB4.svg
│ ├── 1f642-83E8A.svg
│ ├── 1f64c-7C820.svg
│ ├── 1f64f-1f3fc-34E32.svg
│ ├── 1f64f-1f3fe-010FE.svg
│ ├── 1f64f-22B8D.svg
│ ├── 1f680-A35CE.svg
│ ├── 1f6a8-A8AB3.svg
│ ├── 1f7df9547fbc24ce0cab6e2da89f7f0d-99E3B.png
│ ├── 1f911-F346C.svg
│ ├── 1f914-15707.svg
│ ├── 1f91d-5A0F2.svg
│ ├── 1f923-5854E.svg
│ ├── 1f929-12865.svg
│ ├── 1f92f-FF4E0.svg
│ ├── 1f972-F415D.svg
│ ├── 1f979-BE2CD.svg
│ ├── 1f9be-DDCD0.svg
│ ├── 1f9d0-3E117.svg
│ ├── 1f9d1-5BC80.svg
│ ├── 1f9e0-EF3BF.svg
│ ├── 1fae0-D00A5.svg
│ ├── 1fae1-B19DE.svg
│ ├── 2-ADBB4.png
│ ├── 2023-10-21_13.22.51-783B8.png
│ ├── 2023-10-21_13.23.07-48AF8.png
│ ├── 20c8931564dd11b412a4fecc64bf9451-94627.png
│ ├── 250ab6d8024fd889b64e57da579af3ef-988E0.png
│ ├── 258a1ffc46d9e9c3872ad643ab9b4bd5-EE2DC.png
│ ├── 262e-C2478.svg
│ ├── 263a-99012.svg
│ ├── 2694-D4DB8.svg
│ ├── 2696-15F4A.svg
│ ├── 2700c825a6e573ac1f5be12f5acfdc7e-33549.png
│ ├── 2705-0589F.svg
│ ├── 2764-A3D25.svg
│ ├── 2795-3358E.svg
│ ├── 2a9faff195fe333526cfe6ae6fce1420-49B98.png
│ ├── 2de2bcb6fe2e5617e1d3dd4c56a5a8f1-DE975.png
│ ├── 3-FB033.png
│ ├── 34e6bfee9fb587793cf81548262a0941-2A38B.png
│ ├── 366b7bd30566c2cb7cfbe6ce4a9cb61e-62DA9.png
│ ├── 37254c70d1f43924aab295c5f32a33ab-FAE53.png
│ ├── 39282d8ddea867f6f6a97b406e1af646-07295.png
│ ├── 3b01c38b7c5b905fd8e8a1d72f7d7492-53427.png
│ ├── 3d2952ebffc60cbd6aea5a76c26f6001-27971.png
│ ├── 4-4551A.png
│ ├── 40faf496db7b4bbcab37bc04b134567d-EFC50.png
│ ├── 453eac052c6c6b7a61d2f55848c5bdc6-FCF15.png
│ ├── 48e19f99f953283d153e82401ad7ffd4-A53E2.png
│ ├── 492fcf2c1088e22bbbcab07a754eab58-53405.png
│ ├── 4de0a7f237fde45d02ba1266af3cbf19-81483.png
│ ├── 5-E9BDB.png
│ ├── 50bd8deba6527b5c796a9b33197754dc-A7667.png
│ ├── 530205382832816128-7F24C.png
│ ├── 5445ffd7ffb201a98393cbdf684ea4b1-62923.png
│ ├── 5445ffd7ffb201a98393cbdf684ea4b1-FF0A0.png
│ ├── 55b9ac870fd4a1b4fc5a8c0550c27aa4-D1820.png
│ ├── 585724566404595713-733A4.png
│ ├── 588197188199252006-F53D1.png
│ ├── 588402940700524544-B3774.png
│ ├── 59310062b6d5aa6af2d911cb4f109bc4-B8F92.png
│ ├── 599667a9bd34d1211af25019e6da7fa4-6667B.png
│ ├── 5b1f70b548a2f47c51887cc1a5d2d154-94C7D.png
│ ├── 5b71d15a9bcde45fd5520e3fb580eb53-E1A50.png
│ ├── 5c5c77bb24f58eb99091a23905d985bf-A57AE.png
│ ├── 5e3fb61df91ed29c573265a690af4600-E824E.png
│ ├── 5fd4eaf3a92a63920dfe6c4e8175c1df-7264A.png
│ ├── 601dd424a107137fca718792e11993e1-53812.png
│ ├── 6094e48ab77eb87fae4e3348c0d872b4-34FEF.png
│ ├── 6519fe644ecf954cfdf81ad4c9fbaad9-B43F2.png
│ ├── 658597c1d2f027572784adf80b5c8db9-ED27A.png
│ ├── 66c54ad6b6c2224e66ef8148ab5b7bcc-9BDF6.png
│ ├── 672859745593327616-3A03D.gif
│ ├── 67594ee4b4d1fc03bca468327a0d145b-BD76A.png
│ ├── 675b226a2239369c985cd538027c7c52-40875.png
│ ├── 68d3387e-9a33-4b20-9c98-d2ab5df73670-5931D
│ ├── 6a567cbfd6039038b3e7fb3b7b3c7185-7C949.png
│ ├── 6ad4ef2f519afddce2d78021aa7dd099-B55F0.png
│ ├── 6ff1e65c0976fd9df6010502da72f911-D2FA0.png
│ ├── 6pe0lcSG28G9FkBQU0Cy-E606B.png
│ ├── 701300a5bdd3bf5640bd1370251533e2-0DC47.png
│ ├── 707068702994202754-CBC56.png
│ ├── 71c7e292d8486e69f2fb3e7d0570797e-0BCEE.png
│ ├── 720250595503767564-3995B.gif
│ ├── 724751444313636934-706C0.png
│ ├── 726348376664309801-CF03F.gif
│ ├── 734438639685074944-76127.png
│ ├── 735761118139645982-C1AF1.gif
│ ├── 741132551724204083-58D5D.gif
│ ├── 754c60f4d2cd433f04b08f2e0b8aa798-E95F1.png
│ ├── 763853149152215060-A4D38.png
│ ├── 78e7ed2ed9a6c35d6f8e3c9eea75a6c1-26779.png
│ ├── 791655412012679178-436FB.png
│ ├── 81c7e8bc06b476b6e9afec8631b5d5fc-7BC50.png
│ ├── 8230f476eec54d0f43d90d66df912139-9C1D4.png
│ ├── 842859169144111145-D3BE0.gif
│ ├── 851893827027075142-F23DF.png
│ ├── 851893827089727568-5FD38.png
│ ├── 851893827315826708-F59C0.png
│ ├── 851893828280909886-FBF42.png
│ ├── 860bc8415fcb344bebcf89a301158ffd-36A89.png
│ ├── 873266404026122250-B25E4.png
│ ├── 879837720816517151-1D599.png
│ ├── 879838986892353597-E1A61.gif
│ ├── 892726718916341780-2AFE1.png
│ ├── 898957686689894410-1D576.png
│ ├── 907209205130354738-901D2.png
│ ├── 918262047433691247-911FE.png
│ ├── 932730055887564830-5CCFE.png
│ ├── 944081698067451954-2550D.png
│ ├── 970d2e2f00cd7ef2134a1a3f21326349-404EA.png
│ ├── 973814813551644712-6A9AA.png
│ ├── 977133623968927744-6F265.gif
│ ├── 977133670429261884-CA8EA.png
│ ├── 97d0540d85f9bdeaf447a359aec7cd73-AE94E.png
│ ├── 985427438962098176-5075C.png
│ ├── 9b01adfea5eb85ed7f3fc2c94c3592c8-E96F4.png
│ ├── 9dd685e4f75747910caf04db886ca1da-BE4C8.png
│ ├── F77FpOMXsAAeMS9-AD1DB.jpeg
│ ├── F80e-t7W8AAym8--86741.png
│ ├── GettyImages-1246652809-9232cebf09384441913-6766C.jpg
│ ├── I2kJoldVWRgopDbXfGCw-46455.png
│ ├── IMG_7089-0B019.png
│ ├── QXJbrALWBfaNFQMwf6Dr-DFA18.png
│ ├── Screenshot_2023-10-17_at_23.17.36-4E0C3.png
│ ├── Screenshot_2023-10-24_at_2.10.01_PM-1FEEA.png
│ ├── Screenshot_20231023_204510_Discord-292B6.jpg
│ ├── Screenshot_from_2023-10-17_15-28-16-58755.png
│ ├── a40f031c83391544973a1697defdfe72-CB4BB
│ ├── a6662b109ac2b287a214bbbabbec79bf-FBD97.png
│ ├── a6700d776b9feae9a8825a05eb056151-9CE8A.png
│ ├── adddc7313b30a4e8b5329894bf2034ab-5B4E5.png
│ ├── b0fa46fcf237f5497b71eea9d38eeeeb-2A6D7.png
│ ├── b4d7a645168af7ded893be9676d772fb-AC409.png
│ ├── b4fead77f737aa7840a25e1cd39eb062-CEDEC.png
│ ├── bb9f76664711c9b5009e7a6add580b29-7CFF5.png
│ ├── bde0f06d784b12dd9afa577c138f0b20-06712.png
│ ├── c17a40452a693c844a735296eb537722-6F036.png
│ ├── c4-og-banner-371EC.png
│ ├── c4-og-banner-9673D.png
│ ├── c4-og-banner-E1BB1.png
│ ├── c6b85a4a6ca07ab15a30a24f570be5b8-BB20A.png
│ ├── c9e08f755ade8779aa47c47083ede0e7-B9071.png
│ ├── cat-typing-2FC1A.mp4
│ ├── cd524f78cb8a7426f6497d2a56aa3931-9BF2F.png
│ ├── cf5ff95c34041d7d559e8ba777b048e1-119CB.png
│ ├── crazy-cat-A1078.gif
│ ├── d05992162b128265b0f4fd4543b46456-9F835.png
│ ├── d28fcb32fb4a0872e0cbaf200d440c26-CFD73.png
│ ├── d29b4cc25d15de371b9b3d5d0b8aaddb-E37A6.png
│ ├── d352b5d64239648acbeb7b6f310df0b8-E875A.png
│ ├── d35a0c87f7f9f5e7c67430ca9593af01-64365.png
│ ├── d9fa0ae50d731854d342f81d679964af-D6B3D.png
│ ├── db08fb4ba94bbdd851112702df5ef168-D2462.png
│ ├── dd0b02132544c612d48d10270e412d9b-9486F.png
│ ├── e730c8116376f2c15513de956ddb5a90-CF1A5.png
│ ├── e9472a11f41d425badda92e53fc91864-F560D.png
│ ├── e99436ce7f263d3f7b6d999b8921abbf-BAFA9.png
│ ├── ec283548018391e9a25a61215bd46007-2D6CA.png
│ ├── ec2bcb7830d93aed7b07ee0d3a51e605-19997.png
│ ├── ee510353685e0ca17ca13b8d0ef6c94d-A6ACE.png
│ ├── ee6c31750f46b7cd080ab8b84efae1c2-9E926.png
│ ├── ee849af98966830b600b97aeff3121f0-82A29.png
│ ├── f4f73fc0c2e452cd53ec3b3138883251-C4CDF.png
│ ├── f5090e3d7603361e264e51d9b3397317-71F86.png
│ ├── ggsans-italic-400-E988B.woff2
│ ├── ggsans-italic-500-0777F.woff2
│ ├── ggsans-italic-600-CB411.woff2
│ ├── ggsans-italic-700-891AC.woff2
│ ├── ggsans-italic-800-D36B0.woff2
│ ├── ggsans-normal-400-1456D.woff2
│ ├── ggsans-normal-500-89CE5.woff2
│ ├── ggsans-normal-600-C1EA8.woff2
│ ├── ggsans-normal-700-1949A.woff2
│ ├── ggsans-normal-800-58487.woff2
│ ├── highlight.min-D8D27.js
│ ├── huh-cat-huh-m4rtin-2B921.mp4
│ ├── i-dont-want-peace-i-want-problems-always-D4057.mp4
│ ├── image-02990.png
│ ├── image-039A4.png
│ ├── image-423E0.png
│ ├── image-479D1.png
│ ├── image-48F46.png
│ ├── image-4A4CE.png
│ ├── image-4EE8E.png
│ ├── image-5D8DE.png
│ ├── image-68E31.png
│ ├── image-6B7A0.png
│ ├── image-70628.png
│ ├── image-7522E.png
│ ├── image-79285.png
│ ├── image-87F57.png
│ ├── image-93BFB.png
│ ├── image-B327A.png
│ ├── image-C98E6.png
│ ├── image-E703C.png
│ ├── laurencefr-66699.png
│ ├── lottie.min-99657.js
│ ├── maxresdefault-9512C.png
│ ├── money-rich-0A4AA.mp4
│ ├── openzeppelin-contracts-CF48A
│ ├── peace-was-never-an-option-chicken-AB839.mp4
│ ├── solarized-dark.min-BA98F.css
│ ├── the-dark-knight-joker-432F5.mp4
│ ├── the-end-is-near-simpsons-DF38D.mp4
│ ├── what-you-talking-about-cute-A4E77.mp4
│ └── wildcat_flow-F3FE9.jpg
├── Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt
└── Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files
│ ├── 2023-10-21_13.22.51-783B8.png
│ ├── 2023-10-21_13.23.07-48AF8.png
│ ├── 68d3387e-9a33-4b20-9c98-d2ab5df73670-5931D
│ ├── 6pe0lcSG28G9FkBQU0Cy-E606B.png
│ ├── F77FpOMXsAAeMS9-AD1DB.jpeg
│ ├── F80e-t7W8AAym8--86741.png
│ ├── GettyImages-1246652809-9232cebf09384441913-6766C.jpg
│ ├── I2kJoldVWRgopDbXfGCw-46455.png
│ ├── IMG_7089-0B019.png
│ ├── QXJbrALWBfaNFQMwf6Dr-DFA18.png
│ ├── Screenshot_2023-10-17_at_23.17.36-4E0C3.png
│ ├── Screenshot_2023-10-24_at_2.10.01_PM-1FEEA.png
│ ├── Screenshot_20231023_204510_Discord-292B6.jpg
│ ├── Screenshot_from_2023-10-17_15-28-16-58755.png
│ ├── a40f031c83391544973a1697defdfe72-CB4BB
│ ├── c4-og-banner-371EC.png
│ ├── c4-og-banner-9673D.png
│ ├── c4-og-banner-E1BB1.png
│ ├── cat-typing-4ADCA.png
│ ├── crazy-cat-A1078.gif
│ ├── huh-cat-huh-m4rtin-74E0C.png
│ ├── i-dont-want-peace-i-want-problems-always-CCED7.png
│ ├── image-02990.png
│ ├── image-039A4.png
│ ├── image-423E0.png
│ ├── image-479D1.png
│ ├── image-48F46.png
│ ├── image-4A4CE.png
│ ├── image-4EE8E.png
│ ├── image-5D8DE.png
│ ├── image-68E31.png
│ ├── image-6B7A0.png
│ ├── image-70628.png
│ ├── image-7522E.png
│ ├── image-79285.png
│ ├── image-87F57.png
│ ├── image-93BFB.png
│ ├── image-B327A.png
│ ├── image-C98E6.png
│ ├── image-E703C.png
│ ├── laurencefr-66699.png
│ ├── maxresdefault-9512C.png
│ ├── money-rich-1BA3C.png
│ ├── openzeppelin-contracts-CF48A
│ ├── peace-was-never-an-option-chicken-10ACF.png
│ ├── the-dark-knight-joker-5FB7B.png
│ ├── the-end-is-near-simpsons-6BAEF.png
│ ├── what-you-talking-about-cute-6B548.png
│ └── wildcat_flow-F3FE9.jpg
├── foundry.toml
├── hardhat.config.ts
├── images
└── wildcat_logo_strapline.png
├── lib
├── ds-test
│ ├── .github
│ │ └── workflows
│ │ │ └── build.yml
│ ├── .gitignore
│ ├── LICENSE
│ ├── Makefile
│ ├── default.nix
│ ├── demo
│ │ └── demo.sol
│ ├── package.json
│ └── src
│ │ ├── test.sol
│ │ └── test.t.sol
├── forge-std
│ ├── .github
│ │ └── workflows
│ │ │ └── ci.yml
│ ├── .gitignore
│ ├── .gitmodules
│ ├── LICENSE-APACHE
│ ├── LICENSE-MIT
│ ├── README.md
│ ├── foundry.toml
│ ├── lib
│ │ └── ds-test
│ │ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── build.yml
│ │ │ ├── .gitignore
│ │ │ ├── LICENSE
│ │ │ ├── Makefile
│ │ │ ├── default.nix
│ │ │ ├── demo
│ │ │ └── demo.sol
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ ├── test.sol
│ │ │ └── test.t.sol
│ ├── package.json
│ ├── src
│ │ ├── Base.sol
│ │ ├── Script.sol
│ │ ├── StdAssertions.sol
│ │ ├── StdChains.sol
│ │ ├── StdCheats.sol
│ │ ├── StdError.sol
│ │ ├── StdInvariant.sol
│ │ ├── StdJson.sol
│ │ ├── StdMath.sol
│ │ ├── StdStorage.sol
│ │ ├── StdStyle.sol
│ │ ├── StdUtils.sol
│ │ ├── Test.sol
│ │ ├── Vm.sol
│ │ ├── console.sol
│ │ ├── console2.sol
│ │ └── interfaces
│ │ │ ├── IERC1155.sol
│ │ │ ├── IERC165.sol
│ │ │ ├── IERC20.sol
│ │ │ ├── IERC4626.sol
│ │ │ ├── IERC721.sol
│ │ │ └── IMulticall3.sol
│ └── test
│ │ ├── StdAssertions.t.sol
│ │ ├── StdChains.t.sol
│ │ ├── StdCheats.t.sol
│ │ ├── StdError.t.sol
│ │ ├── StdMath.t.sol
│ │ ├── StdStorage.t.sol
│ │ ├── StdStyle.t.sol
│ │ ├── StdUtils.t.sol
│ │ ├── compilation
│ │ ├── CompilationScript.sol
│ │ ├── CompilationScriptBase.sol
│ │ ├── CompilationTest.sol
│ │ └── CompilationTestBase.sol
│ │ └── fixtures
│ │ └── broadcast.log.json
├── openzeppelin-contracts
│ ├── .changeset
│ │ └── config.json
│ ├── .codecov.yml
│ ├── .editorconfig
│ ├── .eslintrc
│ ├── .github
│ │ ├── ISSUE_TEMPLATE
│ │ │ ├── bug_report.md
│ │ │ ├── config.yml
│ │ │ └── feature_request.md
│ │ ├── PULL_REQUEST_TEMPLATE.md
│ │ ├── actions
│ │ │ ├── gas-compare
│ │ │ │ └── action.yml
│ │ │ ├── setup
│ │ │ │ └── action.yml
│ │ │ └── storage-layout
│ │ │ │ └── action.yml
│ │ └── workflows
│ │ │ ├── actionlint.yml
│ │ │ ├── changeset.yml
│ │ │ ├── checks.yml
│ │ │ ├── docs.yml
│ │ │ ├── formal-verification.yml
│ │ │ ├── release-cycle.yml
│ │ │ └── upgradeable.yml
│ ├── .gitignore
│ ├── .gitmodules
│ ├── .mocharc.js
│ ├── .prettierrc
│ ├── .solcover.js
│ ├── .solhint.json
│ ├── CHANGELOG.md
│ ├── CODE_OF_CONDUCT.md
│ ├── CONTRIBUTING.md
│ ├── GUIDELINES.md
│ ├── LICENSE
│ ├── README.md
│ ├── RELEASING.md
│ ├── SECURITY.md
│ ├── audits
│ │ ├── 2017-03.md
│ │ ├── 2018-10.pdf
│ │ ├── 2022-10-Checkpoints.pdf
│ │ ├── 2022-10-ERC4626.pdf
│ │ ├── 2023-05-v4.9.pdf
│ │ └── README.md
│ ├── certora
│ │ ├── .gitignore
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── diff
│ │ │ └── token_ERC721_ERC721.sol.patch
│ │ ├── harnesses
│ │ │ ├── AccessControlDefaultAdminRulesHarness.sol
│ │ │ ├── AccessControlHarness.sol
│ │ │ ├── DoubleEndedQueueHarness.sol
│ │ │ ├── ERC20FlashMintHarness.sol
│ │ │ ├── ERC20PermitHarness.sol
│ │ │ ├── ERC20WrapperHarness.sol
│ │ │ ├── ERC3156FlashBorrowerHarness.sol
│ │ │ ├── ERC721Harness.sol
│ │ │ ├── ERC721ReceiverHarness.sol
│ │ │ ├── EnumerableMapHarness.sol
│ │ │ ├── EnumerableSetHarness.sol
│ │ │ ├── InitializableHarness.sol
│ │ │ ├── Ownable2StepHarness.sol
│ │ │ ├── OwnableHarness.sol
│ │ │ ├── PausableHarness.sol
│ │ │ └── TimelockControllerHarness.sol
│ │ ├── reports
│ │ │ ├── 2021-10.pdf
│ │ │ ├── 2022-03.pdf
│ │ │ └── 2022-05.pdf
│ │ ├── run.js
│ │ ├── specs.json
│ │ └── specs
│ │ │ ├── AccessControl.spec
│ │ │ ├── AccessControlDefaultAdminRules.spec
│ │ │ ├── DoubleEndedQueue.spec
│ │ │ ├── ERC20.spec
│ │ │ ├── ERC20FlashMint.spec
│ │ │ ├── ERC20Wrapper.spec
│ │ │ ├── ERC721.spec
│ │ │ ├── EnumerableMap.spec
│ │ │ ├── EnumerableSet.spec
│ │ │ ├── Initializable.spec
│ │ │ ├── Ownable.spec
│ │ │ ├── Ownable2Step.spec
│ │ │ ├── Pausable.spec
│ │ │ ├── TimelockController.spec
│ │ │ ├── helpers
│ │ │ └── helpers.spec
│ │ │ └── methods
│ │ │ ├── IAccessControl.spec
│ │ │ ├── IAccessControlDefaultAdminRules.spec
│ │ │ ├── IERC20.spec
│ │ │ ├── IERC2612.spec
│ │ │ ├── IERC3156.spec
│ │ │ ├── IERC5313.spec
│ │ │ ├── IERC721.spec
│ │ │ ├── IOwnable.spec
│ │ │ └── IOwnable2Step.spec
│ ├── contracts
│ │ ├── access
│ │ │ ├── AccessControl.sol
│ │ │ ├── AccessControlCrossChain.sol
│ │ │ ├── AccessControlDefaultAdminRules.sol
│ │ │ ├── AccessControlEnumerable.sol
│ │ │ ├── IAccessControl.sol
│ │ │ ├── IAccessControlDefaultAdminRules.sol
│ │ │ ├── IAccessControlEnumerable.sol
│ │ │ ├── Ownable.sol
│ │ │ ├── Ownable2Step.sol
│ │ │ └── README.adoc
│ │ ├── crosschain
│ │ │ ├── CrossChainEnabled.sol
│ │ │ ├── README.adoc
│ │ │ ├── amb
│ │ │ │ ├── CrossChainEnabledAMB.sol
│ │ │ │ └── LibAMB.sol
│ │ │ ├── arbitrum
│ │ │ │ ├── CrossChainEnabledArbitrumL1.sol
│ │ │ │ ├── CrossChainEnabledArbitrumL2.sol
│ │ │ │ ├── LibArbitrumL1.sol
│ │ │ │ └── LibArbitrumL2.sol
│ │ │ ├── errors.sol
│ │ │ ├── optimism
│ │ │ │ ├── CrossChainEnabledOptimism.sol
│ │ │ │ └── LibOptimism.sol
│ │ │ └── polygon
│ │ │ │ └── CrossChainEnabledPolygonChild.sol
│ │ ├── finance
│ │ │ ├── PaymentSplitter.sol
│ │ │ ├── README.adoc
│ │ │ └── VestingWallet.sol
│ │ ├── governance
│ │ │ ├── Governor.sol
│ │ │ ├── IGovernor.sol
│ │ │ ├── README.adoc
│ │ │ ├── TimelockController.sol
│ │ │ ├── compatibility
│ │ │ │ ├── GovernorCompatibilityBravo.sol
│ │ │ │ └── IGovernorCompatibilityBravo.sol
│ │ │ ├── extensions
│ │ │ │ ├── GovernorCountingSimple.sol
│ │ │ │ ├── GovernorPreventLateQuorum.sol
│ │ │ │ ├── GovernorProposalThreshold.sol
│ │ │ │ ├── GovernorSettings.sol
│ │ │ │ ├── GovernorTimelockCompound.sol
│ │ │ │ ├── GovernorTimelockControl.sol
│ │ │ │ ├── GovernorVotes.sol
│ │ │ │ ├── GovernorVotesComp.sol
│ │ │ │ ├── GovernorVotesQuorumFraction.sol
│ │ │ │ └── IGovernorTimelock.sol
│ │ │ └── utils
│ │ │ │ ├── IVotes.sol
│ │ │ │ └── Votes.sol
│ │ ├── interfaces
│ │ │ ├── IERC1155.sol
│ │ │ ├── IERC1155MetadataURI.sol
│ │ │ ├── IERC1155Receiver.sol
│ │ │ ├── IERC1271.sol
│ │ │ ├── IERC1363.sol
│ │ │ ├── IERC1363Receiver.sol
│ │ │ ├── IERC1363Spender.sol
│ │ │ ├── IERC165.sol
│ │ │ ├── IERC1820Implementer.sol
│ │ │ ├── IERC1820Registry.sol
│ │ │ ├── IERC1967.sol
│ │ │ ├── IERC20.sol
│ │ │ ├── IERC20Metadata.sol
│ │ │ ├── IERC2309.sol
│ │ │ ├── IERC2612.sol
│ │ │ ├── IERC2981.sol
│ │ │ ├── IERC3156.sol
│ │ │ ├── IERC3156FlashBorrower.sol
│ │ │ ├── IERC3156FlashLender.sol
│ │ │ ├── IERC4626.sol
│ │ │ ├── IERC4906.sol
│ │ │ ├── IERC5267.sol
│ │ │ ├── IERC5313.sol
│ │ │ ├── IERC5805.sol
│ │ │ ├── IERC6372.sol
│ │ │ ├── IERC721.sol
│ │ │ ├── IERC721Enumerable.sol
│ │ │ ├── IERC721Metadata.sol
│ │ │ ├── IERC721Receiver.sol
│ │ │ ├── IERC777.sol
│ │ │ ├── IERC777Recipient.sol
│ │ │ ├── IERC777Sender.sol
│ │ │ ├── README.adoc
│ │ │ ├── draft-IERC1822.sol
│ │ │ └── draft-IERC2612.sol
│ │ ├── metatx
│ │ │ ├── ERC2771Context.sol
│ │ │ ├── MinimalForwarder.sol
│ │ │ └── README.adoc
│ │ ├── mocks
│ │ │ ├── AccessControlCrossChainMock.sol
│ │ │ ├── ArraysMock.sol
│ │ │ ├── CallReceiverMock.sol
│ │ │ ├── ConditionalEscrowMock.sol
│ │ │ ├── ContextMock.sol
│ │ │ ├── DummyImplementation.sol
│ │ │ ├── EIP712Verifier.sol
│ │ │ ├── ERC1271WalletMock.sol
│ │ │ ├── ERC165
│ │ │ │ ├── ERC165MaliciousData.sol
│ │ │ │ ├── ERC165MissingData.sol
│ │ │ │ ├── ERC165NotSupported.sol
│ │ │ │ └── ERC165ReturnBomb.sol
│ │ │ ├── ERC20Mock.sol
│ │ │ ├── ERC20Reentrant.sol
│ │ │ ├── ERC2771ContextMock.sol
│ │ │ ├── ERC3156FlashBorrowerMock.sol
│ │ │ ├── ERC4626Mock.sol
│ │ │ ├── EtherReceiverMock.sol
│ │ │ ├── InitializableMock.sol
│ │ │ ├── MulticallTest.sol
│ │ │ ├── MultipleInheritanceInitializableMocks.sol
│ │ │ ├── PausableMock.sol
│ │ │ ├── PullPaymentMock.sol
│ │ │ ├── ReentrancyAttack.sol
│ │ │ ├── ReentrancyMock.sol
│ │ │ ├── RegressionImplementation.sol
│ │ │ ├── SafeMathMemoryCheck.sol
│ │ │ ├── SingleInheritanceInitializableMocks.sol
│ │ │ ├── StorageSlotMock.sol
│ │ │ ├── TimelockReentrant.sol
│ │ │ ├── TimersBlockNumberImpl.sol
│ │ │ ├── TimersTimestampImpl.sol
│ │ │ ├── VotesMock.sol
│ │ │ ├── compound
│ │ │ │ └── CompTimelock.sol
│ │ │ ├── crosschain
│ │ │ │ ├── bridges.sol
│ │ │ │ └── receivers.sol
│ │ │ ├── docs
│ │ │ │ ├── ERC4626Fees.sol
│ │ │ │ └── governance
│ │ │ │ │ ├── MyGovernor.sol
│ │ │ │ │ ├── MyToken.sol
│ │ │ │ │ ├── MyTokenTimestampBased.sol
│ │ │ │ │ └── MyTokenWrapped.sol
│ │ │ ├── governance
│ │ │ │ ├── GovernorCompMock.sol
│ │ │ │ ├── GovernorCompatibilityBravoMock.sol
│ │ │ │ ├── GovernorMock.sol
│ │ │ │ ├── GovernorPreventLateQuorumMock.sol
│ │ │ │ ├── GovernorTimelockCompoundMock.sol
│ │ │ │ ├── GovernorTimelockControlMock.sol
│ │ │ │ ├── GovernorVoteMock.sol
│ │ │ │ └── GovernorWithParamsMock.sol
│ │ │ ├── proxy
│ │ │ │ ├── BadBeacon.sol
│ │ │ │ ├── ClashingImplementation.sol
│ │ │ │ ├── UUPSLegacy.sol
│ │ │ │ └── UUPSUpgradeableMock.sol
│ │ │ ├── token
│ │ │ │ ├── ERC1155ReceiverMock.sol
│ │ │ │ ├── ERC20DecimalsMock.sol
│ │ │ │ ├── ERC20ExcessDecimalsMock.sol
│ │ │ │ ├── ERC20FlashMintMock.sol
│ │ │ │ ├── ERC20ForceApproveMock.sol
│ │ │ │ ├── ERC20MulticallMock.sol
│ │ │ │ ├── ERC20NoReturnMock.sol
│ │ │ │ ├── ERC20PermitNoRevertMock.sol
│ │ │ │ ├── ERC20ReturnFalseMock.sol
│ │ │ │ ├── ERC20VotesLegacyMock.sol
│ │ │ │ ├── ERC4626OffsetMock.sol
│ │ │ │ ├── ERC4646FeesMock.sol
│ │ │ │ ├── ERC721ConsecutiveEnumerableMock.sol
│ │ │ │ ├── ERC721ConsecutiveMock.sol
│ │ │ │ ├── ERC721ReceiverMock.sol
│ │ │ │ ├── ERC721URIStorageMock.sol
│ │ │ │ ├── ERC777Mock.sol
│ │ │ │ ├── ERC777SenderRecipientMock.sol
│ │ │ │ └── VotesTimestamp.sol
│ │ │ └── wizard
│ │ │ │ ├── MyGovernor1.sol
│ │ │ │ ├── MyGovernor2.sol
│ │ │ │ └── MyGovernor3.sol
│ │ ├── package.json
│ │ ├── proxy
│ │ │ ├── Clones.sol
│ │ │ ├── ERC1967
│ │ │ │ ├── ERC1967Proxy.sol
│ │ │ │ └── ERC1967Upgrade.sol
│ │ │ ├── Proxy.sol
│ │ │ ├── README.adoc
│ │ │ ├── beacon
│ │ │ │ ├── BeaconProxy.sol
│ │ │ │ ├── IBeacon.sol
│ │ │ │ └── UpgradeableBeacon.sol
│ │ │ ├── transparent
│ │ │ │ ├── ProxyAdmin.sol
│ │ │ │ └── TransparentUpgradeableProxy.sol
│ │ │ └── utils
│ │ │ │ ├── Initializable.sol
│ │ │ │ └── UUPSUpgradeable.sol
│ │ ├── security
│ │ │ ├── Pausable.sol
│ │ │ ├── PullPayment.sol
│ │ │ ├── README.adoc
│ │ │ └── ReentrancyGuard.sol
│ │ ├── token
│ │ │ ├── ERC1155
│ │ │ │ ├── ERC1155.sol
│ │ │ │ ├── IERC1155.sol
│ │ │ │ ├── IERC1155Receiver.sol
│ │ │ │ ├── README.adoc
│ │ │ │ ├── extensions
│ │ │ │ │ ├── ERC1155Burnable.sol
│ │ │ │ │ ├── ERC1155Pausable.sol
│ │ │ │ │ ├── ERC1155Supply.sol
│ │ │ │ │ ├── ERC1155URIStorage.sol
│ │ │ │ │ └── IERC1155MetadataURI.sol
│ │ │ │ ├── presets
│ │ │ │ │ ├── ERC1155PresetMinterPauser.sol
│ │ │ │ │ └── README.md
│ │ │ │ └── utils
│ │ │ │ │ ├── ERC1155Holder.sol
│ │ │ │ │ └── ERC1155Receiver.sol
│ │ │ ├── ERC20
│ │ │ │ ├── ERC20.sol
│ │ │ │ ├── IERC20.sol
│ │ │ │ ├── README.adoc
│ │ │ │ ├── extensions
│ │ │ │ │ ├── ERC20Burnable.sol
│ │ │ │ │ ├── ERC20Capped.sol
│ │ │ │ │ ├── ERC20FlashMint.sol
│ │ │ │ │ ├── ERC20Pausable.sol
│ │ │ │ │ ├── ERC20Permit.sol
│ │ │ │ │ ├── ERC20Snapshot.sol
│ │ │ │ │ ├── ERC20Votes.sol
│ │ │ │ │ ├── ERC20VotesComp.sol
│ │ │ │ │ ├── ERC20Wrapper.sol
│ │ │ │ │ ├── ERC4626.sol
│ │ │ │ │ ├── IERC20Metadata.sol
│ │ │ │ │ ├── IERC20Permit.sol
│ │ │ │ │ ├── draft-ERC20Permit.sol
│ │ │ │ │ └── draft-IERC20Permit.sol
│ │ │ │ ├── presets
│ │ │ │ │ ├── ERC20PresetFixedSupply.sol
│ │ │ │ │ ├── ERC20PresetMinterPauser.sol
│ │ │ │ │ └── README.md
│ │ │ │ └── utils
│ │ │ │ │ ├── SafeERC20.sol
│ │ │ │ │ └── TokenTimelock.sol
│ │ │ ├── ERC721
│ │ │ │ ├── ERC721.sol
│ │ │ │ ├── IERC721.sol
│ │ │ │ ├── IERC721Receiver.sol
│ │ │ │ ├── README.adoc
│ │ │ │ ├── extensions
│ │ │ │ │ ├── ERC721Burnable.sol
│ │ │ │ │ ├── ERC721Consecutive.sol
│ │ │ │ │ ├── ERC721Enumerable.sol
│ │ │ │ │ ├── ERC721Pausable.sol
│ │ │ │ │ ├── ERC721Royalty.sol
│ │ │ │ │ ├── ERC721URIStorage.sol
│ │ │ │ │ ├── ERC721Votes.sol
│ │ │ │ │ ├── ERC721Wrapper.sol
│ │ │ │ │ ├── IERC721Enumerable.sol
│ │ │ │ │ ├── IERC721Metadata.sol
│ │ │ │ │ └── draft-ERC721Votes.sol
│ │ │ │ ├── presets
│ │ │ │ │ ├── ERC721PresetMinterPauserAutoId.sol
│ │ │ │ │ └── README.md
│ │ │ │ └── utils
│ │ │ │ │ └── ERC721Holder.sol
│ │ │ ├── ERC777
│ │ │ │ ├── ERC777.sol
│ │ │ │ ├── IERC777.sol
│ │ │ │ ├── IERC777Recipient.sol
│ │ │ │ ├── IERC777Sender.sol
│ │ │ │ ├── README.adoc
│ │ │ │ └── presets
│ │ │ │ │ └── ERC777PresetFixedSupply.sol
│ │ │ └── common
│ │ │ │ ├── ERC2981.sol
│ │ │ │ └── README.adoc
│ │ ├── utils
│ │ │ ├── Address.sol
│ │ │ ├── Arrays.sol
│ │ │ ├── Base64.sol
│ │ │ ├── Checkpoints.sol
│ │ │ ├── Context.sol
│ │ │ ├── Counters.sol
│ │ │ ├── Create2.sol
│ │ │ ├── Multicall.sol
│ │ │ ├── README.adoc
│ │ │ ├── ShortStrings.sol
│ │ │ ├── StorageSlot.sol
│ │ │ ├── Strings.sol
│ │ │ ├── Timers.sol
│ │ │ ├── cryptography
│ │ │ │ ├── ECDSA.sol
│ │ │ │ ├── EIP712.sol
│ │ │ │ ├── MerkleProof.sol
│ │ │ │ ├── SignatureChecker.sol
│ │ │ │ └── draft-EIP712.sol
│ │ │ ├── escrow
│ │ │ │ ├── ConditionalEscrow.sol
│ │ │ │ ├── Escrow.sol
│ │ │ │ └── RefundEscrow.sol
│ │ │ ├── introspection
│ │ │ │ ├── ERC165.sol
│ │ │ │ ├── ERC165Checker.sol
│ │ │ │ ├── ERC165Storage.sol
│ │ │ │ ├── ERC1820Implementer.sol
│ │ │ │ ├── IERC165.sol
│ │ │ │ ├── IERC1820Implementer.sol
│ │ │ │ └── IERC1820Registry.sol
│ │ │ ├── math
│ │ │ │ ├── Math.sol
│ │ │ │ ├── SafeCast.sol
│ │ │ │ ├── SafeMath.sol
│ │ │ │ ├── SignedMath.sol
│ │ │ │ └── SignedSafeMath.sol
│ │ │ └── structs
│ │ │ │ ├── BitMaps.sol
│ │ │ │ ├── DoubleEndedQueue.sol
│ │ │ │ ├── EnumerableMap.sol
│ │ │ │ └── EnumerableSet.sol
│ │ └── vendor
│ │ │ ├── amb
│ │ │ └── IAMB.sol
│ │ │ ├── arbitrum
│ │ │ ├── IArbSys.sol
│ │ │ ├── IBridge.sol
│ │ │ ├── IDelayedMessageProvider.sol
│ │ │ ├── IInbox.sol
│ │ │ └── IOutbox.sol
│ │ │ ├── compound
│ │ │ ├── ICompoundTimelock.sol
│ │ │ └── LICENSE
│ │ │ ├── optimism
│ │ │ ├── ICrossDomainMessenger.sol
│ │ │ └── LICENSE
│ │ │ └── polygon
│ │ │ └── IFxMessageProcessor.sol
│ ├── docs
│ │ ├── README.md
│ │ ├── antora.yml
│ │ ├── config.js
│ │ ├── modules
│ │ │ └── ROOT
│ │ │ │ ├── images
│ │ │ │ ├── erc4626-attack-3a.png
│ │ │ │ ├── erc4626-attack-3b.png
│ │ │ │ ├── erc4626-attack-6.png
│ │ │ │ ├── erc4626-attack.png
│ │ │ │ ├── erc4626-deposit.png
│ │ │ │ ├── erc4626-mint.png
│ │ │ │ ├── erc4626-rate-linear.png
│ │ │ │ ├── erc4626-rate-loglog.png
│ │ │ │ ├── erc4626-rate-loglogext.png
│ │ │ │ ├── tally-exec.png
│ │ │ │ └── tally-vote.png
│ │ │ │ ├── nav.adoc
│ │ │ │ └── pages
│ │ │ │ ├── access-control.adoc
│ │ │ │ ├── crosschain.adoc
│ │ │ │ ├── crowdsales.adoc
│ │ │ │ ├── drafts.adoc
│ │ │ │ ├── erc1155.adoc
│ │ │ │ ├── erc20-supply.adoc
│ │ │ │ ├── erc20.adoc
│ │ │ │ ├── erc4626.adoc
│ │ │ │ ├── erc721.adoc
│ │ │ │ ├── erc777.adoc
│ │ │ │ ├── extending-contracts.adoc
│ │ │ │ ├── governance.adoc
│ │ │ │ ├── index.adoc
│ │ │ │ ├── releases-stability.adoc
│ │ │ │ ├── tokens.adoc
│ │ │ │ ├── upgradeable.adoc
│ │ │ │ ├── utilities.adoc
│ │ │ │ └── wizard.adoc
│ │ └── templates
│ │ │ ├── contract.hbs
│ │ │ ├── helpers.js
│ │ │ ├── page.hbs
│ │ │ └── properties.js
│ ├── foundry.toml
│ ├── hardhat.config.js
│ ├── hardhat
│ │ ├── env-artifacts.js
│ │ ├── env-contract.js
│ │ ├── ignore-unreachable-warnings.js
│ │ ├── skip-foundry-tests.js
│ │ └── task-test-get-files.js
│ ├── lib
│ │ ├── erc4626-tests
│ │ │ ├── ERC4626.prop.sol
│ │ │ ├── ERC4626.test.sol
│ │ │ ├── LICENSE
│ │ │ └── README.md
│ │ └── forge-std
│ │ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── ci.yml
│ │ │ ├── .gitignore
│ │ │ ├── .gitmodules
│ │ │ ├── LICENSE-APACHE
│ │ │ ├── LICENSE-MIT
│ │ │ ├── README.md
│ │ │ ├── foundry.toml
│ │ │ ├── lib
│ │ │ └── ds-test
│ │ │ │ ├── .github
│ │ │ │ └── workflows
│ │ │ │ │ └── build.yml
│ │ │ │ ├── .gitignore
│ │ │ │ ├── LICENSE
│ │ │ │ ├── Makefile
│ │ │ │ ├── default.nix
│ │ │ │ ├── demo
│ │ │ │ └── demo.sol
│ │ │ │ ├── package.json
│ │ │ │ └── src
│ │ │ │ ├── test.sol
│ │ │ │ └── test.t.sol
│ │ │ ├── package.json
│ │ │ ├── src
│ │ │ ├── Base.sol
│ │ │ ├── Script.sol
│ │ │ ├── StdAssertions.sol
│ │ │ ├── StdChains.sol
│ │ │ ├── StdCheats.sol
│ │ │ ├── StdError.sol
│ │ │ ├── StdInvariant.sol
│ │ │ ├── StdJson.sol
│ │ │ ├── StdMath.sol
│ │ │ ├── StdStorage.sol
│ │ │ ├── StdStyle.sol
│ │ │ ├── StdUtils.sol
│ │ │ ├── Test.sol
│ │ │ ├── Vm.sol
│ │ │ ├── console.sol
│ │ │ ├── console2.sol
│ │ │ └── interfaces
│ │ │ │ ├── IERC1155.sol
│ │ │ │ ├── IERC165.sol
│ │ │ │ ├── IERC20.sol
│ │ │ │ ├── IERC4626.sol
│ │ │ │ ├── IERC721.sol
│ │ │ │ └── IMulticall3.sol
│ │ │ └── test
│ │ │ ├── StdAssertions.t.sol
│ │ │ ├── StdChains.t.sol
│ │ │ ├── StdCheats.t.sol
│ │ │ ├── StdError.t.sol
│ │ │ ├── StdMath.t.sol
│ │ │ ├── StdStorage.t.sol
│ │ │ ├── StdStyle.t.sol
│ │ │ ├── StdUtils.t.sol
│ │ │ ├── compilation
│ │ │ ├── CompilationScript.sol
│ │ │ ├── CompilationScriptBase.sol
│ │ │ ├── CompilationTest.sol
│ │ │ └── CompilationTestBase.sol
│ │ │ └── fixtures
│ │ │ └── broadcast.log.json
│ ├── logo.svg
│ ├── netlify.toml
│ ├── package-lock.json
│ ├── package.json
│ ├── remappings.txt
│ ├── renovate.json
│ ├── requirements.txt
│ ├── scripts
│ │ ├── checks
│ │ │ ├── compare-layout.js
│ │ │ ├── compareGasReports.js
│ │ │ ├── extract-layout.js
│ │ │ ├── generation.sh
│ │ │ └── inheritance-ordering.js
│ │ ├── gen-nav.js
│ │ ├── generate
│ │ │ ├── format-lines.js
│ │ │ ├── run.js
│ │ │ └── templates
│ │ │ │ ├── Checkpoints.js
│ │ │ │ ├── Checkpoints.opts.js
│ │ │ │ ├── Checkpoints.t.js
│ │ │ │ ├── EnumerableMap.js
│ │ │ │ ├── EnumerableSet.js
│ │ │ │ ├── SafeCast.js
│ │ │ │ ├── StorageSlot.js
│ │ │ │ └── conversion.js
│ │ ├── git-user-config.sh
│ │ ├── helpers.js
│ │ ├── migrate-imports.js
│ │ ├── prepack.sh
│ │ ├── prepare-contracts-package.sh
│ │ ├── prepare-docs.sh
│ │ ├── prepare.sh
│ │ ├── release
│ │ │ ├── format-changelog.js
│ │ │ ├── synchronize-versions.js
│ │ │ ├── update-comment.js
│ │ │ ├── version.sh
│ │ │ └── workflow
│ │ │ │ ├── exit-prerelease.sh
│ │ │ │ ├── github-release.js
│ │ │ │ ├── integrity-check.sh
│ │ │ │ ├── pack.sh
│ │ │ │ ├── publish.sh
│ │ │ │ ├── rerun.js
│ │ │ │ ├── set-changesets-pr-title.js
│ │ │ │ ├── start.sh
│ │ │ │ └── state.js
│ │ ├── remove-ignored-artifacts.js
│ │ ├── update-docs-branch.js
│ │ └── upgradeable
│ │ │ ├── README.md
│ │ │ ├── patch-apply.sh
│ │ │ ├── patch-save.sh
│ │ │ ├── transpile-onto.sh
│ │ │ ├── transpile.sh
│ │ │ └── upgradeable.patch
│ ├── slither.config.json
│ └── test
│ │ ├── TESTING.md
│ │ ├── access
│ │ ├── AccessControl.behavior.js
│ │ ├── AccessControl.test.js
│ │ ├── AccessControlCrossChain.test.js
│ │ ├── AccessControlDefaultAdminRules.test.js
│ │ ├── AccessControlEnumerable.test.js
│ │ ├── Ownable.test.js
│ │ └── Ownable2Step.test.js
│ │ ├── crosschain
│ │ └── CrossChainEnabled.test.js
│ │ ├── finance
│ │ ├── PaymentSplitter.test.js
│ │ ├── VestingWallet.behavior.js
│ │ └── VestingWallet.test.js
│ │ ├── governance
│ │ ├── Governor.t.sol
│ │ ├── Governor.test.js
│ │ ├── TimelockController.test.js
│ │ ├── compatibility
│ │ │ └── GovernorCompatibilityBravo.test.js
│ │ ├── extensions
│ │ │ ├── GovernorComp.test.js
│ │ │ ├── GovernorERC721.test.js
│ │ │ ├── GovernorPreventLateQuorum.test.js
│ │ │ ├── GovernorTimelockCompound.test.js
│ │ │ ├── GovernorTimelockControl.test.js
│ │ │ ├── GovernorVotesQuorumFraction.test.js
│ │ │ └── GovernorWithParams.test.js
│ │ └── utils
│ │ │ ├── EIP6372.behavior.js
│ │ │ ├── Votes.behavior.js
│ │ │ └── Votes.test.js
│ │ ├── helpers
│ │ ├── chainid.js
│ │ ├── create2.js
│ │ ├── crosschain.js
│ │ ├── customError.js
│ │ ├── eip712.js
│ │ ├── enums.js
│ │ ├── erc1967.js
│ │ ├── governance.js
│ │ ├── map-values.js
│ │ ├── sign.js
│ │ ├── time.js
│ │ └── txpool.js
│ │ ├── metatx
│ │ ├── ERC2771Context.test.js
│ │ └── MinimalForwarder.test.js
│ │ ├── migrate-imports.test.js
│ │ ├── proxy
│ │ ├── Clones.behaviour.js
│ │ ├── Clones.test.js
│ │ ├── ERC1967
│ │ │ └── ERC1967Proxy.test.js
│ │ ├── Proxy.behaviour.js
│ │ ├── beacon
│ │ │ ├── BeaconProxy.test.js
│ │ │ └── UpgradeableBeacon.test.js
│ │ ├── transparent
│ │ │ ├── ProxyAdmin.test.js
│ │ │ ├── TransparentUpgradeableProxy.behaviour.js
│ │ │ └── TransparentUpgradeableProxy.test.js
│ │ └── utils
│ │ │ ├── Initializable.test.js
│ │ │ └── UUPSUpgradeable.test.js
│ │ ├── security
│ │ ├── Pausable.test.js
│ │ ├── PullPayment.test.js
│ │ └── ReentrancyGuard.test.js
│ │ ├── token
│ │ ├── ERC1155
│ │ │ ├── ERC1155.behavior.js
│ │ │ ├── ERC1155.test.js
│ │ │ ├── extensions
│ │ │ │ ├── ERC1155Burnable.test.js
│ │ │ │ ├── ERC1155Pausable.test.js
│ │ │ │ ├── ERC1155Supply.test.js
│ │ │ │ └── ERC1155URIStorage.test.js
│ │ │ ├── presets
│ │ │ │ └── ERC1155PresetMinterPauser.test.js
│ │ │ └── utils
│ │ │ │ └── ERC1155Holder.test.js
│ │ ├── ERC20
│ │ │ ├── ERC20.behavior.js
│ │ │ ├── ERC20.test.js
│ │ │ ├── extensions
│ │ │ │ ├── ERC20Burnable.behavior.js
│ │ │ │ ├── ERC20Burnable.test.js
│ │ │ │ ├── ERC20Capped.behavior.js
│ │ │ │ ├── ERC20Capped.test.js
│ │ │ │ ├── ERC20FlashMint.test.js
│ │ │ │ ├── ERC20Pausable.test.js
│ │ │ │ ├── ERC20Snapshot.test.js
│ │ │ │ ├── ERC20Votes.test.js
│ │ │ │ ├── ERC20VotesComp.test.js
│ │ │ │ ├── ERC20Wrapper.test.js
│ │ │ │ ├── ERC4626.t.sol
│ │ │ │ ├── ERC4626.test.js
│ │ │ │ └── draft-ERC20Permit.test.js
│ │ │ ├── presets
│ │ │ │ ├── ERC20PresetFixedSupply.test.js
│ │ │ │ └── ERC20PresetMinterPauser.test.js
│ │ │ └── utils
│ │ │ │ ├── SafeERC20.test.js
│ │ │ │ └── TokenTimelock.test.js
│ │ ├── ERC721
│ │ │ ├── ERC721.behavior.js
│ │ │ ├── ERC721.test.js
│ │ │ ├── ERC721Enumerable.test.js
│ │ │ ├── extensions
│ │ │ │ ├── ERC721Burnable.test.js
│ │ │ │ ├── ERC721Consecutive.t.sol
│ │ │ │ ├── ERC721Consecutive.test.js
│ │ │ │ ├── ERC721Pausable.test.js
│ │ │ │ ├── ERC721Royalty.test.js
│ │ │ │ ├── ERC721URIStorage.test.js
│ │ │ │ ├── ERC721Votes.test.js
│ │ │ │ └── ERC721Wrapper.test.js
│ │ │ ├── presets
│ │ │ │ └── ERC721PresetMinterPauserAutoId.test.js
│ │ │ └── utils
│ │ │ │ └── ERC721Holder.test.js
│ │ ├── ERC777
│ │ │ ├── ERC777.behavior.js
│ │ │ ├── ERC777.test.js
│ │ │ └── presets
│ │ │ │ └── ERC777PresetFixedSupply.test.js
│ │ └── common
│ │ │ └── ERC2981.behavior.js
│ │ └── utils
│ │ ├── Address.test.js
│ │ ├── Arrays.test.js
│ │ ├── Base64.test.js
│ │ ├── Checkpoints.t.sol
│ │ ├── Checkpoints.test.js
│ │ ├── Context.behavior.js
│ │ ├── Context.test.js
│ │ ├── Counters.test.js
│ │ ├── Create2.test.js
│ │ ├── Multicall.test.js
│ │ ├── ShortStrings.t.sol
│ │ ├── ShortStrings.test.js
│ │ ├── StorageSlot.test.js
│ │ ├── Strings.test.js
│ │ ├── TimersBlockNumberImpl.test.js
│ │ ├── TimersTimestamp.test.js
│ │ ├── cryptography
│ │ ├── ECDSA.test.js
│ │ ├── EIP712.test.js
│ │ ├── MerkleProof.test.js
│ │ └── SignatureChecker.test.js
│ │ ├── escrow
│ │ ├── ConditionalEscrow.test.js
│ │ ├── Escrow.behavior.js
│ │ ├── Escrow.test.js
│ │ └── RefundEscrow.test.js
│ │ ├── introspection
│ │ ├── ERC165.test.js
│ │ ├── ERC165Checker.test.js
│ │ ├── ERC165Storage.test.js
│ │ ├── ERC1820Implementer.test.js
│ │ └── SupportsInterface.behavior.js
│ │ ├── math
│ │ ├── Math.t.sol
│ │ ├── Math.test.js
│ │ ├── SafeCast.test.js
│ │ ├── SafeMath.test.js
│ │ ├── SignedMath.test.js
│ │ └── SignedSafeMath.test.js
│ │ └── structs
│ │ ├── BitMap.test.js
│ │ ├── DoubleEndedQueue.test.js
│ │ ├── EnumerableMap.behavior.js
│ │ ├── EnumerableMap.test.js
│ │ ├── EnumerableSet.behavior.js
│ │ └── EnumerableSet.test.js
├── sol-utils
│ ├── .github
│ │ └── workflows
│ │ │ └── test.yml
│ ├── .gitignore
│ ├── .gitmodules
│ ├── .prettierignore
│ ├── .prettierrc
│ ├── .prettierrc.js
│ ├── .solhint.json
│ ├── .solhintignore
│ ├── README.md
│ ├── external
│ │ ├── UniswapV2Factory.json
│ │ ├── UniswapV2Router02.json
│ │ └── WETH9.json
│ ├── foundry.toml
│ ├── lib
│ │ ├── forge-std
│ │ │ ├── .github
│ │ │ │ └── workflows
│ │ │ │ │ └── ci.yml
│ │ │ ├── .gitignore
│ │ │ ├── .gitmodules
│ │ │ ├── LICENSE-APACHE
│ │ │ ├── LICENSE-MIT
│ │ │ ├── README.md
│ │ │ ├── foundry.toml
│ │ │ ├── lib
│ │ │ │ └── ds-test
│ │ │ │ │ ├── .github
│ │ │ │ │ └── workflows
│ │ │ │ │ │ └── build.yml
│ │ │ │ │ ├── .gitignore
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── Makefile
│ │ │ │ │ ├── default.nix
│ │ │ │ │ ├── demo
│ │ │ │ │ └── demo.sol
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── src
│ │ │ │ │ ├── test.sol
│ │ │ │ │ └── test.t.sol
│ │ │ ├── package.json
│ │ │ ├── src
│ │ │ │ ├── Base.sol
│ │ │ │ ├── Script.sol
│ │ │ │ ├── StdAssertions.sol
│ │ │ │ ├── StdChains.sol
│ │ │ │ ├── StdCheats.sol
│ │ │ │ ├── StdError.sol
│ │ │ │ ├── StdInvariant.sol
│ │ │ │ ├── StdJson.sol
│ │ │ │ ├── StdMath.sol
│ │ │ │ ├── StdStorage.sol
│ │ │ │ ├── StdStyle.sol
│ │ │ │ ├── StdUtils.sol
│ │ │ │ ├── Test.sol
│ │ │ │ ├── Vm.sol
│ │ │ │ ├── console.sol
│ │ │ │ ├── console2.sol
│ │ │ │ └── interfaces
│ │ │ │ │ ├── IERC1155.sol
│ │ │ │ │ ├── IERC165.sol
│ │ │ │ │ ├── IERC20.sol
│ │ │ │ │ ├── IERC4626.sol
│ │ │ │ │ ├── IERC721.sol
│ │ │ │ │ └── IMulticall3.sol
│ │ │ └── test
│ │ │ │ ├── StdAssertions.t.sol
│ │ │ │ ├── StdChains.t.sol
│ │ │ │ ├── StdCheats.t.sol
│ │ │ │ ├── StdError.t.sol
│ │ │ │ ├── StdMath.t.sol
│ │ │ │ ├── StdStorage.t.sol
│ │ │ │ ├── StdStyle.t.sol
│ │ │ │ ├── StdUtils.t.sol
│ │ │ │ ├── compilation
│ │ │ │ ├── CompilationScript.sol
│ │ │ │ ├── CompilationScriptBase.sol
│ │ │ │ ├── CompilationTest.sol
│ │ │ │ └── CompilationTestBase.sol
│ │ │ │ └── fixtures
│ │ │ │ └── broadcast.log.json
│ │ ├── openzeppelin-contracts
│ │ │ ├── .changeset
│ │ │ │ └── config.json
│ │ │ ├── .codecov.yml
│ │ │ ├── .editorconfig
│ │ │ ├── .eslintrc
│ │ │ ├── .github
│ │ │ │ ├── ISSUE_TEMPLATE
│ │ │ │ │ ├── bug_report.md
│ │ │ │ │ ├── config.yml
│ │ │ │ │ └── feature_request.md
│ │ │ │ ├── PULL_REQUEST_TEMPLATE.md
│ │ │ │ ├── actions
│ │ │ │ │ ├── gas-compare
│ │ │ │ │ │ └── action.yml
│ │ │ │ │ ├── setup
│ │ │ │ │ │ └── action.yml
│ │ │ │ │ └── storage-layout
│ │ │ │ │ │ └── action.yml
│ │ │ │ └── workflows
│ │ │ │ │ ├── actionlint.yml
│ │ │ │ │ ├── changeset.yml
│ │ │ │ │ ├── checks.yml
│ │ │ │ │ ├── docs.yml
│ │ │ │ │ ├── formal-verification.yml
│ │ │ │ │ ├── release-cycle.yml
│ │ │ │ │ └── upgradeable.yml
│ │ │ ├── .gitignore
│ │ │ ├── .gitmodules
│ │ │ ├── .mocharc.js
│ │ │ ├── .prettierrc
│ │ │ ├── .solcover.js
│ │ │ ├── .solhint.json
│ │ │ ├── CHANGELOG.md
│ │ │ ├── CODE_OF_CONDUCT.md
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── GUIDELINES.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── RELEASING.md
│ │ │ ├── SECURITY.md
│ │ │ ├── audits
│ │ │ │ ├── 2017-03.md
│ │ │ │ ├── 2018-10.pdf
│ │ │ │ ├── 2022-10-Checkpoints.pdf
│ │ │ │ ├── 2022-10-ERC4626.pdf
│ │ │ │ ├── 2023-05-v4.9.pdf
│ │ │ │ └── README.md
│ │ │ ├── certora
│ │ │ │ ├── .gitignore
│ │ │ │ ├── Makefile
│ │ │ │ ├── README.md
│ │ │ │ ├── diff
│ │ │ │ │ └── token_ERC721_ERC721.sol.patch
│ │ │ │ ├── harnesses
│ │ │ │ │ ├── AccessControlDefaultAdminRulesHarness.sol
│ │ │ │ │ ├── AccessControlHarness.sol
│ │ │ │ │ ├── DoubleEndedQueueHarness.sol
│ │ │ │ │ ├── ERC20FlashMintHarness.sol
│ │ │ │ │ ├── ERC20PermitHarness.sol
│ │ │ │ │ ├── ERC20WrapperHarness.sol
│ │ │ │ │ ├── ERC3156FlashBorrowerHarness.sol
│ │ │ │ │ ├── ERC721Harness.sol
│ │ │ │ │ ├── ERC721ReceiverHarness.sol
│ │ │ │ │ ├── EnumerableMapHarness.sol
│ │ │ │ │ ├── EnumerableSetHarness.sol
│ │ │ │ │ ├── InitializableHarness.sol
│ │ │ │ │ ├── Ownable2StepHarness.sol
│ │ │ │ │ ├── OwnableHarness.sol
│ │ │ │ │ ├── PausableHarness.sol
│ │ │ │ │ └── TimelockControllerHarness.sol
│ │ │ │ ├── reports
│ │ │ │ │ ├── 2021-10.pdf
│ │ │ │ │ ├── 2022-03.pdf
│ │ │ │ │ └── 2022-05.pdf
│ │ │ │ ├── run.js
│ │ │ │ ├── specs.json
│ │ │ │ └── specs
│ │ │ │ │ ├── AccessControl.spec
│ │ │ │ │ ├── AccessControlDefaultAdminRules.spec
│ │ │ │ │ ├── DoubleEndedQueue.spec
│ │ │ │ │ ├── ERC20.spec
│ │ │ │ │ ├── ERC20FlashMint.spec
│ │ │ │ │ ├── ERC20Wrapper.spec
│ │ │ │ │ ├── ERC721.spec
│ │ │ │ │ ├── EnumerableMap.spec
│ │ │ │ │ ├── EnumerableSet.spec
│ │ │ │ │ ├── Initializable.spec
│ │ │ │ │ ├── Ownable.spec
│ │ │ │ │ ├── Ownable2Step.spec
│ │ │ │ │ ├── Pausable.spec
│ │ │ │ │ ├── TimelockController.spec
│ │ │ │ │ ├── helpers
│ │ │ │ │ └── helpers.spec
│ │ │ │ │ └── methods
│ │ │ │ │ ├── IAccessControl.spec
│ │ │ │ │ ├── IAccessControlDefaultAdminRules.spec
│ │ │ │ │ ├── IERC20.spec
│ │ │ │ │ ├── IERC2612.spec
│ │ │ │ │ ├── IERC3156.spec
│ │ │ │ │ ├── IERC5313.spec
│ │ │ │ │ ├── IERC721.spec
│ │ │ │ │ ├── IOwnable.spec
│ │ │ │ │ └── IOwnable2Step.spec
│ │ │ ├── contracts
│ │ │ │ ├── access
│ │ │ │ │ ├── AccessControl.sol
│ │ │ │ │ ├── AccessControlCrossChain.sol
│ │ │ │ │ ├── AccessControlDefaultAdminRules.sol
│ │ │ │ │ ├── AccessControlEnumerable.sol
│ │ │ │ │ ├── IAccessControl.sol
│ │ │ │ │ ├── IAccessControlDefaultAdminRules.sol
│ │ │ │ │ ├── IAccessControlEnumerable.sol
│ │ │ │ │ ├── Ownable.sol
│ │ │ │ │ ├── Ownable2Step.sol
│ │ │ │ │ └── README.adoc
│ │ │ │ ├── crosschain
│ │ │ │ │ ├── CrossChainEnabled.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ ├── amb
│ │ │ │ │ │ ├── CrossChainEnabledAMB.sol
│ │ │ │ │ │ └── LibAMB.sol
│ │ │ │ │ ├── arbitrum
│ │ │ │ │ │ ├── CrossChainEnabledArbitrumL1.sol
│ │ │ │ │ │ ├── CrossChainEnabledArbitrumL2.sol
│ │ │ │ │ │ ├── LibArbitrumL1.sol
│ │ │ │ │ │ └── LibArbitrumL2.sol
│ │ │ │ │ ├── errors.sol
│ │ │ │ │ ├── optimism
│ │ │ │ │ │ ├── CrossChainEnabledOptimism.sol
│ │ │ │ │ │ └── LibOptimism.sol
│ │ │ │ │ └── polygon
│ │ │ │ │ │ └── CrossChainEnabledPolygonChild.sol
│ │ │ │ ├── finance
│ │ │ │ │ ├── PaymentSplitter.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ └── VestingWallet.sol
│ │ │ │ ├── governance
│ │ │ │ │ ├── Governor.sol
│ │ │ │ │ ├── IGovernor.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ ├── TimelockController.sol
│ │ │ │ │ ├── compatibility
│ │ │ │ │ │ ├── GovernorCompatibilityBravo.sol
│ │ │ │ │ │ └── IGovernorCompatibilityBravo.sol
│ │ │ │ │ ├── extensions
│ │ │ │ │ │ ├── GovernorCountingSimple.sol
│ │ │ │ │ │ ├── GovernorPreventLateQuorum.sol
│ │ │ │ │ │ ├── GovernorProposalThreshold.sol
│ │ │ │ │ │ ├── GovernorSettings.sol
│ │ │ │ │ │ ├── GovernorTimelockCompound.sol
│ │ │ │ │ │ ├── GovernorTimelockControl.sol
│ │ │ │ │ │ ├── GovernorVotes.sol
│ │ │ │ │ │ ├── GovernorVotesComp.sol
│ │ │ │ │ │ ├── GovernorVotesQuorumFraction.sol
│ │ │ │ │ │ └── IGovernorTimelock.sol
│ │ │ │ │ └── utils
│ │ │ │ │ │ ├── IVotes.sol
│ │ │ │ │ │ └── Votes.sol
│ │ │ │ ├── interfaces
│ │ │ │ │ ├── IERC1155.sol
│ │ │ │ │ ├── IERC1155MetadataURI.sol
│ │ │ │ │ ├── IERC1155Receiver.sol
│ │ │ │ │ ├── IERC1271.sol
│ │ │ │ │ ├── IERC1363.sol
│ │ │ │ │ ├── IERC1363Receiver.sol
│ │ │ │ │ ├── IERC1363Spender.sol
│ │ │ │ │ ├── IERC165.sol
│ │ │ │ │ ├── IERC1820Implementer.sol
│ │ │ │ │ ├── IERC1820Registry.sol
│ │ │ │ │ ├── IERC1967.sol
│ │ │ │ │ ├── IERC20.sol
│ │ │ │ │ ├── IERC20Metadata.sol
│ │ │ │ │ ├── IERC2309.sol
│ │ │ │ │ ├── IERC2612.sol
│ │ │ │ │ ├── IERC2981.sol
│ │ │ │ │ ├── IERC3156.sol
│ │ │ │ │ ├── IERC3156FlashBorrower.sol
│ │ │ │ │ ├── IERC3156FlashLender.sol
│ │ │ │ │ ├── IERC4626.sol
│ │ │ │ │ ├── IERC4906.sol
│ │ │ │ │ ├── IERC5267.sol
│ │ │ │ │ ├── IERC5313.sol
│ │ │ │ │ ├── IERC5805.sol
│ │ │ │ │ ├── IERC6372.sol
│ │ │ │ │ ├── IERC721.sol
│ │ │ │ │ ├── IERC721Enumerable.sol
│ │ │ │ │ ├── IERC721Metadata.sol
│ │ │ │ │ ├── IERC721Receiver.sol
│ │ │ │ │ ├── IERC777.sol
│ │ │ │ │ ├── IERC777Recipient.sol
│ │ │ │ │ ├── IERC777Sender.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ ├── draft-IERC1822.sol
│ │ │ │ │ └── draft-IERC2612.sol
│ │ │ │ ├── metatx
│ │ │ │ │ ├── ERC2771Context.sol
│ │ │ │ │ ├── MinimalForwarder.sol
│ │ │ │ │ └── README.adoc
│ │ │ │ ├── mocks
│ │ │ │ │ ├── AccessControlCrossChainMock.sol
│ │ │ │ │ ├── ArraysMock.sol
│ │ │ │ │ ├── CallReceiverMock.sol
│ │ │ │ │ ├── ConditionalEscrowMock.sol
│ │ │ │ │ ├── ContextMock.sol
│ │ │ │ │ ├── DummyImplementation.sol
│ │ │ │ │ ├── EIP712Verifier.sol
│ │ │ │ │ ├── ERC1271WalletMock.sol
│ │ │ │ │ ├── ERC165
│ │ │ │ │ │ ├── ERC165MaliciousData.sol
│ │ │ │ │ │ ├── ERC165MissingData.sol
│ │ │ │ │ │ ├── ERC165NotSupported.sol
│ │ │ │ │ │ └── ERC165ReturnBomb.sol
│ │ │ │ │ ├── ERC20Mock.sol
│ │ │ │ │ ├── ERC20Reentrant.sol
│ │ │ │ │ ├── ERC2771ContextMock.sol
│ │ │ │ │ ├── ERC3156FlashBorrowerMock.sol
│ │ │ │ │ ├── ERC4626Mock.sol
│ │ │ │ │ ├── EtherReceiverMock.sol
│ │ │ │ │ ├── InitializableMock.sol
│ │ │ │ │ ├── MulticallTest.sol
│ │ │ │ │ ├── MultipleInheritanceInitializableMocks.sol
│ │ │ │ │ ├── PausableMock.sol
│ │ │ │ │ ├── PullPaymentMock.sol
│ │ │ │ │ ├── ReentrancyAttack.sol
│ │ │ │ │ ├── ReentrancyMock.sol
│ │ │ │ │ ├── RegressionImplementation.sol
│ │ │ │ │ ├── SafeMathMemoryCheck.sol
│ │ │ │ │ ├── SingleInheritanceInitializableMocks.sol
│ │ │ │ │ ├── StorageSlotMock.sol
│ │ │ │ │ ├── TimelockReentrant.sol
│ │ │ │ │ ├── TimersBlockNumberImpl.sol
│ │ │ │ │ ├── TimersTimestampImpl.sol
│ │ │ │ │ ├── VotesMock.sol
│ │ │ │ │ ├── compound
│ │ │ │ │ │ └── CompTimelock.sol
│ │ │ │ │ ├── crosschain
│ │ │ │ │ │ ├── bridges.sol
│ │ │ │ │ │ └── receivers.sol
│ │ │ │ │ ├── governance
│ │ │ │ │ │ ├── GovernorCompMock.sol
│ │ │ │ │ │ ├── GovernorCompatibilityBravoMock.sol
│ │ │ │ │ │ ├── GovernorMock.sol
│ │ │ │ │ │ ├── GovernorPreventLateQuorumMock.sol
│ │ │ │ │ │ ├── GovernorTimelockCompoundMock.sol
│ │ │ │ │ │ ├── GovernorTimelockControlMock.sol
│ │ │ │ │ │ ├── GovernorVoteMock.sol
│ │ │ │ │ │ └── GovernorWithParamsMock.sol
│ │ │ │ │ ├── proxy
│ │ │ │ │ │ ├── BadBeacon.sol
│ │ │ │ │ │ ├── ClashingImplementation.sol
│ │ │ │ │ │ ├── UUPSLegacy.sol
│ │ │ │ │ │ └── UUPSUpgradeableMock.sol
│ │ │ │ │ ├── token
│ │ │ │ │ │ ├── ERC1155ReceiverMock.sol
│ │ │ │ │ │ ├── ERC20DecimalsMock.sol
│ │ │ │ │ │ ├── ERC20ExcessDecimalsMock.sol
│ │ │ │ │ │ ├── ERC20FlashMintMock.sol
│ │ │ │ │ │ ├── ERC20ForceApproveMock.sol
│ │ │ │ │ │ ├── ERC20MulticallMock.sol
│ │ │ │ │ │ ├── ERC20NoReturnMock.sol
│ │ │ │ │ │ ├── ERC20PermitNoRevertMock.sol
│ │ │ │ │ │ ├── ERC20ReturnFalseMock.sol
│ │ │ │ │ │ ├── ERC20VotesLegacyMock.sol
│ │ │ │ │ │ ├── ERC4626OffsetMock.sol
│ │ │ │ │ │ ├── ERC4646FeesMock.sol
│ │ │ │ │ │ ├── ERC721ConsecutiveEnumerableMock.sol
│ │ │ │ │ │ ├── ERC721ConsecutiveMock.sol
│ │ │ │ │ │ ├── ERC721ReceiverMock.sol
│ │ │ │ │ │ ├── ERC721URIStorageMock.sol
│ │ │ │ │ │ ├── ERC777Mock.sol
│ │ │ │ │ │ ├── ERC777SenderRecipientMock.sol
│ │ │ │ │ │ └── VotesTimestamp.sol
│ │ │ │ │ └── wizard
│ │ │ │ │ │ ├── MyGovernor1.sol
│ │ │ │ │ │ ├── MyGovernor2.sol
│ │ │ │ │ │ └── MyGovernor3.sol
│ │ │ │ ├── package.json
│ │ │ │ ├── proxy
│ │ │ │ │ ├── Clones.sol
│ │ │ │ │ ├── ERC1967
│ │ │ │ │ │ ├── ERC1967Proxy.sol
│ │ │ │ │ │ └── ERC1967Upgrade.sol
│ │ │ │ │ ├── Proxy.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ ├── beacon
│ │ │ │ │ │ ├── BeaconProxy.sol
│ │ │ │ │ │ ├── IBeacon.sol
│ │ │ │ │ │ └── UpgradeableBeacon.sol
│ │ │ │ │ ├── transparent
│ │ │ │ │ │ ├── ProxyAdmin.sol
│ │ │ │ │ │ └── TransparentUpgradeableProxy.sol
│ │ │ │ │ └── utils
│ │ │ │ │ │ ├── Initializable.sol
│ │ │ │ │ │ └── UUPSUpgradeable.sol
│ │ │ │ ├── security
│ │ │ │ │ ├── Pausable.sol
│ │ │ │ │ ├── PullPayment.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ └── ReentrancyGuard.sol
│ │ │ │ ├── token
│ │ │ │ │ ├── ERC1155
│ │ │ │ │ │ ├── ERC1155.sol
│ │ │ │ │ │ ├── IERC1155.sol
│ │ │ │ │ │ ├── IERC1155Receiver.sol
│ │ │ │ │ │ ├── README.adoc
│ │ │ │ │ │ ├── extensions
│ │ │ │ │ │ │ ├── ERC1155Burnable.sol
│ │ │ │ │ │ │ ├── ERC1155Pausable.sol
│ │ │ │ │ │ │ ├── ERC1155Supply.sol
│ │ │ │ │ │ │ ├── ERC1155URIStorage.sol
│ │ │ │ │ │ │ └── IERC1155MetadataURI.sol
│ │ │ │ │ │ ├── presets
│ │ │ │ │ │ │ ├── ERC1155PresetMinterPauser.sol
│ │ │ │ │ │ │ └── README.md
│ │ │ │ │ │ └── utils
│ │ │ │ │ │ │ ├── ERC1155Holder.sol
│ │ │ │ │ │ │ └── ERC1155Receiver.sol
│ │ │ │ │ ├── ERC20
│ │ │ │ │ │ ├── ERC20.sol
│ │ │ │ │ │ ├── IERC20.sol
│ │ │ │ │ │ ├── README.adoc
│ │ │ │ │ │ ├── extensions
│ │ │ │ │ │ │ ├── ERC20Burnable.sol
│ │ │ │ │ │ │ ├── ERC20Capped.sol
│ │ │ │ │ │ │ ├── ERC20FlashMint.sol
│ │ │ │ │ │ │ ├── ERC20Pausable.sol
│ │ │ │ │ │ │ ├── ERC20Permit.sol
│ │ │ │ │ │ │ ├── ERC20Snapshot.sol
│ │ │ │ │ │ │ ├── ERC20Votes.sol
│ │ │ │ │ │ │ ├── ERC20VotesComp.sol
│ │ │ │ │ │ │ ├── ERC20Wrapper.sol
│ │ │ │ │ │ │ ├── ERC4626.sol
│ │ │ │ │ │ │ ├── IERC20Metadata.sol
│ │ │ │ │ │ │ ├── IERC20Permit.sol
│ │ │ │ │ │ │ ├── draft-ERC20Permit.sol
│ │ │ │ │ │ │ └── draft-IERC20Permit.sol
│ │ │ │ │ │ ├── presets
│ │ │ │ │ │ │ ├── ERC20PresetFixedSupply.sol
│ │ │ │ │ │ │ ├── ERC20PresetMinterPauser.sol
│ │ │ │ │ │ │ └── README.md
│ │ │ │ │ │ └── utils
│ │ │ │ │ │ │ ├── SafeERC20.sol
│ │ │ │ │ │ │ └── TokenTimelock.sol
│ │ │ │ │ ├── ERC721
│ │ │ │ │ │ ├── ERC721.sol
│ │ │ │ │ │ ├── IERC721.sol
│ │ │ │ │ │ ├── IERC721Receiver.sol
│ │ │ │ │ │ ├── README.adoc
│ │ │ │ │ │ ├── extensions
│ │ │ │ │ │ │ ├── ERC721Burnable.sol
│ │ │ │ │ │ │ ├── ERC721Consecutive.sol
│ │ │ │ │ │ │ ├── ERC721Enumerable.sol
│ │ │ │ │ │ │ ├── ERC721Pausable.sol
│ │ │ │ │ │ │ ├── ERC721Royalty.sol
│ │ │ │ │ │ │ ├── ERC721URIStorage.sol
│ │ │ │ │ │ │ ├── ERC721Votes.sol
│ │ │ │ │ │ │ ├── ERC721Wrapper.sol
│ │ │ │ │ │ │ ├── IERC721Enumerable.sol
│ │ │ │ │ │ │ ├── IERC721Metadata.sol
│ │ │ │ │ │ │ └── draft-ERC721Votes.sol
│ │ │ │ │ │ ├── presets
│ │ │ │ │ │ │ ├── ERC721PresetMinterPauserAutoId.sol
│ │ │ │ │ │ │ └── README.md
│ │ │ │ │ │ └── utils
│ │ │ │ │ │ │ └── ERC721Holder.sol
│ │ │ │ │ ├── ERC777
│ │ │ │ │ │ ├── ERC777.sol
│ │ │ │ │ │ ├── IERC777.sol
│ │ │ │ │ │ ├── IERC777Recipient.sol
│ │ │ │ │ │ ├── IERC777Sender.sol
│ │ │ │ │ │ ├── README.adoc
│ │ │ │ │ │ └── presets
│ │ │ │ │ │ │ └── ERC777PresetFixedSupply.sol
│ │ │ │ │ └── common
│ │ │ │ │ │ ├── ERC2981.sol
│ │ │ │ │ │ └── README.adoc
│ │ │ │ ├── utils
│ │ │ │ │ ├── Address.sol
│ │ │ │ │ ├── Arrays.sol
│ │ │ │ │ ├── Base64.sol
│ │ │ │ │ ├── Checkpoints.sol
│ │ │ │ │ ├── Context.sol
│ │ │ │ │ ├── Counters.sol
│ │ │ │ │ ├── Create2.sol
│ │ │ │ │ ├── Multicall.sol
│ │ │ │ │ ├── README.adoc
│ │ │ │ │ ├── ShortStrings.sol
│ │ │ │ │ ├── StorageSlot.sol
│ │ │ │ │ ├── Strings.sol
│ │ │ │ │ ├── Timers.sol
│ │ │ │ │ ├── cryptography
│ │ │ │ │ │ ├── ECDSA.sol
│ │ │ │ │ │ ├── EIP712.sol
│ │ │ │ │ │ ├── MerkleProof.sol
│ │ │ │ │ │ ├── SignatureChecker.sol
│ │ │ │ │ │ └── draft-EIP712.sol
│ │ │ │ │ ├── escrow
│ │ │ │ │ │ ├── ConditionalEscrow.sol
│ │ │ │ │ │ ├── Escrow.sol
│ │ │ │ │ │ └── RefundEscrow.sol
│ │ │ │ │ ├── introspection
│ │ │ │ │ │ ├── ERC165.sol
│ │ │ │ │ │ ├── ERC165Checker.sol
│ │ │ │ │ │ ├── ERC165Storage.sol
│ │ │ │ │ │ ├── ERC1820Implementer.sol
│ │ │ │ │ │ ├── IERC165.sol
│ │ │ │ │ │ ├── IERC1820Implementer.sol
│ │ │ │ │ │ └── IERC1820Registry.sol
│ │ │ │ │ ├── math
│ │ │ │ │ │ ├── Math.sol
│ │ │ │ │ │ ├── SafeCast.sol
│ │ │ │ │ │ ├── SafeMath.sol
│ │ │ │ │ │ ├── SignedMath.sol
│ │ │ │ │ │ └── SignedSafeMath.sol
│ │ │ │ │ └── structs
│ │ │ │ │ │ ├── BitMaps.sol
│ │ │ │ │ │ ├── DoubleEndedQueue.sol
│ │ │ │ │ │ ├── EnumerableMap.sol
│ │ │ │ │ │ └── EnumerableSet.sol
│ │ │ │ └── vendor
│ │ │ │ │ ├── amb
│ │ │ │ │ └── IAMB.sol
│ │ │ │ │ ├── arbitrum
│ │ │ │ │ ├── IArbSys.sol
│ │ │ │ │ ├── IBridge.sol
│ │ │ │ │ ├── IDelayedMessageProvider.sol
│ │ │ │ │ ├── IInbox.sol
│ │ │ │ │ └── IOutbox.sol
│ │ │ │ │ ├── compound
│ │ │ │ │ ├── ICompoundTimelock.sol
│ │ │ │ │ └── LICENSE
│ │ │ │ │ ├── optimism
│ │ │ │ │ ├── ICrossDomainMessenger.sol
│ │ │ │ │ └── LICENSE
│ │ │ │ │ └── polygon
│ │ │ │ │ └── IFxMessageProcessor.sol
│ │ │ ├── foundry.toml
│ │ │ ├── hardhat.config.js
│ │ │ ├── hardhat
│ │ │ │ ├── env-artifacts.js
│ │ │ │ ├── env-contract.js
│ │ │ │ ├── ignore-unreachable-warnings.js
│ │ │ │ ├── skip-foundry-tests.js
│ │ │ │ └── task-test-get-files.js
│ │ │ ├── lib
│ │ │ │ ├── erc4626-tests
│ │ │ │ │ ├── ERC4626.prop.sol
│ │ │ │ │ ├── ERC4626.test.sol
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ └── README.md
│ │ │ │ └── forge-std
│ │ │ │ │ ├── .github
│ │ │ │ │ └── workflows
│ │ │ │ │ │ └── ci.yml
│ │ │ │ │ ├── .gitignore
│ │ │ │ │ ├── .gitmodules
│ │ │ │ │ ├── LICENSE-APACHE
│ │ │ │ │ ├── LICENSE-MIT
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── foundry.toml
│ │ │ │ │ ├── lib
│ │ │ │ │ └── ds-test
│ │ │ │ │ │ ├── .github
│ │ │ │ │ │ └── workflows
│ │ │ │ │ │ │ └── build.yml
│ │ │ │ │ │ ├── .gitignore
│ │ │ │ │ │ ├── LICENSE
│ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ ├── default.nix
│ │ │ │ │ │ ├── demo
│ │ │ │ │ │ └── demo.sol
│ │ │ │ │ │ ├── package.json
│ │ │ │ │ │ └── src
│ │ │ │ │ │ ├── test.sol
│ │ │ │ │ │ └── test.t.sol
│ │ │ │ │ ├── package.json
│ │ │ │ │ ├── src
│ │ │ │ │ ├── Base.sol
│ │ │ │ │ ├── Script.sol
│ │ │ │ │ ├── StdAssertions.sol
│ │ │ │ │ ├── StdChains.sol
│ │ │ │ │ ├── StdCheats.sol
│ │ │ │ │ ├── StdError.sol
│ │ │ │ │ ├── StdInvariant.sol
│ │ │ │ │ ├── StdJson.sol
│ │ │ │ │ ├── StdMath.sol
│ │ │ │ │ ├── StdStorage.sol
│ │ │ │ │ ├── StdStyle.sol
│ │ │ │ │ ├── StdUtils.sol
│ │ │ │ │ ├── Test.sol
│ │ │ │ │ ├── Vm.sol
│ │ │ │ │ ├── console.sol
│ │ │ │ │ ├── console2.sol
│ │ │ │ │ └── interfaces
│ │ │ │ │ │ ├── IERC1155.sol
│ │ │ │ │ │ ├── IERC165.sol
│ │ │ │ │ │ ├── IERC20.sol
│ │ │ │ │ │ ├── IERC4626.sol
│ │ │ │ │ │ ├── IERC721.sol
│ │ │ │ │ │ └── IMulticall3.sol
│ │ │ │ │ └── test
│ │ │ │ │ ├── StdAssertions.t.sol
│ │ │ │ │ ├── StdChains.t.sol
│ │ │ │ │ ├── StdCheats.t.sol
│ │ │ │ │ ├── StdError.t.sol
│ │ │ │ │ ├── StdMath.t.sol
│ │ │ │ │ ├── StdStorage.t.sol
│ │ │ │ │ ├── StdStyle.t.sol
│ │ │ │ │ ├── StdUtils.t.sol
│ │ │ │ │ ├── compilation
│ │ │ │ │ ├── CompilationScript.sol
│ │ │ │ │ ├── CompilationScriptBase.sol
│ │ │ │ │ ├── CompilationTest.sol
│ │ │ │ │ └── CompilationTestBase.sol
│ │ │ │ │ └── fixtures
│ │ │ │ │ └── broadcast.log.json
│ │ │ ├── logo.svg
│ │ │ ├── netlify.toml
│ │ │ ├── package-lock.json
│ │ │ ├── package.json
│ │ │ ├── remappings.txt
│ │ │ ├── renovate.json
│ │ │ ├── requirements.txt
│ │ │ ├── scripts
│ │ │ │ ├── checks
│ │ │ │ │ ├── compare-layout.js
│ │ │ │ │ ├── compareGasReports.js
│ │ │ │ │ ├── extract-layout.js
│ │ │ │ │ ├── generation.sh
│ │ │ │ │ └── inheritance-ordering.js
│ │ │ │ ├── gen-nav.js
│ │ │ │ ├── generate
│ │ │ │ │ ├── format-lines.js
│ │ │ │ │ ├── run.js
│ │ │ │ │ └── templates
│ │ │ │ │ │ ├── Checkpoints.js
│ │ │ │ │ │ ├── Checkpoints.opts.js
│ │ │ │ │ │ ├── Checkpoints.t.js
│ │ │ │ │ │ ├── EnumerableMap.js
│ │ │ │ │ │ ├── EnumerableSet.js
│ │ │ │ │ │ ├── SafeCast.js
│ │ │ │ │ │ ├── StorageSlot.js
│ │ │ │ │ │ └── conversion.js
│ │ │ │ ├── git-user-config.sh
│ │ │ │ ├── helpers.js
│ │ │ │ ├── migrate-imports.js
│ │ │ │ ├── prepack.sh
│ │ │ │ ├── prepare-contracts-package.sh
│ │ │ │ ├── prepare-docs.sh
│ │ │ │ ├── prepare.sh
│ │ │ │ ├── release
│ │ │ │ │ ├── format-changelog.js
│ │ │ │ │ ├── synchronize-versions.js
│ │ │ │ │ ├── update-comment.js
│ │ │ │ │ ├── version.sh
│ │ │ │ │ └── workflow
│ │ │ │ │ │ ├── exit-prerelease.sh
│ │ │ │ │ │ ├── github-release.js
│ │ │ │ │ │ ├── integrity-check.sh
│ │ │ │ │ │ ├── pack.sh
│ │ │ │ │ │ ├── publish.sh
│ │ │ │ │ │ ├── rerun.js
│ │ │ │ │ │ ├── set-changesets-pr-title.js
│ │ │ │ │ │ ├── start.sh
│ │ │ │ │ │ └── state.js
│ │ │ │ ├── remove-ignored-artifacts.js
│ │ │ │ ├── update-docs-branch.js
│ │ │ │ └── upgradeable
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── patch-apply.sh
│ │ │ │ │ ├── patch-save.sh
│ │ │ │ │ ├── transpile-onto.sh
│ │ │ │ │ ├── transpile.sh
│ │ │ │ │ └── upgradeable.patch
│ │ │ ├── slither.config.json
│ │ │ └── test
│ │ │ │ ├── TESTING.md
│ │ │ │ ├── access
│ │ │ │ ├── AccessControl.behavior.js
│ │ │ │ ├── AccessControl.test.js
│ │ │ │ ├── AccessControlCrossChain.test.js
│ │ │ │ ├── AccessControlDefaultAdminRules.test.js
│ │ │ │ ├── AccessControlEnumerable.test.js
│ │ │ │ ├── Ownable.test.js
│ │ │ │ └── Ownable2Step.test.js
│ │ │ │ ├── crosschain
│ │ │ │ └── CrossChainEnabled.test.js
│ │ │ │ ├── finance
│ │ │ │ ├── PaymentSplitter.test.js
│ │ │ │ ├── VestingWallet.behavior.js
│ │ │ │ └── VestingWallet.test.js
│ │ │ │ ├── governance
│ │ │ │ ├── Governor.t.sol
│ │ │ │ ├── Governor.test.js
│ │ │ │ ├── TimelockController.test.js
│ │ │ │ ├── compatibility
│ │ │ │ │ └── GovernorCompatibilityBravo.test.js
│ │ │ │ ├── extensions
│ │ │ │ │ ├── GovernorComp.test.js
│ │ │ │ │ ├── GovernorERC721.test.js
│ │ │ │ │ ├── GovernorPreventLateQuorum.test.js
│ │ │ │ │ ├── GovernorTimelockCompound.test.js
│ │ │ │ │ ├── GovernorTimelockControl.test.js
│ │ │ │ │ ├── GovernorVotesQuorumFraction.test.js
│ │ │ │ │ └── GovernorWithParams.test.js
│ │ │ │ └── utils
│ │ │ │ │ ├── EIP6372.behavior.js
│ │ │ │ │ ├── Votes.behavior.js
│ │ │ │ │ └── Votes.test.js
│ │ │ │ ├── helpers
│ │ │ │ ├── chainid.js
│ │ │ │ ├── create2.js
│ │ │ │ ├── crosschain.js
│ │ │ │ ├── customError.js
│ │ │ │ ├── eip712.js
│ │ │ │ ├── enums.js
│ │ │ │ ├── erc1967.js
│ │ │ │ ├── governance.js
│ │ │ │ ├── map-values.js
│ │ │ │ ├── sign.js
│ │ │ │ ├── time.js
│ │ │ │ └── txpool.js
│ │ │ │ ├── metatx
│ │ │ │ ├── ERC2771Context.test.js
│ │ │ │ └── MinimalForwarder.test.js
│ │ │ │ ├── migrate-imports.test.js
│ │ │ │ ├── proxy
│ │ │ │ ├── Clones.behaviour.js
│ │ │ │ ├── Clones.test.js
│ │ │ │ ├── ERC1967
│ │ │ │ │ └── ERC1967Proxy.test.js
│ │ │ │ ├── Proxy.behaviour.js
│ │ │ │ ├── beacon
│ │ │ │ │ ├── BeaconProxy.test.js
│ │ │ │ │ └── UpgradeableBeacon.test.js
│ │ │ │ ├── transparent
│ │ │ │ │ ├── ProxyAdmin.test.js
│ │ │ │ │ ├── TransparentUpgradeableProxy.behaviour.js
│ │ │ │ │ └── TransparentUpgradeableProxy.test.js
│ │ │ │ └── utils
│ │ │ │ │ ├── Initializable.test.js
│ │ │ │ │ └── UUPSUpgradeable.test.js
│ │ │ │ ├── security
│ │ │ │ ├── Pausable.test.js
│ │ │ │ ├── PullPayment.test.js
│ │ │ │ └── ReentrancyGuard.test.js
│ │ │ │ ├── token
│ │ │ │ ├── ERC1155
│ │ │ │ │ ├── ERC1155.behavior.js
│ │ │ │ │ ├── ERC1155.test.js
│ │ │ │ │ ├── extensions
│ │ │ │ │ │ ├── ERC1155Burnable.test.js
│ │ │ │ │ │ ├── ERC1155Pausable.test.js
│ │ │ │ │ │ ├── ERC1155Supply.test.js
│ │ │ │ │ │ └── ERC1155URIStorage.test.js
│ │ │ │ │ ├── presets
│ │ │ │ │ │ └── ERC1155PresetMinterPauser.test.js
│ │ │ │ │ └── utils
│ │ │ │ │ │ └── ERC1155Holder.test.js
│ │ │ │ ├── ERC20
│ │ │ │ │ ├── ERC20.behavior.js
│ │ │ │ │ ├── ERC20.test.js
│ │ │ │ │ ├── extensions
│ │ │ │ │ │ ├── ERC20Burnable.behavior.js
│ │ │ │ │ │ ├── ERC20Burnable.test.js
│ │ │ │ │ │ ├── ERC20Capped.behavior.js
│ │ │ │ │ │ ├── ERC20Capped.test.js
│ │ │ │ │ │ ├── ERC20FlashMint.test.js
│ │ │ │ │ │ ├── ERC20Pausable.test.js
│ │ │ │ │ │ ├── ERC20Snapshot.test.js
│ │ │ │ │ │ ├── ERC20Votes.test.js
│ │ │ │ │ │ ├── ERC20VotesComp.test.js
│ │ │ │ │ │ ├── ERC20Wrapper.test.js
│ │ │ │ │ │ ├── ERC4626.t.sol
│ │ │ │ │ │ ├── ERC4626.test.js
│ │ │ │ │ │ └── draft-ERC20Permit.test.js
│ │ │ │ │ ├── presets
│ │ │ │ │ │ ├── ERC20PresetFixedSupply.test.js
│ │ │ │ │ │ └── ERC20PresetMinterPauser.test.js
│ │ │ │ │ └── utils
│ │ │ │ │ │ ├── SafeERC20.test.js
│ │ │ │ │ │ └── TokenTimelock.test.js
│ │ │ │ ├── ERC721
│ │ │ │ │ ├── ERC721.behavior.js
│ │ │ │ │ ├── ERC721.test.js
│ │ │ │ │ ├── ERC721Enumerable.test.js
│ │ │ │ │ ├── extensions
│ │ │ │ │ │ ├── ERC721Burnable.test.js
│ │ │ │ │ │ ├── ERC721Consecutive.t.sol
│ │ │ │ │ │ ├── ERC721Consecutive.test.js
│ │ │ │ │ │ ├── ERC721Pausable.test.js
│ │ │ │ │ │ ├── ERC721Royalty.test.js
│ │ │ │ │ │ ├── ERC721URIStorage.test.js
│ │ │ │ │ │ ├── ERC721Votes.test.js
│ │ │ │ │ │ └── ERC721Wrapper.test.js
│ │ │ │ │ ├── presets
│ │ │ │ │ │ └── ERC721PresetMinterPauserAutoId.test.js
│ │ │ │ │ └── utils
│ │ │ │ │ │ └── ERC721Holder.test.js
│ │ │ │ ├── ERC777
│ │ │ │ │ ├── ERC777.behavior.js
│ │ │ │ │ ├── ERC777.test.js
│ │ │ │ │ └── presets
│ │ │ │ │ │ └── ERC777PresetFixedSupply.test.js
│ │ │ │ └── common
│ │ │ │ │ └── ERC2981.behavior.js
│ │ │ │ └── utils
│ │ │ │ ├── Address.test.js
│ │ │ │ ├── Arrays.test.js
│ │ │ │ ├── Base64.test.js
│ │ │ │ ├── Checkpoints.t.sol
│ │ │ │ ├── Checkpoints.test.js
│ │ │ │ ├── Context.behavior.js
│ │ │ │ ├── Context.test.js
│ │ │ │ ├── Counters.test.js
│ │ │ │ ├── Create2.test.js
│ │ │ │ ├── Multicall.test.js
│ │ │ │ ├── ShortStrings.t.sol
│ │ │ │ ├── ShortStrings.test.js
│ │ │ │ ├── StorageSlot.test.js
│ │ │ │ ├── Strings.test.js
│ │ │ │ ├── TimersBlockNumberImpl.test.js
│ │ │ │ ├── TimersTimestamp.test.js
│ │ │ │ ├── cryptography
│ │ │ │ ├── ECDSA.test.js
│ │ │ │ ├── EIP712.test.js
│ │ │ │ ├── MerkleProof.test.js
│ │ │ │ └── SignatureChecker.test.js
│ │ │ │ ├── escrow
│ │ │ │ ├── ConditionalEscrow.test.js
│ │ │ │ ├── Escrow.behavior.js
│ │ │ │ ├── Escrow.test.js
│ │ │ │ └── RefundEscrow.test.js
│ │ │ │ ├── introspection
│ │ │ │ ├── ERC165.test.js
│ │ │ │ ├── ERC165Checker.test.js
│ │ │ │ ├── ERC165Storage.test.js
│ │ │ │ ├── ERC1820Implementer.test.js
│ │ │ │ └── SupportsInterface.behavior.js
│ │ │ │ ├── math
│ │ │ │ ├── Math.t.sol
│ │ │ │ ├── Math.test.js
│ │ │ │ ├── SafeCast.test.js
│ │ │ │ ├── SafeMath.test.js
│ │ │ │ ├── SignedMath.test.js
│ │ │ │ └── SignedSafeMath.test.js
│ │ │ │ └── structs
│ │ │ │ ├── BitMap.test.js
│ │ │ │ ├── DoubleEndedQueue.test.js
│ │ │ │ ├── EnumerableMap.behavior.js
│ │ │ │ ├── EnumerableMap.test.js
│ │ │ │ ├── EnumerableSet.behavior.js
│ │ │ │ └── EnumerableSet.test.js
│ │ ├── solady
│ │ │ ├── .gas-snapshot
│ │ │ ├── .github
│ │ │ │ ├── pull_request_template.md
│ │ │ │ └── workflows
│ │ │ │ │ └── ci.yml
│ │ │ ├── .gitignore
│ │ │ ├── .gitmodules
│ │ │ ├── LICENSE.txt
│ │ │ ├── README.md
│ │ │ ├── foundry.toml
│ │ │ ├── lib
│ │ │ │ └── solmate
│ │ │ │ │ ├── .gas-snapshot
│ │ │ │ │ ├── .gitattributes
│ │ │ │ │ ├── .github
│ │ │ │ │ ├── pull_request_template.md
│ │ │ │ │ └── workflows
│ │ │ │ │ │ └── tests.yml
│ │ │ │ │ ├── .gitignore
│ │ │ │ │ ├── .gitmodules
│ │ │ │ │ ├── .prettierignore
│ │ │ │ │ ├── .prettierrc
│ │ │ │ │ ├── LICENSE
│ │ │ │ │ ├── README.md
│ │ │ │ │ ├── audits
│ │ │ │ │ └── v6-Fixed-Point-Solutions.pdf
│ │ │ │ │ ├── foundry.toml
│ │ │ │ │ ├── lib
│ │ │ │ │ └── ds-test
│ │ │ │ │ │ ├── .gitignore
│ │ │ │ │ │ ├── LICENSE
│ │ │ │ │ │ ├── Makefile
│ │ │ │ │ │ ├── default.nix
│ │ │ │ │ │ ├── demo
│ │ │ │ │ │ └── demo.sol
│ │ │ │ │ │ └── src
│ │ │ │ │ │ └── test.sol
│ │ │ │ │ ├── package-lock.json
│ │ │ │ │ ├── package.json
│ │ │ │ │ └── src
│ │ │ │ │ ├── auth
│ │ │ │ │ ├── Auth.sol
│ │ │ │ │ ├── Owned.sol
│ │ │ │ │ └── authorities
│ │ │ │ │ │ ├── MultiRolesAuthority.sol
│ │ │ │ │ │ └── RolesAuthority.sol
│ │ │ │ │ ├── mixins
│ │ │ │ │ └── ERC4626.sol
│ │ │ │ │ ├── test
│ │ │ │ │ ├── Auth.t.sol
│ │ │ │ │ ├── Bytes32AddressLib.t.sol
│ │ │ │ │ ├── CREATE3.t.sol
│ │ │ │ │ ├── DSTestPlus.t.sol
│ │ │ │ │ ├── ERC1155.t.sol
│ │ │ │ │ ├── ERC20.t.sol
│ │ │ │ │ ├── ERC4626.t.sol
│ │ │ │ │ ├── ERC721.t.sol
│ │ │ │ │ ├── FixedPointMathLib.t.sol
│ │ │ │ │ ├── MultiRolesAuthority.t.sol
│ │ │ │ │ ├── Owned.t.sol
│ │ │ │ │ ├── ReentrancyGuard.t.sol
│ │ │ │ │ ├── RolesAuthority.t.sol
│ │ │ │ │ ├── SSTORE2.t.sol
│ │ │ │ │ ├── SafeCastLib.t.sol
│ │ │ │ │ ├── SafeTransferLib.t.sol
│ │ │ │ │ ├── WETH.t.sol
│ │ │ │ │ └── utils
│ │ │ │ │ │ ├── DSInvariantTest.sol
│ │ │ │ │ │ ├── DSTestPlus.sol
│ │ │ │ │ │ ├── Hevm.sol
│ │ │ │ │ │ ├── mocks
│ │ │ │ │ │ ├── MockAuthChild.sol
│ │ │ │ │ │ ├── MockAuthority.sol
│ │ │ │ │ │ ├── MockERC1155.sol
│ │ │ │ │ │ ├── MockERC20.sol
│ │ │ │ │ │ ├── MockERC4626.sol
│ │ │ │ │ │ ├── MockERC721.sol
│ │ │ │ │ │ └── MockOwned.sol
│ │ │ │ │ │ └── weird-tokens
│ │ │ │ │ │ ├── MissingReturnToken.sol
│ │ │ │ │ │ ├── ReturnsFalseToken.sol
│ │ │ │ │ │ ├── ReturnsGarbageToken.sol
│ │ │ │ │ │ ├── ReturnsTooLittleToken.sol
│ │ │ │ │ │ ├── ReturnsTooMuchToken.sol
│ │ │ │ │ │ ├── ReturnsTwoToken.sol
│ │ │ │ │ │ └── RevertingToken.sol
│ │ │ │ │ ├── tokens
│ │ │ │ │ ├── ERC1155.sol
│ │ │ │ │ ├── ERC20.sol
│ │ │ │ │ ├── ERC721.sol
│ │ │ │ │ └── WETH.sol
│ │ │ │ │ └── utils
│ │ │ │ │ ├── Bytes32AddressLib.sol
│ │ │ │ │ ├── CREATE3.sol
│ │ │ │ │ ├── FixedPointMathLib.sol
│ │ │ │ │ ├── ReentrancyGuard.sol
│ │ │ │ │ ├── SSTORE2.sol
│ │ │ │ │ ├── SafeCastLib.sol
│ │ │ │ │ └── SafeTransferLib.sol
│ │ │ ├── logo.svg
│ │ │ ├── package-lock.json
│ │ │ ├── package.json
│ │ │ ├── src
│ │ │ │ ├── Milady.sol
│ │ │ │ ├── auth
│ │ │ │ │ ├── Ownable.sol
│ │ │ │ │ └── OwnableRoles.sol
│ │ │ │ └── utils
│ │ │ │ │ ├── Base64.sol
│ │ │ │ │ ├── CREATE3.sol
│ │ │ │ │ ├── Clone.sol
│ │ │ │ │ ├── DateTimeLib.sol
│ │ │ │ │ ├── DynamicBufferLib.sol
│ │ │ │ │ ├── ECDSA.sol
│ │ │ │ │ ├── EIP712.sol
│ │ │ │ │ ├── FixedPointMathLib.sol
│ │ │ │ │ ├── LibBit.sol
│ │ │ │ │ ├── LibBitmap.sol
│ │ │ │ │ ├── LibClone.sol
│ │ │ │ │ ├── LibMap.sol
│ │ │ │ │ ├── LibPRNG.sol
│ │ │ │ │ ├── LibRLP.sol
│ │ │ │ │ ├── LibSort.sol
│ │ │ │ │ ├── LibString.sol
│ │ │ │ │ ├── MerkleProofLib.sol
│ │ │ │ │ ├── MinHeapLib.sol
│ │ │ │ │ ├── Multicallable.sol
│ │ │ │ │ ├── RedBlackTreeLib.sol
│ │ │ │ │ ├── SSTORE2.sol
│ │ │ │ │ ├── SafeCastLib.sol
│ │ │ │ │ ├── SafeTransferLib.sol
│ │ │ │ │ └── SignatureCheckerLib.sol
│ │ │ └── test
│ │ │ │ ├── Base64.t.sol
│ │ │ │ ├── CREATE3.t.sol
│ │ │ │ ├── DateTimeLib.t.sol
│ │ │ │ ├── DynamicBufferLib.t.sol
│ │ │ │ ├── ECDSA.t.sol
│ │ │ │ ├── EIP712.t.sol
│ │ │ │ ├── FixedPointMathLib.t.sol
│ │ │ │ ├── LibBit.t.sol
│ │ │ │ ├── LibBitmap.t.sol
│ │ │ │ ├── LibClone.t.sol
│ │ │ │ ├── LibMap.t.sol
│ │ │ │ ├── LibPRNG.t.sol
│ │ │ │ ├── LibRLP.t.sol
│ │ │ │ ├── LibSort.t.sol
│ │ │ │ ├── LibString.t.sol
│ │ │ │ ├── MerkleProofLib.t.sol
│ │ │ │ ├── MinHeapLib.t.sol
│ │ │ │ ├── Multicallable.t.sol
│ │ │ │ ├── OwnableRoles.t.sol
│ │ │ │ ├── RedBlackTree.t.sol
│ │ │ │ ├── SSTORE2.t.sol
│ │ │ │ ├── SafeCastLib.t.sol
│ │ │ │ ├── SafeTransferLib.t.sol
│ │ │ │ ├── SignatureCheckerLib.t.sol
│ │ │ │ └── utils
│ │ │ │ ├── TestPlus.sol
│ │ │ │ ├── forge-std
│ │ │ │ ├── Script.sol
│ │ │ │ ├── Test.sol
│ │ │ │ ├── Vm.sol
│ │ │ │ └── console.sol
│ │ │ │ ├── mocks
│ │ │ │ ├── MockAuthChild.sol
│ │ │ │ ├── MockEIP712.sol
│ │ │ │ ├── MockERC1271Malicious.sol
│ │ │ │ ├── MockERC1271Wallet.sol
│ │ │ │ ├── MockERC20.sol
│ │ │ │ ├── MockETHRecipient.sol
│ │ │ │ ├── MockMulticallable.sol
│ │ │ │ └── MockOwnableRoles.sol
│ │ │ │ └── weird-tokens
│ │ │ │ ├── MissingReturnToken.sol
│ │ │ │ ├── ReturnsFalseToken.sol
│ │ │ │ ├── ReturnsGarbageToken.sol
│ │ │ │ ├── ReturnsTooLittleToken.sol
│ │ │ │ ├── ReturnsTooMuchToken.sol
│ │ │ │ ├── ReturnsTwoToken.sol
│ │ │ │ └── RevertingToken.sol
│ │ └── solmate
│ │ │ ├── .gas-snapshot
│ │ │ ├── .gitattributes
│ │ │ ├── .github
│ │ │ ├── pull_request_template.md
│ │ │ └── workflows
│ │ │ │ └── tests.yml
│ │ │ ├── .gitignore
│ │ │ ├── .gitmodules
│ │ │ ├── .prettierignore
│ │ │ ├── .prettierrc
│ │ │ ├── .vscode
│ │ │ └── settings.json
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── audits
│ │ │ └── v6-Fixed-Point-Solutions.pdf
│ │ │ ├── foundry.toml
│ │ │ ├── lib
│ │ │ └── ds-test
│ │ │ │ ├── .gitignore
│ │ │ │ ├── LICENSE
│ │ │ │ ├── Makefile
│ │ │ │ ├── default.nix
│ │ │ │ ├── demo
│ │ │ │ └── demo.sol
│ │ │ │ ├── package.json
│ │ │ │ └── src
│ │ │ │ └── test.sol
│ │ │ ├── package-lock.json
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ ├── auth
│ │ │ ├── Auth.sol
│ │ │ ├── Owned.sol
│ │ │ └── authorities
│ │ │ │ ├── MultiRolesAuthority.sol
│ │ │ │ └── RolesAuthority.sol
│ │ │ ├── mixins
│ │ │ └── ERC4626.sol
│ │ │ ├── test
│ │ │ ├── Auth.t.sol
│ │ │ ├── Bytes32AddressLib.t.sol
│ │ │ ├── CREATE3.t.sol
│ │ │ ├── DSTestPlus.t.sol
│ │ │ ├── ERC1155.t.sol
│ │ │ ├── ERC20.t.sol
│ │ │ ├── ERC4626.t.sol
│ │ │ ├── ERC721.t.sol
│ │ │ ├── FixedPointMathLib.t.sol
│ │ │ ├── LibString.t.sol
│ │ │ ├── MerkleProofLib.t.sol
│ │ │ ├── MultiRolesAuthority.t.sol
│ │ │ ├── Owned.t.sol
│ │ │ ├── ReentrancyGuard.t.sol
│ │ │ ├── RolesAuthority.t.sol
│ │ │ ├── SSTORE2.t.sol
│ │ │ ├── SafeCastLib.t.sol
│ │ │ ├── SafeTransferLib.t.sol
│ │ │ ├── SignedWadMath.t.sol
│ │ │ ├── WETH.t.sol
│ │ │ └── utils
│ │ │ │ ├── DSInvariantTest.sol
│ │ │ │ ├── DSTestPlus.sol
│ │ │ │ ├── Hevm.sol
│ │ │ │ ├── mocks
│ │ │ │ ├── MockAuthChild.sol
│ │ │ │ ├── MockAuthority.sol
│ │ │ │ ├── MockERC1155.sol
│ │ │ │ ├── MockERC20.sol
│ │ │ │ ├── MockERC4626.sol
│ │ │ │ ├── MockERC721.sol
│ │ │ │ └── MockOwned.sol
│ │ │ │ └── weird-tokens
│ │ │ │ ├── MissingReturnToken.sol
│ │ │ │ ├── ReturnsFalseToken.sol
│ │ │ │ ├── ReturnsGarbageToken.sol
│ │ │ │ ├── ReturnsTooLittleToken.sol
│ │ │ │ ├── ReturnsTooMuchToken.sol
│ │ │ │ ├── ReturnsTwoToken.sol
│ │ │ │ └── RevertingToken.sol
│ │ │ ├── tokens
│ │ │ ├── ERC1155.sol
│ │ │ ├── ERC20.sol
│ │ │ ├── ERC721.sol
│ │ │ └── WETH.sol
│ │ │ └── utils
│ │ │ ├── Bytes32AddressLib.sol
│ │ │ ├── CREATE3.sol
│ │ │ ├── FixedPointMathLib.sol
│ │ │ ├── LibString.sol
│ │ │ ├── MerkleProofLib.sol
│ │ │ ├── ReentrancyGuard.sol
│ │ │ ├── SSTORE2.sol
│ │ │ ├── SafeCastLib.sol
│ │ │ ├── SafeTransferLib.sol
│ │ │ └── SignedWadMath.sol
│ ├── package.json
│ ├── remappings.txt
│ ├── src
│ │ ├── interfaces
│ │ │ ├── IERC20.sol
│ │ │ ├── IERC20Metadata.sol
│ │ │ └── IWETH.sol
│ │ ├── introspection
│ │ │ └── MemoryExpansionCost.sol
│ │ ├── ir-only
│ │ │ ├── ArrayCasts.sol
│ │ │ ├── ArrayHelpers.sol
│ │ │ ├── CalldataPointer.sol
│ │ │ ├── MemoryPointer.sol
│ │ │ ├── PointerLibraries.sol
│ │ │ └── ReturndataPointer.sol
│ │ ├── non-ir-only
│ │ │ └── tables
│ │ │ │ ├── FourByteLookupTable.sol
│ │ │ │ ├── JumpTable.sol
│ │ │ │ ├── OneByteLookupTable.sol
│ │ │ │ └── TwoByteLookupTable.sol
│ │ ├── test
│ │ │ ├── ForgeConstants.sol
│ │ │ ├── LogsContext.sol
│ │ │ ├── MemoryPointerAssertions.sol
│ │ │ ├── Prankster.sol
│ │ │ └── SendEth.sol
│ │ ├── types
│ │ │ ├── EnumerableSet.sol
│ │ │ └── SafeCastLib.sol
│ │ ├── uniswap
│ │ │ ├── PairAddress.sol
│ │ │ ├── UniswapConstants.sol
│ │ │ ├── UniswapV2Helper.sol
│ │ │ └── interfaces
│ │ │ │ ├── IUniswapV2Factory.sol
│ │ │ │ ├── IUniswapV2Pair.sol
│ │ │ │ └── IUniswapV2Router.sol
│ │ └── utils
│ │ │ ├── ErrorConstants.sol
│ │ │ └── Math.sol
│ ├── test
│ │ ├── helpers
│ │ │ └── BaseERC20Test.sol
│ │ ├── ir-only
│ │ │ └── ArrayHelpers.t.sol
│ │ ├── test
│ │ │ ├── LogsContext.t.sol
│ │ │ └── Prankster.t.sol
│ │ ├── types
│ │ │ ├── AddressSet.t.sol
│ │ │ ├── Bytes32Set.t.sol
│ │ │ ├── UintSet.t.sol
│ │ │ └── wrappers
│ │ │ │ ├── AddressSetHarness.sol
│ │ │ │ ├── Bytes32SetHarness.sol
│ │ │ │ └── UintSetHarness.sol
│ │ └── uniswap
│ │ │ ├── UniswapV2Helper.t.sol
│ │ │ └── helpers
│ │ │ ├── BasePairTest.sol
│ │ │ ├── MockUniswapV2Pair.sol
│ │ │ ├── ReferencePairAddress.sol
│ │ │ ├── ReferenceUniswapV2Helper.sol
│ │ │ ├── UniswapV2ContractsProvider.sol
│ │ │ └── UniswapV2HelperWrapper.sol
│ └── yarn.lock
├── solady
│ ├── .gas-snapshot
│ ├── .github
│ │ ├── pull_request_template.md
│ │ └── workflows
│ │ │ ├── ci-all-via-ir.yml
│ │ │ ├── ci-woke.yml
│ │ │ └── ci.yml
│ ├── .gitignore
│ ├── .gitmodules
│ ├── LICENSE.txt
│ ├── README.md
│ ├── audits
│ │ ├── ackee-blockchain-solady-report.pdf
│ │ ├── cantina-solady-report.pdf
│ │ └── shung-solady-erc721-audit.pdf
│ ├── ext
│ │ └── woke
│ │ │ ├── EIP712Mock.sol
│ │ │ ├── ERC1155Mock.sol
│ │ │ ├── ERC20Mock.sol
│ │ │ ├── ERC721Mock.sol
│ │ │ ├── MerkleProofMock.sol
│ │ │ ├── NoETHMock.sol
│ │ │ ├── SignatureCheckerMock.sol
│ │ │ ├── __init__.py
│ │ │ ├── test_eip712.py
│ │ │ ├── test_eip712_fuzz.py
│ │ │ ├── test_erc1155.py
│ │ │ ├── test_erc1155_fuzz.py
│ │ │ ├── test_erc20.py
│ │ │ ├── test_erc721_fuzz.py
│ │ │ ├── test_merkle_proof.py
│ │ │ ├── test_merkle_proof_fuzz.py
│ │ │ ├── test_signature_checker_fuzz.py
│ │ │ ├── utils.py
│ │ │ ├── weird
│ │ │ ├── Approval.sol
│ │ │ ├── ApprovalToZero.sol
│ │ │ ├── BlockList.sol
│ │ │ ├── Bytes32Metadata.sol
│ │ │ ├── DaiPermit.sol
│ │ │ ├── ERC20.sol
│ │ │ ├── HighDecimals.sol
│ │ │ ├── LowDecimals.sol
│ │ │ ├── MissingReturns.sol
│ │ │ ├── NoRevert.sol
│ │ │ ├── Pausable.sol
│ │ │ ├── Proxied.sol
│ │ │ ├── Reentrant.sol
│ │ │ ├── ReturnsFalse.sol
│ │ │ ├── RevertToZero.sol
│ │ │ ├── RevertZero.sol
│ │ │ ├── TransferFee.sol
│ │ │ ├── Uint96.sol
│ │ │ └── Upgradable.sol
│ │ │ ├── woke-via-ir.toml
│ │ │ └── woke.toml
│ ├── foundry.toml
│ ├── js
│ │ ├── solady.d.ts
│ │ ├── solady.js
│ │ └── solady.test.js
│ ├── lib
│ │ └── solmate
│ │ │ ├── .gas-snapshot
│ │ │ ├── .gitattributes
│ │ │ ├── .github
│ │ │ ├── pull_request_template.md
│ │ │ └── workflows
│ │ │ │ └── tests.yml
│ │ │ ├── .gitignore
│ │ │ ├── .gitmodules
│ │ │ ├── .prettierignore
│ │ │ ├── .prettierrc
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── audits
│ │ │ └── v6-Fixed-Point-Solutions.pdf
│ │ │ ├── foundry.toml
│ │ │ ├── lib
│ │ │ └── ds-test
│ │ │ │ ├── .gitignore
│ │ │ │ ├── LICENSE
│ │ │ │ ├── Makefile
│ │ │ │ ├── default.nix
│ │ │ │ ├── demo
│ │ │ │ └── demo.sol
│ │ │ │ └── src
│ │ │ │ └── test.sol
│ │ │ ├── package-lock.json
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ ├── auth
│ │ │ ├── Auth.sol
│ │ │ ├── Owned.sol
│ │ │ └── authorities
│ │ │ │ ├── MultiRolesAuthority.sol
│ │ │ │ └── RolesAuthority.sol
│ │ │ ├── mixins
│ │ │ └── ERC4626.sol
│ │ │ ├── test
│ │ │ ├── Auth.t.sol
│ │ │ ├── Bytes32AddressLib.t.sol
│ │ │ ├── CREATE3.t.sol
│ │ │ ├── DSTestPlus.t.sol
│ │ │ ├── ERC1155.t.sol
│ │ │ ├── ERC20.t.sol
│ │ │ ├── ERC4626.t.sol
│ │ │ ├── ERC721.t.sol
│ │ │ ├── FixedPointMathLib.t.sol
│ │ │ ├── MultiRolesAuthority.t.sol
│ │ │ ├── Owned.t.sol
│ │ │ ├── ReentrancyGuard.t.sol
│ │ │ ├── RolesAuthority.t.sol
│ │ │ ├── SSTORE2.t.sol
│ │ │ ├── SafeCastLib.t.sol
│ │ │ ├── SafeTransferLib.t.sol
│ │ │ ├── WETH.t.sol
│ │ │ └── utils
│ │ │ │ ├── DSInvariantTest.sol
│ │ │ │ ├── DSTestPlus.sol
│ │ │ │ ├── Hevm.sol
│ │ │ │ ├── mocks
│ │ │ │ ├── MockAuthChild.sol
│ │ │ │ ├── MockAuthority.sol
│ │ │ │ ├── MockERC1155.sol
│ │ │ │ ├── MockERC20.sol
│ │ │ │ ├── MockERC4626.sol
│ │ │ │ ├── MockERC721.sol
│ │ │ │ └── MockOwned.sol
│ │ │ │ └── weird-tokens
│ │ │ │ ├── MissingReturnToken.sol
│ │ │ │ ├── ReturnsFalseToken.sol
│ │ │ │ ├── ReturnsGarbageToken.sol
│ │ │ │ ├── ReturnsTooLittleToken.sol
│ │ │ │ ├── ReturnsTooMuchToken.sol
│ │ │ │ ├── ReturnsTwoToken.sol
│ │ │ │ └── RevertingToken.sol
│ │ │ ├── tokens
│ │ │ ├── ERC1155.sol
│ │ │ ├── ERC20.sol
│ │ │ ├── ERC721.sol
│ │ │ └── WETH.sol
│ │ │ └── utils
│ │ │ ├── Bytes32AddressLib.sol
│ │ │ ├── CREATE3.sol
│ │ │ ├── FixedPointMathLib.sol
│ │ │ ├── ReentrancyGuard.sol
│ │ │ ├── SSTORE2.sol
│ │ │ ├── SafeCastLib.sol
│ │ │ └── SafeTransferLib.sol
│ ├── logo.svg
│ ├── package-lock.json
│ ├── package.json
│ ├── src
│ │ ├── Milady.sol
│ │ ├── auth
│ │ │ ├── Ownable.sol
│ │ │ └── OwnableRoles.sol
│ │ ├── tokens
│ │ │ ├── ERC1155.sol
│ │ │ ├── ERC20.sol
│ │ │ ├── ERC2981.sol
│ │ │ ├── ERC4626.sol
│ │ │ ├── ERC6909.sol
│ │ │ ├── ERC721.sol
│ │ │ └── WETH.sol
│ │ └── utils
│ │ │ ├── Base64.sol
│ │ │ ├── CREATE3.sol
│ │ │ ├── Clone.sol
│ │ │ ├── DateTimeLib.sol
│ │ │ ├── DynamicBufferLib.sol
│ │ │ ├── ECDSA.sol
│ │ │ ├── EIP712.sol
│ │ │ ├── ERC1967Factory.sol
│ │ │ ├── ERC1967FactoryConstants.sol
│ │ │ ├── FixedPointMathLib.sol
│ │ │ ├── JSONParserLib.sol
│ │ │ ├── LibBit.sol
│ │ │ ├── LibBitmap.sol
│ │ │ ├── LibClone.sol
│ │ │ ├── LibMap.sol
│ │ │ ├── LibPRNG.sol
│ │ │ ├── LibRLP.sol
│ │ │ ├── LibSort.sol
│ │ │ ├── LibString.sol
│ │ │ ├── LibZip.sol
│ │ │ ├── MerkleProofLib.sol
│ │ │ ├── MetadataReaderLib.sol
│ │ │ ├── MinHeapLib.sol
│ │ │ ├── Multicallable.sol
│ │ │ ├── RedBlackTreeLib.sol
│ │ │ ├── SSTORE2.sol
│ │ │ ├── SafeCastLib.sol
│ │ │ ├── SafeTransferLib.sol
│ │ │ └── SignatureCheckerLib.sol
│ └── test
│ │ ├── Base64.t.sol
│ │ ├── CREATE3.t.sol
│ │ ├── DateTimeLib.t.sol
│ │ ├── DynamicBufferLib.t.sol
│ │ ├── ECDSA.t.sol
│ │ ├── EIP712.t.sol
│ │ ├── ERC1155.t.sol
│ │ ├── ERC1967Factory.t.sol
│ │ ├── ERC20.t.sol
│ │ ├── ERC2981.t.sol
│ │ ├── ERC4626.t.sol
│ │ ├── ERC6909.t.sol
│ │ ├── ERC721.t.sol
│ │ ├── FixedPointMathLib.t.sol
│ │ ├── JSONParserLib.t.sol
│ │ ├── LibBit.t.sol
│ │ ├── LibBitmap.t.sol
│ │ ├── LibClone.t.sol
│ │ ├── LibMap.t.sol
│ │ ├── LibPRNG.t.sol
│ │ ├── LibRLP.t.sol
│ │ ├── LibSort.t.sol
│ │ ├── LibString.t.sol
│ │ ├── LibZip.t.sol
│ │ ├── MerkleProofLib.t.sol
│ │ ├── MetadataReaderLib.t.sol
│ │ ├── MinHeapLib.t.sol
│ │ ├── Multicallable.t.sol
│ │ ├── Ownable.t.sol
│ │ ├── OwnableRoles.t.sol
│ │ ├── README.md
│ │ ├── RedBlackTree.t.sol
│ │ ├── SSTORE2.t.sol
│ │ ├── SafeCastLib.t.sol
│ │ ├── SafeTransferLib.t.sol
│ │ ├── SignatureCheckerLib.t.sol
│ │ ├── WETH.t.sol
│ │ └── utils
│ │ ├── InvariantTest.sol
│ │ ├── SoladyTest.sol
│ │ ├── TestPlus.sol
│ │ ├── forge-std
│ │ ├── Script.sol
│ │ ├── Test.sol
│ │ ├── Vm.sol
│ │ └── console.sol
│ │ ├── mocks
│ │ ├── MockCd.sol
│ │ ├── MockEIP712.sol
│ │ ├── MockEIP712Dynamic.sol
│ │ ├── MockERC1155.sol
│ │ ├── MockERC1271Malicious.sol
│ │ ├── MockERC1271Wallet.sol
│ │ ├── MockERC20.sol
│ │ ├── MockERC20LikeUSDT.sol
│ │ ├── MockERC2981.sol
│ │ ├── MockERC4626.sol
│ │ ├── MockERC6909.sol
│ │ ├── MockERC721.sol
│ │ ├── MockETHRecipient.sol
│ │ ├── MockImplementation.sol
│ │ ├── MockMulticallable.sol
│ │ ├── MockOwnable.sol
│ │ └── MockOwnableRoles.sol
│ │ └── weird-tokens
│ │ ├── MissingReturnToken.sol
│ │ ├── ReturnsFalseToken.sol
│ │ ├── ReturnsRawBytesToken.sol
│ │ ├── ReturnsTooLittleToken.sol
│ │ ├── ReturnsTooMuchToken.sol
│ │ ├── ReturnsTwoToken.sol
│ │ └── RevertingToken.sol
└── solmate
│ ├── .gas-snapshot
│ ├── .gitattributes
│ ├── .github
│ ├── pull_request_template.md
│ └── workflows
│ │ └── tests.yml
│ ├── .gitignore
│ ├── .gitmodules
│ ├── .prettierignore
│ ├── .prettierrc
│ ├── .vscode
│ └── settings.json
│ ├── LICENSE
│ ├── README.md
│ ├── audits
│ └── v6-Fixed-Point-Solutions.pdf
│ ├── foundry.toml
│ ├── lib
│ └── ds-test
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── default.nix
│ │ ├── demo
│ │ └── demo.sol
│ │ ├── package.json
│ │ └── src
│ │ └── test.sol
│ ├── package-lock.json
│ ├── package.json
│ └── src
│ ├── auth
│ ├── Auth.sol
│ ├── Owned.sol
│ └── authorities
│ │ ├── MultiRolesAuthority.sol
│ │ └── RolesAuthority.sol
│ ├── mixins
│ └── ERC4626.sol
│ ├── test
│ ├── Auth.t.sol
│ ├── Bytes32AddressLib.t.sol
│ ├── CREATE3.t.sol
│ ├── DSTestPlus.t.sol
│ ├── ERC1155.t.sol
│ ├── ERC20.t.sol
│ ├── ERC4626.t.sol
│ ├── ERC721.t.sol
│ ├── FixedPointMathLib.t.sol
│ ├── LibString.t.sol
│ ├── MerkleProofLib.t.sol
│ ├── MultiRolesAuthority.t.sol
│ ├── Owned.t.sol
│ ├── ReentrancyGuard.t.sol
│ ├── RolesAuthority.t.sol
│ ├── SSTORE2.t.sol
│ ├── SafeCastLib.t.sol
│ ├── SafeTransferLib.t.sol
│ ├── SignedWadMath.t.sol
│ ├── WETH.t.sol
│ └── utils
│ │ ├── DSInvariantTest.sol
│ │ ├── DSTestPlus.sol
│ │ ├── Hevm.sol
│ │ ├── mocks
│ │ ├── MockAuthChild.sol
│ │ ├── MockAuthority.sol
│ │ ├── MockERC1155.sol
│ │ ├── MockERC20.sol
│ │ ├── MockERC4626.sol
│ │ ├── MockERC721.sol
│ │ └── MockOwned.sol
│ │ └── weird-tokens
│ │ ├── MissingReturnToken.sol
│ │ ├── ReturnsFalseToken.sol
│ │ ├── ReturnsGarbageToken.sol
│ │ ├── ReturnsTooLittleToken.sol
│ │ ├── ReturnsTooMuchToken.sol
│ │ ├── ReturnsTwoToken.sol
│ │ └── RevertingToken.sol
│ ├── tokens
│ ├── ERC1155.sol
│ ├── ERC20.sol
│ ├── ERC721.sol
│ └── WETH.sol
│ └── utils
│ ├── Bytes32AddressLib.sol
│ ├── CREATE3.sol
│ ├── FixedPointMathLib.sol
│ ├── LibString.sol
│ ├── MerkleProofLib.sol
│ ├── ReentrancyGuard.sol
│ ├── SSTORE2.sol
│ ├── SafeCastLib.sol
│ ├── SafeTransferLib.sol
│ └── SignedWadMath.sol
├── package.json
├── remappings.txt
├── scope.txt
├── scripts
└── plot_metrics.ts
├── src
├── ReentrancyGuard.sol
├── WildcatArchController.sol
├── WildcatMarketController.sol
├── WildcatMarketControllerFactory.sol
├── WildcatSanctionsEscrow.sol
├── WildcatSanctionsSentinel.sol
├── interfaces
│ ├── IChainalysisSanctionsList.sol
│ ├── IERC20.sol
│ ├── IERC20Metadata.sol
│ ├── IMarketEventsAndErrors.sol
│ ├── IWildcatArchController.sol
│ ├── IWildcatMarketController.sol
│ ├── IWildcatMarketControllerEventsAndErrors.sol
│ ├── IWildcatMarketControllerFactory.sol
│ ├── IWildcatSanctionsEscrow.sol
│ ├── IWildcatSanctionsSentinel.sol
│ └── WildcatStructsAndEnums.sol
├── libraries
│ ├── BoolUtils.sol
│ ├── Chainalysis.sol
│ ├── Errors.sol
│ ├── FIFOQueue.sol
│ ├── FeeMath.sol
│ ├── LibStoredInitCode.sol
│ ├── MarketState.sol
│ ├── MathUtils.sol
│ ├── SafeCastLib.sol
│ ├── StringQuery.sol
│ └── Withdrawal.sol
└── market
│ ├── WildcatMarket.sol
│ ├── WildcatMarketBase.sol
│ ├── WildcatMarketConfig.sol
│ ├── WildcatMarketToken.sol
│ └── WildcatMarketWithdrawals.sol
├── test
├── BaseMarketTest.sol
├── EscrowTest.sol
├── InvariantTests.sol
├── LogTest.sol
├── SentinelTest.sol
├── WildcatArchController.t.sol
├── WildcatMarketController.t.sol
├── WildcatMarketControllerFactory.t.sol
├── handlers
│ ├── BaseHandler.sol
│ └── ERC20Handler.sol
├── helpers
│ ├── AddressSet.sol
│ ├── Assertions.sol
│ ├── BaseERC20Test.sol
│ ├── ExpectedBalances.sol
│ ├── ExpectedStateTracker.sol
│ ├── Labeler.sol
│ ├── Metrics.sol
│ ├── MockChainalysis.sol
│ ├── MockController.sol
│ ├── MockControllerFactory.sol
│ ├── MockERC20.sol
│ ├── MockSanctionsSentinel.sol
│ └── VmUtils.sol
├── libraries
│ ├── FIFOQueue.t.sol
│ ├── FeeMath.t.sol
│ ├── LibStoredInitCode.t.sol
│ ├── MathUtils.t.sol
│ ├── SafeCastLib.t.sol
│ ├── StringQuery.t.sol
│ ├── VaultState.t.sol
│ ├── Withdrawal.t.sol
│ └── wrappers
│ │ ├── FIFOQueueLibExternal.sol
│ │ ├── FeeMathExternal.sol
│ │ ├── LibStoredInitCodeExternal.sol
│ │ ├── MarketStateLibExternal.sol
│ │ ├── MathUtilsExternal.sol
│ │ ├── SafeCastLibExternal.sol
│ │ └── WithdrawalLibExternal.sol
├── market
│ ├── WildcatMarket.t.sol
│ ├── WildcatMarketBase.t.sol
│ ├── WildcatMarketConfig.t.sol
│ ├── WildcatMarketToken.t.sol
│ └── WildcatMarketWithdrawals.t.sol
└── shared
│ ├── BaseTest.sol
│ ├── FuzzInputs.sol
│ ├── Test.sol
│ └── TestConstants.sol
├── tsconfig.json
└── yarn.lock
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/.DS_Store
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/01bc15fca097d7ebd27815146d19cad0-EDCFF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/01bc15fca097d7ebd27815146d19cad0-EDCFF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/01fe66bc1531b9b6fdd9f09f90bcbd2e-502DF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/01fe66bc1531b9b6fdd9f09f90bcbd2e-502DF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/025a312229f81f0132287a07237573a4-15005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/025a312229f81f0132287a07237573a4-15005.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0476f86bd02b37a62ebfd7c92177337c-83072.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0476f86bd02b37a62ebfd7c92177337c-83072.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/049983139ea262a4e388c5132423e557-7C91D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/049983139ea262a4e388c5132423e557-7C91D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/05d0501f278247d31dc24aab71d597d5-F7D75.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/05d0501f278247d31dc24aab71d597d5-F7D75.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/06007823cf9ba08c135053b30354a9c1-C25F2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/06007823cf9ba08c135053b30354a9c1-C25F2.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/08a051c6ef73c89fd5967637cbbb4acd-9A9A6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/08a051c6ef73c89fd5967637cbbb4acd-9A9A6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0ae311857ca5610dd4e8476c7100f7bd-A60D6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0ae311857ca5610dd4e8476c7100f7bd-A60D6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0b57a4cd1eac7593076c69120770f939-ED546.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0b57a4cd1eac7593076c69120770f939-ED546.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0c7b6a3f6c588019cf1ee9a24a9e9c45-808EC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0c7b6a3f6c588019cf1ee9a24a9e9c45-808EC.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0c8e9b652a07346bede9f2908c1284cf-338CD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0c8e9b652a07346bede9f2908c1284cf-338CD.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0cb8eb26d3020c1f114848c9b939485a-DE601.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/0cb8eb26d3020c1f114848c9b939485a-DE601.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1-B2132.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1-B2132.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1027315829559267418-BAAAC.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1027315829559267418-BAAAC.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1059580261278437427-A8825.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1059580261278437427-A8825.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1059580451800494151-15055.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1059580451800494151-15055.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1072161465827610706-C0EE3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1072161465827610706-C0EE3.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1078643963902300188-F9EC8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1078643963902300188-F9EC8.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1078643990720679987-79053.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1078643990720679987-79053.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1083067870231150753-8D7D1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1083067870231150753-8D7D1.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1083068685914214490-81D5F.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1083068685914214490-81D5F.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1083068770823721071-EE4F6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1083068770823721071-EE4F6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/108db4db43a8df92fb224ce27c8419ec-5A94A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/108db4db43a8df92fb224ce27c8419ec-5A94A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1116051479728509000-C3981.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1116051479728509000-C3981.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1151912105633652846-041BB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1151912105633652846-041BB.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1628fc11e7961d85181295493426b775-7E20F.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1628fc11e7961d85181295493426b775-7E20F.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/193e9e307ce19973be344f727859ce00-C1D87.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/193e9e307ce19973be344f727859ce00-C1D87.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1ab551dd1fb9fdf9a05600a122a20370-4C661.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1ab551dd1fb9fdf9a05600a122a20370-4C661.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1d3ee8a85bdb38661da993daa0743a92-03106.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1d3ee8a85bdb38661da993daa0743a92-03106.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1f3fb-E58B7.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1f7df9547fbc24ce0cab6e2da89f7f0d-99E3B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/1f7df9547fbc24ce0cab6e2da89f7f0d-99E3B.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2-ADBB4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2-ADBB4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2023-10-21_13.22.51-783B8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2023-10-21_13.22.51-783B8.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2023-10-21_13.23.07-48AF8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2023-10-21_13.23.07-48AF8.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/20c8931564dd11b412a4fecc64bf9451-94627.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/20c8931564dd11b412a4fecc64bf9451-94627.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/250ab6d8024fd889b64e57da579af3ef-988E0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/250ab6d8024fd889b64e57da579af3ef-988E0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/258a1ffc46d9e9c3872ad643ab9b4bd5-EE2DC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/258a1ffc46d9e9c3872ad643ab9b4bd5-EE2DC.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2700c825a6e573ac1f5be12f5acfdc7e-33549.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2700c825a6e573ac1f5be12f5acfdc7e-33549.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2795-3358E.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2a9faff195fe333526cfe6ae6fce1420-49B98.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2a9faff195fe333526cfe6ae6fce1420-49B98.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2de2bcb6fe2e5617e1d3dd4c56a5a8f1-DE975.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/2de2bcb6fe2e5617e1d3dd4c56a5a8f1-DE975.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/3-FB033.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/3-FB033.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/34e6bfee9fb587793cf81548262a0941-2A38B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/34e6bfee9fb587793cf81548262a0941-2A38B.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/366b7bd30566c2cb7cfbe6ce4a9cb61e-62DA9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/366b7bd30566c2cb7cfbe6ce4a9cb61e-62DA9.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/37254c70d1f43924aab295c5f32a33ab-FAE53.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/37254c70d1f43924aab295c5f32a33ab-FAE53.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/39282d8ddea867f6f6a97b406e1af646-07295.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/39282d8ddea867f6f6a97b406e1af646-07295.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/3b01c38b7c5b905fd8e8a1d72f7d7492-53427.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/3b01c38b7c5b905fd8e8a1d72f7d7492-53427.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/3d2952ebffc60cbd6aea5a76c26f6001-27971.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/3d2952ebffc60cbd6aea5a76c26f6001-27971.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/4-4551A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/4-4551A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/40faf496db7b4bbcab37bc04b134567d-EFC50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/40faf496db7b4bbcab37bc04b134567d-EFC50.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/453eac052c6c6b7a61d2f55848c5bdc6-FCF15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/453eac052c6c6b7a61d2f55848c5bdc6-FCF15.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/48e19f99f953283d153e82401ad7ffd4-A53E2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/48e19f99f953283d153e82401ad7ffd4-A53E2.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/492fcf2c1088e22bbbcab07a754eab58-53405.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/492fcf2c1088e22bbbcab07a754eab58-53405.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/4de0a7f237fde45d02ba1266af3cbf19-81483.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/4de0a7f237fde45d02ba1266af3cbf19-81483.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5-E9BDB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5-E9BDB.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/50bd8deba6527b5c796a9b33197754dc-A7667.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/50bd8deba6527b5c796a9b33197754dc-A7667.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/530205382832816128-7F24C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/530205382832816128-7F24C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5445ffd7ffb201a98393cbdf684ea4b1-62923.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5445ffd7ffb201a98393cbdf684ea4b1-62923.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5445ffd7ffb201a98393cbdf684ea4b1-FF0A0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5445ffd7ffb201a98393cbdf684ea4b1-FF0A0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/55b9ac870fd4a1b4fc5a8c0550c27aa4-D1820.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/55b9ac870fd4a1b4fc5a8c0550c27aa4-D1820.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/585724566404595713-733A4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/585724566404595713-733A4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/588197188199252006-F53D1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/588197188199252006-F53D1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/588402940700524544-B3774.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/588402940700524544-B3774.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/59310062b6d5aa6af2d911cb4f109bc4-B8F92.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/59310062b6d5aa6af2d911cb4f109bc4-B8F92.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/599667a9bd34d1211af25019e6da7fa4-6667B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/599667a9bd34d1211af25019e6da7fa4-6667B.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5b1f70b548a2f47c51887cc1a5d2d154-94C7D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5b1f70b548a2f47c51887cc1a5d2d154-94C7D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5b71d15a9bcde45fd5520e3fb580eb53-E1A50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5b71d15a9bcde45fd5520e3fb580eb53-E1A50.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5c5c77bb24f58eb99091a23905d985bf-A57AE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5c5c77bb24f58eb99091a23905d985bf-A57AE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5e3fb61df91ed29c573265a690af4600-E824E.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5e3fb61df91ed29c573265a690af4600-E824E.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5fd4eaf3a92a63920dfe6c4e8175c1df-7264A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/5fd4eaf3a92a63920dfe6c4e8175c1df-7264A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/601dd424a107137fca718792e11993e1-53812.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/601dd424a107137fca718792e11993e1-53812.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6094e48ab77eb87fae4e3348c0d872b4-34FEF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6094e48ab77eb87fae4e3348c0d872b4-34FEF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6519fe644ecf954cfdf81ad4c9fbaad9-B43F2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6519fe644ecf954cfdf81ad4c9fbaad9-B43F2.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/658597c1d2f027572784adf80b5c8db9-ED27A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/658597c1d2f027572784adf80b5c8db9-ED27A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/66c54ad6b6c2224e66ef8148ab5b7bcc-9BDF6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/66c54ad6b6c2224e66ef8148ab5b7bcc-9BDF6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/672859745593327616-3A03D.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/672859745593327616-3A03D.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/67594ee4b4d1fc03bca468327a0d145b-BD76A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/67594ee4b4d1fc03bca468327a0d145b-BD76A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/675b226a2239369c985cd538027c7c52-40875.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/675b226a2239369c985cd538027c7c52-40875.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/68d3387e-9a33-4b20-9c98-d2ab5df73670-5931D:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/68d3387e-9a33-4b20-9c98-d2ab5df73670-5931D
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6a567cbfd6039038b3e7fb3b7b3c7185-7C949.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6a567cbfd6039038b3e7fb3b7b3c7185-7C949.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6ad4ef2f519afddce2d78021aa7dd099-B55F0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6ad4ef2f519afddce2d78021aa7dd099-B55F0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6ff1e65c0976fd9df6010502da72f911-D2FA0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6ff1e65c0976fd9df6010502da72f911-D2FA0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6pe0lcSG28G9FkBQU0Cy-E606B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/6pe0lcSG28G9FkBQU0Cy-E606B.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/701300a5bdd3bf5640bd1370251533e2-0DC47.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/701300a5bdd3bf5640bd1370251533e2-0DC47.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/707068702994202754-CBC56.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/707068702994202754-CBC56.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/71c7e292d8486e69f2fb3e7d0570797e-0BCEE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/71c7e292d8486e69f2fb3e7d0570797e-0BCEE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/720250595503767564-3995B.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/720250595503767564-3995B.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/724751444313636934-706C0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/724751444313636934-706C0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/726348376664309801-CF03F.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/726348376664309801-CF03F.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/734438639685074944-76127.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/734438639685074944-76127.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/735761118139645982-C1AF1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/735761118139645982-C1AF1.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/741132551724204083-58D5D.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/741132551724204083-58D5D.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/754c60f4d2cd433f04b08f2e0b8aa798-E95F1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/754c60f4d2cd433f04b08f2e0b8aa798-E95F1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/763853149152215060-A4D38.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/763853149152215060-A4D38.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/78e7ed2ed9a6c35d6f8e3c9eea75a6c1-26779.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/78e7ed2ed9a6c35d6f8e3c9eea75a6c1-26779.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/791655412012679178-436FB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/791655412012679178-436FB.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/81c7e8bc06b476b6e9afec8631b5d5fc-7BC50.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/81c7e8bc06b476b6e9afec8631b5d5fc-7BC50.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/8230f476eec54d0f43d90d66df912139-9C1D4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/8230f476eec54d0f43d90d66df912139-9C1D4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/842859169144111145-D3BE0.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/842859169144111145-D3BE0.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893827027075142-F23DF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893827027075142-F23DF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893827089727568-5FD38.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893827089727568-5FD38.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893827315826708-F59C0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893827315826708-F59C0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893828280909886-FBF42.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/851893828280909886-FBF42.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/860bc8415fcb344bebcf89a301158ffd-36A89.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/860bc8415fcb344bebcf89a301158ffd-36A89.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/873266404026122250-B25E4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/873266404026122250-B25E4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/879837720816517151-1D599.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/879837720816517151-1D599.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/879838986892353597-E1A61.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/879838986892353597-E1A61.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/892726718916341780-2AFE1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/892726718916341780-2AFE1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/898957686689894410-1D576.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/898957686689894410-1D576.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/907209205130354738-901D2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/907209205130354738-901D2.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/918262047433691247-911FE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/918262047433691247-911FE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/932730055887564830-5CCFE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/932730055887564830-5CCFE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/944081698067451954-2550D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/944081698067451954-2550D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/970d2e2f00cd7ef2134a1a3f21326349-404EA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/970d2e2f00cd7ef2134a1a3f21326349-404EA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/973814813551644712-6A9AA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/973814813551644712-6A9AA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/977133623968927744-6F265.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/977133623968927744-6F265.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/977133670429261884-CA8EA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/977133670429261884-CA8EA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/97d0540d85f9bdeaf447a359aec7cd73-AE94E.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/97d0540d85f9bdeaf447a359aec7cd73-AE94E.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/985427438962098176-5075C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/985427438962098176-5075C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/9b01adfea5eb85ed7f3fc2c94c3592c8-E96F4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/9b01adfea5eb85ed7f3fc2c94c3592c8-E96F4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/9dd685e4f75747910caf04db886ca1da-BE4C8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/9dd685e4f75747910caf04db886ca1da-BE4C8.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/F77FpOMXsAAeMS9-AD1DB.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/F77FpOMXsAAeMS9-AD1DB.jpeg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/F80e-t7W8AAym8--86741.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/F80e-t7W8AAym8--86741.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/GettyImages-1246652809-9232cebf09384441913-6766C.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/GettyImages-1246652809-9232cebf09384441913-6766C.jpg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/I2kJoldVWRgopDbXfGCw-46455.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/I2kJoldVWRgopDbXfGCw-46455.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/IMG_7089-0B019.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/IMG_7089-0B019.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/QXJbrALWBfaNFQMwf6Dr-DFA18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/QXJbrALWBfaNFQMwf6Dr-DFA18.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_2023-10-17_at_23.17.36-4E0C3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_2023-10-17_at_23.17.36-4E0C3.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_2023-10-24_at_2.10.01_PM-1FEEA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_2023-10-24_at_2.10.01_PM-1FEEA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_20231023_204510_Discord-292B6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_20231023_204510_Discord-292B6.jpg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_from_2023-10-17_15-28-16-58755.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/Screenshot_from_2023-10-17_15-28-16-58755.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/a40f031c83391544973a1697defdfe72-CB4BB:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/a40f031c83391544973a1697defdfe72-CB4BB
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/a6662b109ac2b287a214bbbabbec79bf-FBD97.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/a6662b109ac2b287a214bbbabbec79bf-FBD97.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/a6700d776b9feae9a8825a05eb056151-9CE8A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/a6700d776b9feae9a8825a05eb056151-9CE8A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/adddc7313b30a4e8b5329894bf2034ab-5B4E5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/adddc7313b30a4e8b5329894bf2034ab-5B4E5.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/b0fa46fcf237f5497b71eea9d38eeeeb-2A6D7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/b0fa46fcf237f5497b71eea9d38eeeeb-2A6D7.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/b4d7a645168af7ded893be9676d772fb-AC409.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/b4d7a645168af7ded893be9676d772fb-AC409.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/b4fead77f737aa7840a25e1cd39eb062-CEDEC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/b4fead77f737aa7840a25e1cd39eb062-CEDEC.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/bb9f76664711c9b5009e7a6add580b29-7CFF5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/bb9f76664711c9b5009e7a6add580b29-7CFF5.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/bde0f06d784b12dd9afa577c138f0b20-06712.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/bde0f06d784b12dd9afa577c138f0b20-06712.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c17a40452a693c844a735296eb537722-6F036.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c17a40452a693c844a735296eb537722-6F036.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c4-og-banner-371EC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c4-og-banner-371EC.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c4-og-banner-9673D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c4-og-banner-9673D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c4-og-banner-E1BB1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c4-og-banner-E1BB1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c6b85a4a6ca07ab15a30a24f570be5b8-BB20A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c6b85a4a6ca07ab15a30a24f570be5b8-BB20A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c9e08f755ade8779aa47c47083ede0e7-B9071.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/c9e08f755ade8779aa47c47083ede0e7-B9071.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/cat-typing-2FC1A.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/cat-typing-2FC1A.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/cd524f78cb8a7426f6497d2a56aa3931-9BF2F.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/cd524f78cb8a7426f6497d2a56aa3931-9BF2F.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/cf5ff95c34041d7d559e8ba777b048e1-119CB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/cf5ff95c34041d7d559e8ba777b048e1-119CB.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/crazy-cat-A1078.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/crazy-cat-A1078.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d05992162b128265b0f4fd4543b46456-9F835.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d05992162b128265b0f4fd4543b46456-9F835.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d28fcb32fb4a0872e0cbaf200d440c26-CFD73.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d28fcb32fb4a0872e0cbaf200d440c26-CFD73.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d29b4cc25d15de371b9b3d5d0b8aaddb-E37A6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d29b4cc25d15de371b9b3d5d0b8aaddb-E37A6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d352b5d64239648acbeb7b6f310df0b8-E875A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d352b5d64239648acbeb7b6f310df0b8-E875A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d35a0c87f7f9f5e7c67430ca9593af01-64365.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d35a0c87f7f9f5e7c67430ca9593af01-64365.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d9fa0ae50d731854d342f81d679964af-D6B3D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/d9fa0ae50d731854d342f81d679964af-D6B3D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/db08fb4ba94bbdd851112702df5ef168-D2462.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/db08fb4ba94bbdd851112702df5ef168-D2462.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/dd0b02132544c612d48d10270e412d9b-9486F.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/dd0b02132544c612d48d10270e412d9b-9486F.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/e730c8116376f2c15513de956ddb5a90-CF1A5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/e730c8116376f2c15513de956ddb5a90-CF1A5.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/e9472a11f41d425badda92e53fc91864-F560D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/e9472a11f41d425badda92e53fc91864-F560D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/e99436ce7f263d3f7b6d999b8921abbf-BAFA9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/e99436ce7f263d3f7b6d999b8921abbf-BAFA9.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ec283548018391e9a25a61215bd46007-2D6CA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ec283548018391e9a25a61215bd46007-2D6CA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ec2bcb7830d93aed7b07ee0d3a51e605-19997.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ec2bcb7830d93aed7b07ee0d3a51e605-19997.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ee510353685e0ca17ca13b8d0ef6c94d-A6ACE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ee510353685e0ca17ca13b8d0ef6c94d-A6ACE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ee6c31750f46b7cd080ab8b84efae1c2-9E926.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ee6c31750f46b7cd080ab8b84efae1c2-9E926.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ee849af98966830b600b97aeff3121f0-82A29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ee849af98966830b600b97aeff3121f0-82A29.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/f4f73fc0c2e452cd53ec3b3138883251-C4CDF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/f4f73fc0c2e452cd53ec3b3138883251-C4CDF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/f5090e3d7603361e264e51d9b3397317-71F86.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/f5090e3d7603361e264e51d9b3397317-71F86.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-400-E988B.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-400-E988B.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-500-0777F.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-500-0777F.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-600-CB411.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-600-CB411.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-700-891AC.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-700-891AC.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-800-D36B0.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-italic-800-D36B0.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-400-1456D.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-400-1456D.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-500-89CE5.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-500-89CE5.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-600-C1EA8.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-600-C1EA8.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-700-1949A.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-700-1949A.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-800-58487.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/ggsans-normal-800-58487.woff2
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/huh-cat-huh-m4rtin-2B921.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/huh-cat-huh-m4rtin-2B921.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/i-dont-want-peace-i-want-problems-always-D4057.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/i-dont-want-peace-i-want-problems-always-D4057.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-02990.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-02990.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-039A4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-039A4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-423E0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-423E0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-479D1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-479D1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-48F46.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-48F46.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-4A4CE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-4A4CE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-4EE8E.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-4EE8E.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-5D8DE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-5D8DE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-68E31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-68E31.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-6B7A0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-6B7A0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-70628.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-70628.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-7522E.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-7522E.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-79285.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-79285.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-87F57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-87F57.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-93BFB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-93BFB.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-B327A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-B327A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-C98E6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-C98E6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-E703C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/image-E703C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/laurencefr-66699.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/laurencefr-66699.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/maxresdefault-9512C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/maxresdefault-9512C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/money-rich-0A4AA.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/money-rich-0A4AA.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/openzeppelin-contracts-CF48A:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/openzeppelin-contracts-CF48A
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/peace-was-never-an-option-chicken-AB839.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/peace-was-never-an-option-chicken-AB839.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/the-dark-knight-joker-432F5.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/the-dark-knight-joker-432F5.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/the-end-is-near-simpsons-DF38D.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/the-end-is-near-simpsons-DF38D.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/what-you-talking-about-cute-A4E77.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/what-you-talking-about-cute-A4E77.mp4
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/wildcat_flow-F3FE9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].html_Files/wildcat_flow-F3FE9.jpg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/2023-10-21_13.22.51-783B8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/2023-10-21_13.22.51-783B8.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/2023-10-21_13.23.07-48AF8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/2023-10-21_13.23.07-48AF8.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/68d3387e-9a33-4b20-9c98-d2ab5df73670-5931D:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/68d3387e-9a33-4b20-9c98-d2ab5df73670-5931D
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/6pe0lcSG28G9FkBQU0Cy-E606B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/6pe0lcSG28G9FkBQU0Cy-E606B.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/F77FpOMXsAAeMS9-AD1DB.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/F77FpOMXsAAeMS9-AD1DB.jpeg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/F80e-t7W8AAym8--86741.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/F80e-t7W8AAym8--86741.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/GettyImages-1246652809-9232cebf09384441913-6766C.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/GettyImages-1246652809-9232cebf09384441913-6766C.jpg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/I2kJoldVWRgopDbXfGCw-46455.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/I2kJoldVWRgopDbXfGCw-46455.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/IMG_7089-0B019.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/IMG_7089-0B019.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/QXJbrALWBfaNFQMwf6Dr-DFA18.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/QXJbrALWBfaNFQMwf6Dr-DFA18.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_2023-10-17_at_23.17.36-4E0C3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_2023-10-17_at_23.17.36-4E0C3.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_2023-10-24_at_2.10.01_PM-1FEEA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_2023-10-24_at_2.10.01_PM-1FEEA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_20231023_204510_Discord-292B6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_20231023_204510_Discord-292B6.jpg
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_from_2023-10-17_15-28-16-58755.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/Screenshot_from_2023-10-17_15-28-16-58755.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/a40f031c83391544973a1697defdfe72-CB4BB:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/a40f031c83391544973a1697defdfe72-CB4BB
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/c4-og-banner-371EC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/c4-og-banner-371EC.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/c4-og-banner-9673D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/c4-og-banner-9673D.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/c4-og-banner-E1BB1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/c4-og-banner-E1BB1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/cat-typing-4ADCA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/cat-typing-4ADCA.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/crazy-cat-A1078.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/crazy-cat-A1078.gif
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/huh-cat-huh-m4rtin-74E0C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/huh-cat-huh-m4rtin-74E0C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/i-dont-want-peace-i-want-problems-always-CCED7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/i-dont-want-peace-i-want-problems-always-CCED7.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-02990.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-02990.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-039A4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-039A4.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-423E0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-423E0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-479D1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-479D1.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-48F46.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-48F46.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-4A4CE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-4A4CE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-4EE8E.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-4EE8E.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-5D8DE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-5D8DE.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-68E31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-68E31.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-6B7A0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-6B7A0.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-70628.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-70628.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-7522E.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-7522E.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-79285.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-79285.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-87F57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-87F57.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-93BFB.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-93BFB.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-B327A.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-B327A.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-C98E6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-C98E6.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-E703C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/image-E703C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/laurencefr-66699.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/laurencefr-66699.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/maxresdefault-9512C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/maxresdefault-9512C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/money-rich-1BA3C.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/money-rich-1BA3C.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/openzeppelin-contracts-CF48A:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/openzeppelin-contracts-CF48A
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/peace-was-never-an-option-chicken-10ACF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/peace-was-never-an-option-chicken-10ACF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/the-dark-knight-joker-5FB7B.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/the-dark-knight-joker-5FB7B.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/the-end-is-near-simpsons-6BAEF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/the-end-is-near-simpsons-6BAEF.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/what-you-talking-about-cute-6B548.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/what-you-talking-about-cute-6B548.png
--------------------------------------------------------------------------------
/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/wildcat_flow-F3FE9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/discord-export/Code4rena - ARCHIVE-Q4-2023 - wildcat-oct16 [1161700041124229191].txt_Files/wildcat_flow-F3FE9.jpg
--------------------------------------------------------------------------------
/images/wildcat_logo_strapline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/images/wildcat_logo_strapline.png
--------------------------------------------------------------------------------
/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 | /cache/
5 |
--------------------------------------------------------------------------------
/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/forge-std/.gitignore:
--------------------------------------------------------------------------------
1 | cache/
2 | out/
3 | .vscode
4 | .idea
5 |
--------------------------------------------------------------------------------
/lib/forge-std/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/forge-std/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 | /cache/
5 |
--------------------------------------------------------------------------------
/lib/forge-std/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/forge-std/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.changeset/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://unpkg.com/@changesets/config@2.3.0/schema.json",
3 | "changelog": [
4 | "@changesets/changelog-github",
5 | {
6 | "repo": "OpenZeppelin/openzeppelin-contracts"
7 | }
8 | ],
9 | "commit": false,
10 | "access": "public",
11 | "baseBranch": "master"
12 | }
13 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.codecov.yml:
--------------------------------------------------------------------------------
1 | comment: off
2 | github_checks:
3 | annotations: false
4 | coverage:
5 | status:
6 | patch:
7 | default:
8 | target: 95%
9 | only_pulls: true
10 | project:
11 | default:
12 | threshold: 1%
13 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | contact_links:
2 | - name: Questions & Support Requests
3 | url: https://forum.openzeppelin.com/c/support/contracts/18
4 | about: Ask in the OpenZeppelin Forum
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/forge-std"]
2 | branch = v1
3 | path = lib/forge-std
4 | url = https://github.com/foundry-rs/forge-std
5 | [submodule "lib/erc4626-tests"]
6 | path = lib/erc4626-tests
7 | url = https://github.com/a16z/erc4626-tests.git
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.mocharc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | require: 'hardhat/register',
3 | timeout: 4000,
4 | };
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 120,
3 | "singleQuote": true,
4 | "trailingComma": "all",
5 | "arrowParens": "avoid",
6 | "overrides": [
7 | {
8 | "files": "*.sol",
9 | "options": {
10 | "singleQuote": false
11 | }
12 | }
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/.solcover.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | norpc: true,
3 | testCommand: 'npm test',
4 | compileCommand: 'npm run compile',
5 | skipFiles: ['mocks'],
6 | providerOptions: {
7 | default_balance_ether: '10000000000000000000000000',
8 | },
9 | mocha: {
10 | fgrep: '[skip-on-coverage]',
11 | invert: true,
12 | },
13 | };
14 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/audits/2018-10.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/audits/2018-10.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/.gitignore:
--------------------------------------------------------------------------------
1 | patched
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../patched/access/AccessControl.sol";
6 |
7 | contract AccessControlHarness is AccessControl {}
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../patched/access/Ownable2Step.sol";
6 |
7 | contract Ownable2StepHarness is Ownable2Step {
8 | function restricted() external onlyOwner {}
9 | }
10 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../patched/access/Ownable.sol";
6 |
7 | contract OwnableHarness is Ownable {
8 | function restricted() external onlyOwner {}
9 | }
10 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/reports/2021-10.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/certora/reports/2021-10.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/reports/2022-03.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/certora/reports/2022-03.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/reports/2022-05.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/certora/reports/2022-05.pdf
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec:
--------------------------------------------------------------------------------
1 | definition nonpayable(env e) returns bool = e.msg.value == 0;
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | hasRole(bytes32, address) returns(bool) envfree
3 | getRoleAdmin(bytes32) returns(bytes32) envfree
4 | grantRole(bytes32, address)
5 | revokeRole(bytes32, address)
6 | renounceRole(bytes32, address)
7 | }
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | permit(address,address,uint256,uint256,uint8,bytes32,bytes32) => DISPATCHER(true)
3 | nonces(address) returns (uint256) envfree => DISPATCHER(true)
4 | DOMAIN_SEPARATOR() returns (bytes32) envfree => DISPATCHER(true)
5 | }
6 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/methods/IERC3156.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | maxFlashLoan(address) returns (uint256) envfree => DISPATCHER(true)
3 | flashFee(address,uint256) returns (uint256) envfree => DISPATCHER(true)
4 | flashLoan(address,address,uint256,bytes) returns (bool) => DISPATCHER(true)
5 | }
6 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | owner() returns (address) envfree
3 | }
4 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | owner() returns (address) envfree
3 | transferOwnership(address)
4 | renounceOwnership()
5 | }
6 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | owner() returns (address) envfree
3 | pendingOwner() returns (address) envfree
4 | transferOwnership(address)
5 | acceptOwnership()
6 | renounceOwnership()
7 | }
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/crosschain/errors.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.6.0) (crosschain/errors.sol)
3 |
4 | pragma solidity ^0.8.4;
5 |
6 | error NotCrossChainCall();
7 | error InvalidCrossChainSender(address actual, address expected);
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1155.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC1155/IERC1155.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1155MetadataURI.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC1155/extensions/IERC1155MetadataURI.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1155Receiver.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC1155/IERC1155Receiver.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC165.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../utils/introspection/IERC165.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1820Implementer.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../utils/introspection/IERC1820Implementer.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1820Registry.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../utils/introspection/IERC1820Registry.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC20.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC20/IERC20.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC20Metadata.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC20/extensions/IERC20Metadata.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (interfaces/IERC2612.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC20/extensions/IERC20Permit.sol";
7 |
8 | interface IERC2612 is IERC20Permit {}
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC3156.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "./IERC3156FlashBorrower.sol";
7 | import "./IERC3156FlashLender.sol";
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (interfaces/IERC5805.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../governance/utils/IVotes.sol";
7 | import "./IERC6372.sol";
8 |
9 | interface IERC5805 is IERC6372, IVotes {}
10 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/IERC721.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Enumerable.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/extensions/IERC721Enumerable.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Metadata.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/extensions/IERC721Metadata.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Receiver.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/IERC721Receiver.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC777.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC777/IERC777.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC777Recipient.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC777/IERC777Recipient.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC777Sender.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC777/IERC777Sender.sol";
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC2612.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (interfaces/draft-IERC2612.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-2612 is Final as of 2022-11-01. This file is deprecated.
7 |
8 | import "./IERC2612.sol";
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/metatx/README.adoc:
--------------------------------------------------------------------------------
1 | = Meta Transactions
2 |
3 | [.readme-notice]
4 | NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/metatx
5 |
6 | == Core
7 |
8 | {{ERC2771Context}}
9 |
10 | == Utils
11 |
12 | {{MinimalForwarder}}
13 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/mocks/AccessControlCrossChainMock.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.4;
4 |
5 | import "../access/AccessControlCrossChain.sol";
6 | import "../crosschain/arbitrum/CrossChainEnabledArbitrumL2.sol";
7 |
8 | contract AccessControlCrossChainMock is AccessControlCrossChain, CrossChainEnabledArbitrumL2 {}
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract ERC165MissingData {
6 | function supportsInterface(bytes4 interfaceId) public view {} // missing return
7 | }
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract ERC165NotSupported {}
6 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract BadBeaconNoImpl {}
6 |
7 | contract BadBeaconNotContract {
8 | function implementation() external pure returns (address) {
9 | return address(0x1);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract ERC20ExcessDecimalsMock {
6 | function decimals() public pure returns (uint256) {
7 | return type(uint256).max;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../../token/ERC20/ERC20.sol";
6 | import "../../utils/Multicall.sol";
7 |
8 | abstract contract ERC20MulticallMock is ERC20, Multicall {}
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/README.md:
--------------------------------------------------------------------------------
1 | Contract presets are now deprecated in favor of [Contracts Wizard](https://wizard.openzeppelin.com/) as a more powerful alternative.
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/extensions/draft-ERC20Permit.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-2612 is Final as of 2022-11-01. This file is deprecated.
7 |
8 | import "./ERC20Permit.sol";
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/extensions/draft-IERC20Permit.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-2612 is Final as of 2022-11-01. This file is deprecated.
7 |
8 | import "./IERC20Permit.sol";
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/token/ERC20/presets/README.md:
--------------------------------------------------------------------------------
1 | Contract presets are now deprecated in favor of [Contracts Wizard](https://wizard.openzeppelin.com/) as a more powerful alternative.
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/token/ERC721/presets/README.md:
--------------------------------------------------------------------------------
1 | Contract presets are now deprecated in favor of [Contracts Wizard](https://wizard.openzeppelin.com/) as a more powerful alternative.
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/token/common/README.adoc:
--------------------------------------------------------------------------------
1 | = Common (Tokens)
2 |
3 | Functionality that is common to multiple token standards.
4 |
5 | * {ERC2981}: NFT Royalties compatible with both ERC721 and ERC1155.
6 | ** For ERC721 consider {ERC721Royalty} which clears the royalty information from storage on burn.
7 |
8 | == Contracts
9 |
10 | {{ERC2981}}
11 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-EIP712.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.8.0) (utils/cryptography/draft-EIP712.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-712 is Final as of 2022-08-11. This file is deprecated.
7 |
8 | import "./EIP712.sol";
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/contracts/vendor/polygon/IFxMessageProcessor.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (vendor/polygon/IFxMessageProcessor.sol)
3 | pragma solidity ^0.8.0;
4 |
5 | interface IFxMessageProcessor {
6 | function processMessageFromRoot(uint256 stateId, address rootMessageSender, bytes calldata data) external;
7 | }
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/antora.yml:
--------------------------------------------------------------------------------
1 | name: contracts
2 | title: Contracts
3 | version: 4.x
4 | nav:
5 | - modules/ROOT/nav.adoc
6 | - modules/api/nav.adoc
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/docs/templates/page.hbs:
--------------------------------------------------------------------------------
1 | :github-icon: pass:[]
2 | {{#with-prelude}}
3 | {{readme (readme-path)}}
4 | {{/with-prelude}}
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/foundry.toml:
--------------------------------------------------------------------------------
1 | [fuzz]
2 | runs = 10000
3 | max_test_rejects = 150000
4 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js:
--------------------------------------------------------------------------------
1 | const { subtask } = require('hardhat/config');
2 | const { TASK_COMPILE_SOLIDITY_GET_SOURCE_PATHS } = require('hardhat/builtin-tasks/task-names');
3 |
4 | subtask(TASK_COMPILE_SOLIDITY_GET_SOURCE_PATHS).setAction(async (_, __, runSuper) =>
5 | (await runSuper()).filter(path => !path.endsWith('.t.sol')),
6 | );
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/lib/forge-std/.gitignore:
--------------------------------------------------------------------------------
1 | cache/
2 | out/
3 | .vscode
4 | .idea
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/lib/forge-std/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 | /cache/
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | command = "npm run docs"
3 | publish = "build/site"
4 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/remappings.txt:
--------------------------------------------------------------------------------
1 | openzeppelin/=contracts/
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/renovate.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": ["github>OpenZeppelin/configs"],
3 | "labels": ["ignore-changeset"]
4 | }
5 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/requirements.txt:
--------------------------------------------------------------------------------
1 | certora-cli==3.6.4
2 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/checks/generation.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | npm run generate
6 | git diff -R --exit-code
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/git-user-config.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail -x
4 |
5 | git config user.name 'github-actions'
6 | git config user.email '41898282+github-actions[bot]@users.noreply.github.com'
7 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/prepack.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 | shopt -s globstar
5 |
6 | # cross platform `mkdir -p`
7 | node -e 'fs.mkdirSync("build/contracts", { recursive: true })'
8 |
9 | cp artifacts/contracts/**/*.json build/contracts
10 | rm build/contracts/*.dbg.json
11 |
12 | node scripts/remove-ignored-artifacts.js
13 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/prepare.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | if [ "${SKIP_COMPILE:-}" == true ]; then
6 | exit
7 | fi
8 |
9 | npm run clean
10 | env COMPILE_MODE=production npm run compile
11 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/release/version.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | changeset version
6 |
7 | scripts/release/format-changelog.js
8 | scripts/release/synchronize-versions.js
9 | scripts/release/update-comment.js
10 |
11 | oz-docs update-version
12 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | npx changeset pre exit rc
6 | git add .
7 | git commit -m "Exit release candidate"
8 | git push origin
9 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js:
--------------------------------------------------------------------------------
1 | module.exports = ({ github, context }) =>
2 | github.rest.actions.createWorkflowDispatch({
3 | owner: context.repo.owner,
4 | repo: context.repo.repo,
5 | workflow_id: 'release-cycle.yml',
6 | ref: process.env.REF || process.env.GITHUB_REF_NAME,
7 | });
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/test/TESTING.md:
--------------------------------------------------------------------------------
1 | ## Testing
2 |
3 | Unit test are critical to OpenZeppelin Contracts. They help ensure code quality and mitigate against security vulnerabilities. The directory structure within the `/test` directory corresponds to the `/contracts` directory.
4 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/test/helpers/chainid.js:
--------------------------------------------------------------------------------
1 | const hre = require('hardhat');
2 |
3 | async function getChainId() {
4 | const chainIdHex = await hre.network.provider.send('eth_chainId', []);
5 | return new hre.web3.utils.BN(chainIdHex, 'hex');
6 | }
7 |
8 | module.exports = {
9 | getChainId,
10 | };
11 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/test/helpers/create2.js:
--------------------------------------------------------------------------------
1 | function computeCreate2Address(saltHex, bytecode, deployer) {
2 | return web3.utils.toChecksumAddress(
3 | `0x${web3.utils
4 | .sha3(`0x${['ff', deployer, saltHex, web3.utils.soliditySha3(bytecode)].map(x => x.replace(/0x/, '')).join('')}`)
5 | .slice(-40)}`,
6 | );
7 | }
8 |
9 | module.exports = {
10 | computeCreate2Address,
11 | };
12 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/test/helpers/map-values.js:
--------------------------------------------------------------------------------
1 | function mapValues(obj, fn) {
2 | return Object.fromEntries([...Object.entries(obj)].map(([k, v]) => [k, fn(v)]));
3 | }
4 |
5 | module.exports = {
6 | mapValues,
7 | };
8 |
--------------------------------------------------------------------------------
/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js:
--------------------------------------------------------------------------------
1 | const { shouldSupportInterfaces } = require('./SupportsInterface.behavior');
2 |
3 | const ERC165 = artifacts.require('$ERC165');
4 |
5 | contract('ERC165', function () {
6 | beforeEach(async function () {
7 | this.mock = await ERC165.new();
8 | });
9 |
10 | shouldSupportInterfaces(['ERC165']);
11 | });
12 |
--------------------------------------------------------------------------------
/lib/sol-utils/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiler files
2 | cache/
3 | out/
4 |
5 | # Ignores development broadcast logs
6 | !/broadcast
7 | /broadcast/*/31337/
8 | /broadcast/**/dry-run/
9 |
10 | # Docs
11 | docs/
12 |
13 | # Dotenv file
14 | .env
15 |
16 | node_modules
--------------------------------------------------------------------------------
/lib/sol-utils/.prettierignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | out
3 | cache
4 | coverage
5 | lib
--------------------------------------------------------------------------------
/lib/sol-utils/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "plugins": [
3 | "./node_modules/prettier-plugin-solidity"
4 | ],
5 | "overrides": [
6 | {
7 | "files": "*.sol",
8 | "options": {
9 | "singleQuote": true,
10 | "printWidth": 100,
11 | "tabWidth": 2,
12 | "useTabs": false,
13 | "bracketSpacing": true
14 | }
15 | }
16 | ]
17 | }
--------------------------------------------------------------------------------
/lib/sol-utils/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | overrides: [
3 | {
4 | files: "*.sol",
5 | options: {
6 | tabWidth: 4,
7 | printWidth: 80,
8 | bracketSpacing: true,
9 | compiler: ">=0.8.17",
10 | },
11 | },
12 | ],
13 | };
14 |
--------------------------------------------------------------------------------
/lib/sol-utils/.solhintignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | lib/
3 | test/
--------------------------------------------------------------------------------
/lib/sol-utils/foundry.toml:
--------------------------------------------------------------------------------
1 | [profile.default]
2 | src = 'src'
3 | out = 'out'
4 | libs = ['lib']
5 |
6 | fs_permissions = [{ access = "read", path = "./external"}]
7 |
8 |
9 | via_ir = true
10 | optimizer = true
11 | optimizer_runs = 1_000_000
12 |
13 | # See more config options https://github.com/foundry-rs/foundry/tree/master/config
--------------------------------------------------------------------------------
/lib/sol-utils/lib/forge-std/.gitignore:
--------------------------------------------------------------------------------
1 | cache/
2 | out/
3 | .vscode
4 | .idea
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/forge-std/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/forge-std/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 | /cache/
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/forge-std/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/forge-std/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.changeset/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://unpkg.com/@changesets/config@2.3.0/schema.json",
3 | "changelog": [
4 | "@changesets/changelog-github",
5 | {
6 | "repo": "OpenZeppelin/openzeppelin-contracts"
7 | }
8 | ],
9 | "commit": false,
10 | "access": "public",
11 | "baseBranch": "master"
12 | }
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.codecov.yml:
--------------------------------------------------------------------------------
1 | comment: off
2 | github_checks:
3 | annotations: false
4 | coverage:
5 | status:
6 | patch:
7 | default:
8 | target: 95%
9 | only_pulls: true
10 | project:
11 | default:
12 | threshold: 1%
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | contact_links:
2 | - name: Questions & Support Requests
3 | url: https://forum.openzeppelin.com/c/support/contracts/18
4 | about: Ask in the OpenZeppelin Forum
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/forge-std"]
2 | branch = v1
3 | path = lib/forge-std
4 | url = https://github.com/foundry-rs/forge-std
5 | [submodule "lib/erc4626-tests"]
6 | path = lib/erc4626-tests
7 | url = https://github.com/a16z/erc4626-tests.git
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.mocharc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | require: 'hardhat/register',
3 | timeout: 4000,
4 | };
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 120,
3 | "singleQuote": true,
4 | "trailingComma": "all",
5 | "arrowParens": "avoid",
6 | "overrides": [
7 | {
8 | "files": "*.sol",
9 | "options": {
10 | "singleQuote": false
11 | }
12 | }
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/.solcover.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | norpc: true,
3 | testCommand: 'npm test',
4 | compileCommand: 'npm run compile',
5 | skipFiles: ['mocks'],
6 | providerOptions: {
7 | default_balance_ether: '10000000000000000000000000',
8 | },
9 | mocha: {
10 | fgrep: '[skip-on-coverage]',
11 | invert: true,
12 | },
13 | };
14 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/audits/2018-10.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/audits/2018-10.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/.gitignore:
--------------------------------------------------------------------------------
1 | patched
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../patched/access/AccessControl.sol";
6 |
7 | contract AccessControlHarness is AccessControl {}
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../patched/access/Ownable2Step.sol";
6 |
7 | contract Ownable2StepHarness is Ownable2Step {
8 | function restricted() external onlyOwner {}
9 | }
10 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../patched/access/Ownable.sol";
6 |
7 | contract OwnableHarness is Ownable {
8 | function restricted() external onlyOwner {}
9 | }
10 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/reports/2021-10.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/certora/reports/2021-10.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/reports/2022-03.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/certora/reports/2022-03.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/reports/2022-05.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/openzeppelin-contracts/certora/reports/2022-05.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec:
--------------------------------------------------------------------------------
1 | definition nonpayable(env e) returns bool = e.msg.value == 0;
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | hasRole(bytes32, address) returns(bool) envfree
3 | getRoleAdmin(bytes32) returns(bytes32) envfree
4 | grantRole(bytes32, address)
5 | revokeRole(bytes32, address)
6 | renounceRole(bytes32, address)
7 | }
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | permit(address,address,uint256,uint256,uint8,bytes32,bytes32) => DISPATCHER(true)
3 | nonces(address) returns (uint256) envfree => DISPATCHER(true)
4 | DOMAIN_SEPARATOR() returns (bytes32) envfree => DISPATCHER(true)
5 | }
6 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/methods/IERC3156.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | maxFlashLoan(address) returns (uint256) envfree => DISPATCHER(true)
3 | flashFee(address,uint256) returns (uint256) envfree => DISPATCHER(true)
4 | flashLoan(address,address,uint256,bytes) returns (bool) => DISPATCHER(true)
5 | }
6 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | owner() returns (address) envfree
3 | }
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | owner() returns (address) envfree
3 | transferOwnership(address)
4 | renounceOwnership()
5 | }
6 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec:
--------------------------------------------------------------------------------
1 | methods {
2 | owner() returns (address) envfree
3 | pendingOwner() returns (address) envfree
4 | transferOwnership(address)
5 | acceptOwnership()
6 | renounceOwnership()
7 | }
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/crosschain/errors.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.6.0) (crosschain/errors.sol)
3 |
4 | pragma solidity ^0.8.4;
5 |
6 | error NotCrossChainCall();
7 | error InvalidCrossChainSender(address actual, address expected);
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1155.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC1155/IERC1155.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1155MetadataURI.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC1155/extensions/IERC1155MetadataURI.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1155Receiver.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC1155/IERC1155Receiver.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC165.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../utils/introspection/IERC165.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1820Implementer.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../utils/introspection/IERC1820Implementer.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC1820Registry.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../utils/introspection/IERC1820Registry.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC20.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC20/IERC20.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC20Metadata.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC20/extensions/IERC20Metadata.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (interfaces/IERC2612.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC20/extensions/IERC20Permit.sol";
7 |
8 | interface IERC2612 is IERC20Permit {}
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC3156.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "./IERC3156FlashBorrower.sol";
7 | import "./IERC3156FlashLender.sol";
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (interfaces/IERC5805.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../governance/utils/IVotes.sol";
7 | import "./IERC6372.sol";
8 |
9 | interface IERC5805 is IERC6372, IVotes {}
10 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/IERC721.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Enumerable.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/extensions/IERC721Enumerable.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Metadata.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/extensions/IERC721Metadata.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC721Receiver.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC721/IERC721Receiver.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC777.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC777/IERC777.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC777Recipient.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC777/IERC777Recipient.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts v4.4.1 (interfaces/IERC777Sender.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | import "../token/ERC777/IERC777Sender.sol";
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC2612.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (interfaces/draft-IERC2612.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-2612 is Final as of 2022-11-01. This file is deprecated.
7 |
8 | import "./IERC2612.sol";
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/metatx/README.adoc:
--------------------------------------------------------------------------------
1 | = Meta Transactions
2 |
3 | [.readme-notice]
4 | NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/metatx
5 |
6 | == Core
7 |
8 | {{ERC2771Context}}
9 |
10 | == Utils
11 |
12 | {{MinimalForwarder}}
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/mocks/AccessControlCrossChainMock.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.4;
4 |
5 | import "../access/AccessControlCrossChain.sol";
6 | import "../crosschain/arbitrum/CrossChainEnabledArbitrumL2.sol";
7 |
8 | contract AccessControlCrossChainMock is AccessControlCrossChain, CrossChainEnabledArbitrumL2 {}
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract ERC165MissingData {
6 | function supportsInterface(bytes4 interfaceId) public view {} // missing return
7 | }
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract ERC165NotSupported {}
6 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract BadBeaconNoImpl {}
6 |
7 | contract BadBeaconNotContract {
8 | function implementation() external pure returns (address) {
9 | return address(0x1);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | contract ERC20ExcessDecimalsMock {
6 | function decimals() public pure returns (uint256) {
7 | return type(uint256).max;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 |
3 | pragma solidity ^0.8.0;
4 |
5 | import "../../token/ERC20/ERC20.sol";
6 | import "../../utils/Multicall.sol";
7 |
8 | abstract contract ERC20MulticallMock is ERC20, Multicall {}
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/README.md:
--------------------------------------------------------------------------------
1 | Contract presets are now deprecated in favor of [Contracts Wizard](https://wizard.openzeppelin.com/) as a more powerful alternative.
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Permit.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/extensions/draft-ERC20Permit.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-2612 is Final as of 2022-11-01. This file is deprecated.
7 |
8 | import "./ERC20Permit.sol";
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/extensions/draft-IERC20Permit.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-2612 is Final as of 2022-11-01. This file is deprecated.
7 |
8 | import "./IERC20Permit.sol";
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/token/ERC20/presets/README.md:
--------------------------------------------------------------------------------
1 | Contract presets are now deprecated in favor of [Contracts Wizard](https://wizard.openzeppelin.com/) as a more powerful alternative.
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/token/ERC721/presets/README.md:
--------------------------------------------------------------------------------
1 | Contract presets are now deprecated in favor of [Contracts Wizard](https://wizard.openzeppelin.com/) as a more powerful alternative.
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/token/common/README.adoc:
--------------------------------------------------------------------------------
1 | = Common (Tokens)
2 |
3 | Functionality that is common to multiple token standards.
4 |
5 | * {ERC2981}: NFT Royalties compatible with both ERC721 and ERC1155.
6 | ** For ERC721 consider {ERC721Royalty} which clears the royalty information from storage on burn.
7 |
8 | == Contracts
9 |
10 | {{ERC2981}}
11 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-EIP712.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.8.0) (utils/cryptography/draft-EIP712.sol)
3 |
4 | pragma solidity ^0.8.0;
5 |
6 | // EIP-712 is Final as of 2022-08-11. This file is deprecated.
7 |
8 | import "./EIP712.sol";
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/contracts/vendor/polygon/IFxMessageProcessor.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | // OpenZeppelin Contracts (last updated v4.9.0) (vendor/polygon/IFxMessageProcessor.sol)
3 | pragma solidity ^0.8.0;
4 |
5 | interface IFxMessageProcessor {
6 | function processMessageFromRoot(uint256 stateId, address rootMessageSender, bytes calldata data) external;
7 | }
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/foundry.toml:
--------------------------------------------------------------------------------
1 | [fuzz]
2 | runs = 10000
3 | max_test_rejects = 150000
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js:
--------------------------------------------------------------------------------
1 | const { subtask } = require('hardhat/config');
2 | const { TASK_COMPILE_SOLIDITY_GET_SOURCE_PATHS } = require('hardhat/builtin-tasks/task-names');
3 |
4 | subtask(TASK_COMPILE_SOLIDITY_GET_SOURCE_PATHS).setAction(async (_, __, runSuper) =>
5 | (await runSuper()).filter(path => !path.endsWith('.t.sol')),
6 | );
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/lib/forge-std/.gitignore:
--------------------------------------------------------------------------------
1 | cache/
2 | out/
3 | .vscode
4 | .idea
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/lib/forge-std/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 | /cache/
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/netlify.toml:
--------------------------------------------------------------------------------
1 | [build]
2 | command = "npm run docs"
3 | publish = "build/site"
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/remappings.txt:
--------------------------------------------------------------------------------
1 | openzeppelin/=contracts/
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/renovate.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": ["github>OpenZeppelin/configs"],
3 | "labels": ["ignore-changeset"]
4 | }
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/requirements.txt:
--------------------------------------------------------------------------------
1 | certora-cli==3.6.4
2 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/checks/generation.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | npm run generate
6 | git diff -R --exit-code
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/git-user-config.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail -x
4 |
5 | git config user.name 'github-actions'
6 | git config user.email '41898282+github-actions[bot]@users.noreply.github.com'
7 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/prepack.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 | shopt -s globstar
5 |
6 | # cross platform `mkdir -p`
7 | node -e 'fs.mkdirSync("build/contracts", { recursive: true })'
8 |
9 | cp artifacts/contracts/**/*.json build/contracts
10 | rm build/contracts/*.dbg.json
11 |
12 | node scripts/remove-ignored-artifacts.js
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/prepare.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | if [ "${SKIP_COMPILE:-}" == true ]; then
6 | exit
7 | fi
8 |
9 | npm run clean
10 | env COMPILE_MODE=production npm run compile
11 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/release/version.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | changeset version
6 |
7 | scripts/release/format-changelog.js
8 | scripts/release/synchronize-versions.js
9 | scripts/release/update-comment.js
10 |
11 | oz-docs update-version
12 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euo pipefail
4 |
5 | npx changeset pre exit rc
6 | git add .
7 | git commit -m "Exit release candidate"
8 | git push origin
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js:
--------------------------------------------------------------------------------
1 | module.exports = ({ github, context }) =>
2 | github.rest.actions.createWorkflowDispatch({
3 | owner: context.repo.owner,
4 | repo: context.repo.repo,
5 | workflow_id: 'release-cycle.yml',
6 | ref: process.env.REF || process.env.GITHUB_REF_NAME,
7 | });
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/test/TESTING.md:
--------------------------------------------------------------------------------
1 | ## Testing
2 |
3 | Unit test are critical to OpenZeppelin Contracts. They help ensure code quality and mitigate against security vulnerabilities. The directory structure within the `/test` directory corresponds to the `/contracts` directory.
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/test/helpers/chainid.js:
--------------------------------------------------------------------------------
1 | const hre = require('hardhat');
2 |
3 | async function getChainId() {
4 | const chainIdHex = await hre.network.provider.send('eth_chainId', []);
5 | return new hre.web3.utils.BN(chainIdHex, 'hex');
6 | }
7 |
8 | module.exports = {
9 | getChainId,
10 | };
11 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/test/helpers/map-values.js:
--------------------------------------------------------------------------------
1 | function mapValues(obj, fn) {
2 | return Object.fromEntries([...Object.entries(obj)].map(([k, v]) => [k, fn(v)]));
3 | }
4 |
5 | module.exports = {
6 | mapValues,
7 | };
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js:
--------------------------------------------------------------------------------
1 | const { shouldSupportInterfaces } = require('./SupportsInterface.behavior');
2 |
3 | const ERC165 = artifacts.require('$ERC165');
4 |
5 | contract('ERC165', function () {
6 | beforeEach(async function () {
7 | this.mock = await ERC165.new();
8 | });
9 |
10 | shouldSupportInterfaces(['ERC165']);
11 | });
12 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/solmate"]
2 | path = lib/solmate
3 | url = https://github.com/transmissions11/solmate
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/.gitattributes:
--------------------------------------------------------------------------------
1 | *.sol linguist-language=Solidity
2 | .gas-snapshot linguist-language=Julia
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/.gitignore:
--------------------------------------------------------------------------------
1 | /cache
2 | /node_modules
3 | /out
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/.prettierignore:
--------------------------------------------------------------------------------
1 | lib
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 2,
3 | "printWidth": 100,
4 |
5 | "overrides": [
6 | {
7 | "files": "*.sol",
8 | "options": {
9 | "tabWidth": 4,
10 | "printWidth": 120
11 | }
12 | }
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/solady/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/foundry.toml:
--------------------------------------------------------------------------------
1 | [profile.default]
2 | solc = "0.8.15"
3 | bytecode_hash = "none"
4 | optimizer_runs = 1000000
5 |
6 | [profile.intense]
7 | fuzz_runs = 10000
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/lib/solmate/src/test/utils/mocks/MockOwned.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Owned} from "../../../auth/Owned.sol";
5 |
6 | contract MockOwned is Owned(msg.sender) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual onlyOwner {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "solady",
3 | "version": "0.0.55",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "solady",
9 | "version": "0.0.55",
10 | "license": "MIT"
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "solady",
3 | "license": "MIT",
4 | "version": "0.0.85",
5 | "description": "Optimized Solidity snippets.",
6 | "files": [
7 | "src/**/*.sol"
8 | ],
9 | "repository": {
10 | "type": "git",
11 | "url": "git+https://github.com/vectorized/solady.git"
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solady/test/utils/mocks/MockAuthChild.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity ^0.8.4;
3 |
4 | import {Auth, Authority} from "solmate/auth/Auth.sol";
5 |
6 | contract MockAuthChild is Auth(msg.sender, Authority(address(0))) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual requiresAuth {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/.gitattributes:
--------------------------------------------------------------------------------
1 | .gas-snapshot linguist-language=Julia
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/.gitignore:
--------------------------------------------------------------------------------
1 | /cache
2 | /node_modules
3 | /out
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/.prettierignore:
--------------------------------------------------------------------------------
1 | lib
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 2,
3 | "printWidth": 100,
4 |
5 | "overrides": [
6 | {
7 | "files": "*.sol",
8 | "options": {
9 | "tabWidth": 4,
10 | "printWidth": 120
11 | }
12 | }
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "solidity.packageDefaultDependenciesContractsDirectory": "src",
3 | "solidity.packageDefaultDependenciesDirectory": "lib",
4 | "solidity.compileUsingRemoteVersion": "v0.8.15",
5 | "search.exclude": { "lib": true },
6 | "files.associations": {
7 | ".gas-snapshot": "julia"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/sol-utils/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/foundry.toml:
--------------------------------------------------------------------------------
1 | [profile.default]
2 | solc = "0.8.15"
3 | bytecode_hash = "none"
4 | optimizer_runs = 1000000
5 |
6 | [profile.intense.fuzz]
7 | runs = 10000
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/src/test/utils/mocks/MockAuthChild.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Auth, Authority} from "../../../auth/Auth.sol";
5 |
6 | contract MockAuthChild is Auth(msg.sender, Authority(address(0))) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual requiresAuth {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/lib/solmate/src/test/utils/mocks/MockOwned.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Owned} from "../../../auth/Owned.sol";
5 |
6 | contract MockOwned is Owned(msg.sender) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual onlyOwner {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/remappings.txt:
--------------------------------------------------------------------------------
1 | forge-std/=lib/forge-std/src/
2 | solmate/=lib/solmate/src/
3 | src/=src/
4 | solady/=lib/solady/src/
5 | openzeppelin/=lib/openzeppelin-contracts/
--------------------------------------------------------------------------------
/lib/sol-utils/src/interfaces/IERC20Metadata.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: UNLICENSED
2 | pragma solidity >=0.8.17;
3 |
4 | import './IERC20.sol';
5 |
6 | interface IERC20Metadata is IERC20 {
7 | function name() external view returns (string memory);
8 |
9 | function symbol() external view returns (string memory);
10 |
11 | function decimals() external view returns (uint8);
12 | }
13 |
--------------------------------------------------------------------------------
/lib/sol-utils/src/interfaces/IWETH.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: UNLICENSED
2 | pragma solidity >=0.8.17;
3 |
4 | import './IERC20.sol';
5 |
6 | interface IWETH is IERC20 {
7 | function deposit() external payable;
8 |
9 | function withdraw(uint256) external;
10 | }
11 |
--------------------------------------------------------------------------------
/lib/sol-utils/src/ir-only/PointerLibraries.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity ^0.8.17;
3 |
4 | import './CalldataPointer.sol';
5 | import './ReturndataPointer.sol';
6 | import './MemoryPointer.sol';
7 |
8 | // This is a header file to export all of the pointer libraries
9 |
--------------------------------------------------------------------------------
/lib/sol-utils/src/test/ForgeConstants.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity ^0.8.17;
3 |
4 | import { Vm, VmSafe } from 'forge-std/Vm.sol';
5 |
6 | address constant VM_ADDRESS = address(uint160(uint256(keccak256('hevm cheat code'))));
7 | Vm constant vm = Vm(VM_ADDRESS);
8 |
--------------------------------------------------------------------------------
/lib/sol-utils/src/test/SendEth.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity >=0.5.0;
3 |
4 | contract SendEth {
5 | constructor(address target) payable {
6 | assembly {
7 | selfdestruct(target)
8 | }
9 | }
10 | }
11 |
12 | function forceTransferETH(address target, uint256 amount) {
13 | new SendEth{ value: amount }(target);
14 | }
15 |
--------------------------------------------------------------------------------
/lib/solady/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 | branch = 9310e879db8ba3ea6d5c6489a579118fd264a3f5
--------------------------------------------------------------------------------
/lib/solady/audits/ackee-blockchain-solady-report.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/solady/audits/ackee-blockchain-solady-report.pdf
--------------------------------------------------------------------------------
/lib/solady/audits/cantina-solady-report.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/solady/audits/cantina-solady-report.pdf
--------------------------------------------------------------------------------
/lib/solady/audits/shung-solady-erc721-audit.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/solady/audits/shung-solady-erc721-audit.pdf
--------------------------------------------------------------------------------
/lib/solady/ext/woke/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/solady/ext/woke/__init__.py
--------------------------------------------------------------------------------
/lib/solady/ext/woke/weird/HighDecimals.sol:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2020 d-xo
2 | // SPDX-License-Identifier: AGPL-3.0-only
3 |
4 | pragma solidity >=0.6.12;
5 |
6 | import {ERC20} from "./ERC20.sol";
7 |
8 | contract HighDecimalToken is ERC20 {
9 | constructor(uint _totalSupply) ERC20(_totalSupply) public {
10 | decimals = 50;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/solady/ext/woke/weird/LowDecimals.sol:
--------------------------------------------------------------------------------
1 | // Copyright (C) 2020 d-xo
2 | // SPDX-License-Identifier: AGPL-3.0-only
3 |
4 | pragma solidity >=0.6.12;
5 |
6 | import {ERC20} from "./ERC20.sol";
7 |
8 | contract LowDecimalToken is ERC20 {
9 | constructor(uint _totalSupply) ERC20(_totalSupply) public {
10 | decimals = 2;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/.gitattributes:
--------------------------------------------------------------------------------
1 | *.sol linguist-language=Solidity
2 | .gas-snapshot linguist-language=Julia
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/.gitignore:
--------------------------------------------------------------------------------
1 | /cache
2 | /node_modules
3 | /out
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/.prettierignore:
--------------------------------------------------------------------------------
1 | lib
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 2,
3 | "printWidth": 100,
4 |
5 | "overrides": [
6 | {
7 | "files": "*.sol",
8 | "options": {
9 | "tabWidth": 4,
10 | "printWidth": 120
11 | }
12 | }
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/solady/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/foundry.toml:
--------------------------------------------------------------------------------
1 | [profile.default]
2 | solc = "0.8.15"
3 | bytecode_hash = "none"
4 | optimizer_runs = 1000000
5 |
6 | [profile.intense]
7 | fuzz_runs = 10000
8 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/src/test/utils/mocks/MockAuthChild.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Auth, Authority} from "../../../auth/Auth.sol";
5 |
6 | contract MockAuthChild is Auth(msg.sender, Authority(address(0))) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual requiresAuth {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/solady/lib/solmate/src/test/utils/mocks/MockOwned.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Owned} from "../../../auth/Owned.sol";
5 |
6 | contract MockOwned is Owned(msg.sender) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual onlyOwner {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/solady/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "solady",
3 | "version": "0.0.55",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "solady",
9 | "version": "0.0.55",
10 | "license": "MIT"
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/lib/solady/test/README.md:
--------------------------------------------------------------------------------
1 | ## WARNING!
2 |
3 | All test files are strictly intended for testing purposes only.
4 |
5 | Do NOT copy anything here into production code unless you really know what you are doing.
--------------------------------------------------------------------------------
/lib/solady/test/utils/SoladyTest.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity ^0.8.4;
3 |
4 | import "./forge-std/Test.sol";
5 | import "./TestPlus.sol";
6 |
7 | contract SoladyTest is Test, TestPlus {
8 | /// @dev Alias for `_hem`.
9 | function _bound(uint256 x, uint256 min, uint256 max) internal pure virtual returns (uint256) {
10 | return _hem(x, min, max);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/solmate/.gitattributes:
--------------------------------------------------------------------------------
1 | .gas-snapshot linguist-language=Julia
--------------------------------------------------------------------------------
/lib/solmate/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ## Description
2 |
3 | Describe the changes made in your pull request here.
4 |
5 | ## Checklist
6 |
7 | Ensure you completed **all of the steps** below before submitting your pull request:
8 |
9 | - [ ] Ran `forge snapshot`?
10 | - [ ] Ran `npm run lint`?
11 | - [ ] Ran `forge test`?
12 |
13 | _Pull requests with an incomplete checklist will be thrown out._
14 |
--------------------------------------------------------------------------------
/lib/solmate/.gitignore:
--------------------------------------------------------------------------------
1 | /cache
2 | /node_modules
3 | /out
--------------------------------------------------------------------------------
/lib/solmate/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "lib/ds-test"]
2 | path = lib/ds-test
3 | url = https://github.com/dapphub/ds-test
4 |
--------------------------------------------------------------------------------
/lib/solmate/.prettierignore:
--------------------------------------------------------------------------------
1 | lib
--------------------------------------------------------------------------------
/lib/solmate/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "tabWidth": 2,
3 | "printWidth": 100,
4 |
5 | "overrides": [
6 | {
7 | "files": "*.sol",
8 | "options": {
9 | "tabWidth": 4,
10 | "printWidth": 120
11 | }
12 | }
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/lib/solmate/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "solidity.packageDefaultDependenciesContractsDirectory": "src",
3 | "solidity.packageDefaultDependenciesDirectory": "lib",
4 | "solidity.compileUsingRemoteVersion": "v0.8.15",
5 | "search.exclude": { "lib": true },
6 | "files.associations": {
7 | ".gas-snapshot": "julia"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/code-423n4/2023-10-wildcat/1f4422eb6ce844622a29cac6300472e3ab74705a/lib/solmate/audits/v6-Fixed-Point-Solutions.pdf
--------------------------------------------------------------------------------
/lib/solmate/foundry.toml:
--------------------------------------------------------------------------------
1 | [profile.default]
2 | solc = "0.8.15"
3 | bytecode_hash = "none"
4 | optimizer_runs = 1000000
5 |
6 | [profile.intense.fuzz]
7 | runs = 10000
8 |
--------------------------------------------------------------------------------
/lib/solmate/lib/ds-test/.gitignore:
--------------------------------------------------------------------------------
1 | /.dapple
2 | /build
3 | /out
4 |
--------------------------------------------------------------------------------
/lib/solmate/lib/ds-test/Makefile:
--------------------------------------------------------------------------------
1 | all:; dapp build
2 |
3 | test:
4 | -dapp --use solc:0.4.23 build
5 | -dapp --use solc:0.4.26 build
6 | -dapp --use solc:0.5.17 build
7 | -dapp --use solc:0.6.12 build
8 | -dapp --use solc:0.7.5 build
9 |
10 | demo:
11 | DAPP_SRC=demo dapp --use solc:0.7.5 build
12 | -hevm dapp-test --verbose 3
13 |
14 | .PHONY: test demo
15 |
--------------------------------------------------------------------------------
/lib/solmate/lib/ds-test/default.nix:
--------------------------------------------------------------------------------
1 | { solidityPackage, dappsys }: solidityPackage {
2 | name = "ds-test";
3 | src = ./src;
4 | }
5 |
--------------------------------------------------------------------------------
/lib/solmate/src/test/utils/mocks/MockAuthChild.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Auth, Authority} from "../../../auth/Auth.sol";
5 |
6 | contract MockAuthChild is Auth(msg.sender, Authority(address(0))) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual requiresAuth {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/solmate/src/test/utils/mocks/MockOwned.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: AGPL-3.0-only
2 | pragma solidity >=0.8.0;
3 |
4 | import {Owned} from "../../../auth/Owned.sol";
5 |
6 | contract MockOwned is Owned(msg.sender) {
7 | bool public flag;
8 |
9 | function updateFlag() public virtual onlyOwner {
10 | flag = true;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/remappings.txt:
--------------------------------------------------------------------------------
1 | src/=src/
2 | forge-std/=lib/forge-std/src/
3 | ds-test/=lib/ds-test/src/
4 | solmate/=lib/solmate/src/
5 | solady/=lib/solady/src/
6 | openzeppelin/=lib/openzeppelin-contracts/
7 | sol-utils/=lib/sol-utils/src/
--------------------------------------------------------------------------------
/src/interfaces/IChainalysisSanctionsList.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: UNLICENSED
2 | pragma solidity >=0.8.20;
3 |
4 | interface IChainalysisSanctionsList {
5 | function isSanctioned(address addr) external view returns (bool);
6 | }
7 |
--------------------------------------------------------------------------------
/src/interfaces/IERC20Metadata.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity >=0.8.20;
3 |
4 | import './IERC20.sol';
5 |
6 | interface IERC20Metadata is IERC20 {
7 | function name() external view returns (string memory);
8 |
9 | function symbol() external view returns (string memory);
10 |
11 | function decimals() external view returns (uint8);
12 | }
13 |
--------------------------------------------------------------------------------
/src/libraries/Chainalysis.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity ^0.8.20;
3 |
4 | import '../interfaces/IChainalysisSanctionsList.sol';
5 |
6 | IChainalysisSanctionsList constant SanctionsList = IChainalysisSanctionsList(
7 | 0x40C57923924B5c5c5455c48D93317139ADDaC8fb
8 | );
9 |
--------------------------------------------------------------------------------
/test/helpers/MockERC20.sol:
--------------------------------------------------------------------------------
1 | // SPDX-License-Identifier: MIT
2 | pragma solidity >=0.8.20;
3 |
4 | import { ERC20 } from 'solmate/tokens/ERC20.sol';
5 |
6 | contract MockERC20 is ERC20 {
7 | constructor() ERC20('MockERC20', 'MERC', 18) {}
8 |
9 | function mint(address account, uint256 amount) external {
10 | _mint(account, amount);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es2018",
4 | "module": "commonjs",
5 | "strict": true,
6 | "esModuleInterop": true,
7 | "outDir": "dist",
8 | "declaration": true,
9 | "resolveJsonModule": true
10 | },
11 | "include": ["./scripts"],
12 | }
13 |
--------------------------------------------------------------------------------