polkamarkets-js 3.1.10 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3389) hide show
  1. package/.gitmodules +18 -0
  2. package/README.md +356 -53
  3. package/abis/AccessControl.json +1 -0
  4. package/abis/Address.json +1 -0
  5. package/abis/BalanceHolder_ERC20.json +1 -0
  6. package/abis/CeilDiv.json +1 -0
  7. package/abis/CeilDivBad.json +1 -0
  8. package/abis/CeilDivGood.json +1 -0
  9. package/abis/Clones.json +1 -0
  10. package/abis/CommonBase.json +1 -0
  11. package/abis/Context.json +1 -0
  12. package/abis/ContextUpgradeable.json +1 -0
  13. package/abis/Create2.json +1 -0
  14. package/abis/CreateMarketLib.json +1 -0
  15. package/abis/DeployProxy.json +1 -0
  16. package/abis/DeployUpgradeablePM.json +1 -0
  17. package/abis/ERC165.json +1 -0
  18. package/abis/ERC1967Proxy.json +1 -0
  19. package/abis/ERC1967Utils.json +1 -0
  20. package/abis/ERC20.json +1 -0
  21. package/abis/ERC20Burnable.json +1 -0
  22. package/abis/ERC20MinterPauser.json +1 -0
  23. package/abis/ERC20Pausable.json +1 -0
  24. package/abis/Errors.json +1 -0
  25. package/abis/FantasyERC20.json +1 -0
  26. package/abis/IAccessControl.json +1 -0
  27. package/abis/IBalanceHolder_ERC20.json +1 -0
  28. package/abis/IBeacon.json +1 -0
  29. package/abis/IERC1155Errors.json +1 -0
  30. package/abis/IERC1363.json +1 -0
  31. package/abis/IERC165.json +1 -0
  32. package/abis/IERC1822Proxiable.json +1 -0
  33. package/abis/IERC1967.json +1 -0
  34. package/abis/IERC20.json +1 -0
  35. package/abis/IERC20Errors.json +1 -0
  36. package/abis/IERC20Metadata.json +1 -0
  37. package/abis/IERC721.json +1 -0
  38. package/abis/IERC721Enumerable.json +1 -0
  39. package/abis/IERC721Errors.json +1 -0
  40. package/abis/IERC721Metadata.json +1 -0
  41. package/abis/IERC721TokenReceiver.json +1 -0
  42. package/abis/IFantasyERC20.json +1 -0
  43. package/abis/IMulticall3.json +1 -0
  44. package/abis/IPredictionMarketV3Factory.json +1 -0
  45. package/abis/IPredictionMarketV3Manager.json +1 -0
  46. package/abis/IPredictionMarketV3_2.json +1 -0
  47. package/abis/IPredictionMarketV3_4.json +1 -0
  48. package/abis/IRealityETH_ERC20.json +1 -0
  49. package/abis/IRealityETH_IERC20.json +1 -0
  50. package/abis/IWETH.json +1 -0
  51. package/abis/Initializable.json +1 -0
  52. package/abis/LandFactory.json +1 -0
  53. package/abis/MockERC20.json +1 -0
  54. package/abis/MockERC721.json +1 -0
  55. package/abis/Ownable.json +1 -0
  56. package/abis/Ownable2StepUpgradeable.json +1 -0
  57. package/abis/OwnableUpgradeable.json +1 -0
  58. package/abis/Pausable.json +1 -0
  59. package/abis/PredictionMarketManagerTest.json +1 -0
  60. package/abis/PredictionMarketTest.json +1 -0
  61. package/abis/PredictionMarketV33Flow.json +1 -0
  62. package/abis/PredictionMarketV3Controller.json +1 -0
  63. package/abis/PredictionMarketV3Factory.json +1 -0
  64. package/abis/PredictionMarketV3Manager.json +1 -0
  65. package/abis/PredictionMarketV3Querier.json +1 -0
  66. package/abis/PredictionMarketV3_2.json +1 -0
  67. package/abis/PredictionMarketV3_4.json +1 -0
  68. package/abis/PredictionMarketV3_4Bad.json +1 -0
  69. package/abis/PredictionMarketV3_4Good.json +1 -0
  70. package/abis/Proxy.json +1 -0
  71. package/abis/RealityETH_ERC20_Factory.json +1 -0
  72. package/abis/RealityETH_ERC20_v3_0.json +1 -0
  73. package/abis/ReentrancyGuard.json +1 -0
  74. package/abis/ReentrancyGuardUpgradeable.json +1 -0
  75. package/abis/SafeERC20.json +1 -0
  76. package/abis/Script.json +1 -0
  77. package/abis/ScriptBase.json +1 -0
  78. package/abis/StdAssertions.json +1 -0
  79. package/abis/StdChains.json +1 -0
  80. package/abis/StdCheats.json +1 -0
  81. package/abis/StdCheatsSafe.json +1 -0
  82. package/abis/StdInvariant.json +1 -0
  83. package/abis/StdStyle.json +1 -0
  84. package/abis/StdUtils.json +1 -0
  85. package/abis/StorageSlot.json +1 -0
  86. package/abis/TestBase.json +1 -0
  87. package/abis/UUPSUpgradeable.json +1 -0
  88. package/abis/Vm.json +1 -0
  89. package/abis/VmSafe.json +1 -0
  90. package/abis/Voting.json +1 -0
  91. package/abis/WETH.json +1 -0
  92. package/abis/console.json +1 -0
  93. package/abis/safeconsole.json +1 -0
  94. package/abis/stdError.json +1 -0
  95. package/abis/stdJson.json +1 -0
  96. package/abis/stdMath.json +1 -0
  97. package/abis/stdStorage.json +1 -0
  98. package/abis/stdStorageSafe.json +1 -0
  99. package/abis/stdToml.json +1 -0
  100. package/abis/test.json +1 -0
  101. package/contracts/ERC20MinterPauser.sol +100 -0
  102. package/contracts/FantasyERC20.sol +12 -10
  103. package/contracts/IFantasyERC20.sol +1 -1
  104. package/contracts/IPredictionMarketV3Factory.sol +1 -1
  105. package/contracts/IPredictionMarketV3Manager.sol +5 -1
  106. package/contracts/IPredictionMarketV3_4.sol +219 -0
  107. package/contracts/IRealityETH_ERC20.sol +1 -1
  108. package/contracts/IWETH.sol +12 -0
  109. package/contracts/LandFactory.sol +71 -27
  110. package/contracts/PredictionMarketV3Controller.sol +7 -7
  111. package/contracts/PredictionMarketV3Factory.sol +7 -5
  112. package/contracts/PredictionMarketV3Manager.sol +7 -7
  113. package/contracts/PredictionMarketV3Querier.sol +14 -4
  114. package/contracts/PredictionMarketV3_4.sol +1492 -0
  115. package/contracts/PredictionMarketV3_4Bad.sol +1487 -0
  116. package/contracts/PredictionMarketV3_4Good.sol +1508 -0
  117. package/contracts/Proxy.sol +35 -0
  118. package/contracts/RealityETH_ERC20_Factory.sol +4 -11
  119. package/contracts/Voting.sol +4 -7
  120. package/contracts/WETH.sol +58 -0
  121. package/dist/Application.d.ts +201 -0
  122. package/dist/Application.d.ts.map +1 -0
  123. package/dist/Application.js +411 -0
  124. package/dist/Application.js.map +1 -0
  125. package/dist/index.d.ts +7 -0
  126. package/dist/index.d.ts.map +1 -0
  127. package/dist/index.js +16 -0
  128. package/dist/index.js.map +1 -0
  129. package/dist/interfaces/index.d.ts +4 -0
  130. package/dist/interfaces/index.d.ts.map +1 -0
  131. package/dist/interfaces/index.js +22 -0
  132. package/dist/interfaces/index.js.map +1 -0
  133. package/dist/models/AchievementsContract.d.ts +43 -0
  134. package/dist/models/AchievementsContract.d.ts.map +1 -0
  135. package/dist/models/AchievementsContract.js +177 -0
  136. package/dist/models/AchievementsContract.js.map +1 -0
  137. package/dist/models/ArbitrationContract.d.ts +23 -0
  138. package/dist/models/ArbitrationContract.d.ts.map +1 -0
  139. package/dist/models/ArbitrationContract.js +47 -0
  140. package/dist/models/ArbitrationContract.js.map +1 -0
  141. package/dist/models/ArbitrationProxyContract.d.ts +14 -0
  142. package/dist/models/ArbitrationProxyContract.d.ts.map +1 -0
  143. package/dist/models/ArbitrationProxyContract.js +26 -0
  144. package/dist/models/ArbitrationProxyContract.js.map +1 -0
  145. package/dist/models/ERC20Contract.d.ts +50 -0
  146. package/dist/models/ERC20Contract.d.ts.map +1 -0
  147. package/dist/models/ERC20Contract.js +99 -0
  148. package/dist/models/ERC20Contract.js.map +1 -0
  149. package/dist/models/FantasyERC20Contract.d.ts +13 -0
  150. package/dist/models/FantasyERC20Contract.d.ts.map +1 -0
  151. package/dist/models/FantasyERC20Contract.js +43 -0
  152. package/dist/models/FantasyERC20Contract.js.map +1 -0
  153. package/dist/models/IContract.d.ts +57 -0
  154. package/dist/models/IContract.d.ts.map +1 -0
  155. package/dist/models/IContract.js +515 -0
  156. package/dist/models/IContract.js.map +1 -0
  157. package/dist/models/PolkamarketsSmartAccount.d.ts +26 -0
  158. package/dist/models/PolkamarketsSmartAccount.d.ts.map +1 -0
  159. package/dist/models/PolkamarketsSmartAccount.js +100 -0
  160. package/dist/models/PolkamarketsSmartAccount.js.map +1 -0
  161. package/dist/models/PredictionMarketContract.d.ts +113 -0
  162. package/dist/models/PredictionMarketContract.d.ts.map +1 -0
  163. package/dist/models/PredictionMarketContract.js +298 -0
  164. package/dist/models/PredictionMarketContract.js.map +1 -0
  165. package/dist/models/PredictionMarketV2Contract.d.ts +157 -0
  166. package/dist/models/PredictionMarketV2Contract.d.ts.map +1 -0
  167. package/dist/models/PredictionMarketV2Contract.js +431 -0
  168. package/dist/models/PredictionMarketV2Contract.js.map +1 -0
  169. package/dist/models/PredictionMarketV3Contract.d.ts +42 -0
  170. package/dist/models/PredictionMarketV3Contract.d.ts.map +1 -0
  171. package/dist/models/PredictionMarketV3Contract.js +277 -0
  172. package/dist/models/PredictionMarketV3Contract.js.map +1 -0
  173. package/dist/models/PredictionMarketV3ControllerContract.d.ts +128 -0
  174. package/dist/models/PredictionMarketV3ControllerContract.d.ts.map +1 -0
  175. package/dist/models/PredictionMarketV3ControllerContract.js +174 -0
  176. package/dist/models/PredictionMarketV3ControllerContract.js.map +1 -0
  177. package/dist/models/PredictionMarketV3FactoryContract.d.ts +31 -0
  178. package/dist/models/PredictionMarketV3FactoryContract.d.ts.map +1 -0
  179. package/dist/models/PredictionMarketV3FactoryContract.js +81 -0
  180. package/dist/models/PredictionMarketV3FactoryContract.js.map +1 -0
  181. package/dist/models/PredictionMarketV3ManagerContract.d.ts +67 -0
  182. package/dist/models/PredictionMarketV3ManagerContract.d.ts.map +1 -0
  183. package/dist/models/PredictionMarketV3ManagerContract.js +97 -0
  184. package/dist/models/PredictionMarketV3ManagerContract.js.map +1 -0
  185. package/dist/models/PredictionMarketV3QuerierContract.d.ts +33 -0
  186. package/dist/models/PredictionMarketV3QuerierContract.d.ts.map +1 -0
  187. package/dist/models/PredictionMarketV3QuerierContract.js +61 -0
  188. package/dist/models/PredictionMarketV3QuerierContract.js.map +1 -0
  189. package/dist/models/PredictionMarketV3_2Contract.d.ts +32 -0
  190. package/dist/models/PredictionMarketV3_2Contract.d.ts.map +1 -0
  191. package/dist/models/PredictionMarketV3_2Contract.js +169 -0
  192. package/dist/models/PredictionMarketV3_2Contract.js.map +1 -0
  193. package/dist/models/RealitioERC20Contract.d.ts +16 -0
  194. package/dist/models/RealitioERC20Contract.d.ts.map +1 -0
  195. package/dist/models/RealitioERC20Contract.js +18 -0
  196. package/dist/models/RealitioERC20Contract.js.map +1 -0
  197. package/dist/models/VotingContract.d.ts +38 -0
  198. package/dist/models/VotingContract.d.ts.map +1 -0
  199. package/dist/models/VotingContract.js +85 -0
  200. package/dist/models/VotingContract.js.map +1 -0
  201. package/dist/models/WETH9Contract.d.ts +29 -0
  202. package/dist/models/WETH9Contract.d.ts.map +1 -0
  203. package/dist/models/WETH9Contract.js +44 -0
  204. package/dist/models/WETH9Contract.js.map +1 -0
  205. package/dist/models/index.d.ts +18 -0
  206. package/dist/models/index.d.ts.map +1 -0
  207. package/dist/models/index.js +37 -0
  208. package/dist/models/index.js.map +1 -0
  209. package/dist/types/contracts.d.ts +46 -0
  210. package/dist/types/contracts.d.ts.map +1 -0
  211. package/dist/types/contracts.js +3 -0
  212. package/dist/types/contracts.js.map +1 -0
  213. package/dist/types/index.d.ts +1 -0
  214. package/dist/types/index.d.ts.map +1 -0
  215. package/dist/types/index.js +3 -0
  216. package/dist/types/index.js.map +1 -0
  217. package/dist/utils/Account.d.ts +34 -0
  218. package/dist/utils/Account.d.ts.map +1 -0
  219. package/dist/utils/Account.js +38 -0
  220. package/dist/utils/Account.js.map +1 -0
  221. package/dist/utils/Contract.d.ts +31 -0
  222. package/dist/utils/Contract.d.ts.map +1 -0
  223. package/dist/utils/Contract.js +123 -0
  224. package/dist/utils/Contract.js.map +1 -0
  225. package/dist/utils/Numbers.d.ts +27 -0
  226. package/dist/utils/Numbers.d.ts.map +1 -0
  227. package/dist/utils/Numbers.js +87 -0
  228. package/dist/utils/Numbers.js.map +1 -0
  229. package/foundry.toml +11 -0
  230. package/lib/openzeppelin-contracts/.changeset/all-geese-stand.md +5 -0
  231. package/lib/openzeppelin-contracts/.changeset/clean-ways-push.md +5 -0
  232. package/lib/openzeppelin-contracts/.changeset/config.json +12 -0
  233. package/lib/openzeppelin-contracts/.changeset/dull-students-eat.md +5 -0
  234. package/lib/openzeppelin-contracts/.changeset/eight-radios-check.md +5 -0
  235. package/lib/openzeppelin-contracts/.changeset/fine-frogs-bake.md +5 -0
  236. package/lib/openzeppelin-contracts/.changeset/full-ways-help.md +5 -0
  237. package/lib/openzeppelin-contracts/.changeset/funny-years-yawn.md +5 -0
  238. package/lib/openzeppelin-contracts/.changeset/hot-grapes-lie.md +5 -0
  239. package/lib/openzeppelin-contracts/.changeset/lazy-poets-cheer.md +5 -0
  240. package/lib/openzeppelin-contracts/.changeset/long-hornets-mate.md +5 -0
  241. package/lib/openzeppelin-contracts/.changeset/lucky-donuts-scream.md +5 -0
  242. package/lib/openzeppelin-contracts/.changeset/major-feet-write.md +5 -0
  243. package/lib/openzeppelin-contracts/.changeset/new-days-tease.md +5 -0
  244. package/lib/openzeppelin-contracts/.changeset/nice-rings-wish.md +5 -0
  245. package/lib/openzeppelin-contracts/.changeset/pink-dolls-shop.md +5 -0
  246. package/lib/openzeppelin-contracts/.changeset/popular-geese-tan.md +5 -0
  247. package/lib/openzeppelin-contracts/.changeset/proud-tables-sip.md +5 -0
  248. package/lib/openzeppelin-contracts/.changeset/public-crabs-heal.md +5 -0
  249. package/lib/openzeppelin-contracts/.changeset/quiet-kiwis-feel.md +5 -0
  250. package/lib/openzeppelin-contracts/.changeset/rare-shirts-unite.md +5 -0
  251. package/lib/openzeppelin-contracts/.changeset/rich-cows-repair.md +5 -0
  252. package/lib/openzeppelin-contracts/.changeset/ripe-bears-hide.md +5 -0
  253. package/lib/openzeppelin-contracts/.changeset/rotten-apes-lie.md +5 -0
  254. package/lib/openzeppelin-contracts/.changeset/social-walls-obey.md +5 -0
  255. package/lib/openzeppelin-contracts/.changeset/sour-pens-shake.md +5 -0
  256. package/lib/openzeppelin-contracts/.changeset/strong-points-change.md +5 -0
  257. package/lib/openzeppelin-contracts/.changeset/tame-bears-mix.md +5 -0
  258. package/lib/openzeppelin-contracts/.changeset/violet-turtles-like.md +5 -0
  259. package/lib/openzeppelin-contracts/.changeset/wet-dodos-reply.md +5 -0
  260. package/lib/openzeppelin-contracts/.changeset/whole-plums-speak.md +5 -0
  261. package/lib/openzeppelin-contracts/.changeset/wild-baths-buy.md +5 -0
  262. package/lib/openzeppelin-contracts/.codecov.yml +4 -0
  263. package/lib/openzeppelin-contracts/.github/CODEOWNERS +10 -0
  264. package/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
  265. package/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  266. package/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +7 -5
  267. package/lib/openzeppelin-contracts/.github/actions/setup/action.yml +9 -7
  268. package/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +57 -0
  269. package/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
  270. package/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
  271. package/lib/openzeppelin-contracts/.github/workflows/checks.yml +67 -25
  272. package/lib/openzeppelin-contracts/.github/workflows/docs.yml +1 -1
  273. package/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +86 -0
  274. package/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
  275. package/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +23 -12
  276. package/lib/openzeppelin-contracts/.gitmodules +7 -0
  277. package/lib/openzeppelin-contracts/.husky/pre-commit +2 -0
  278. package/lib/openzeppelin-contracts/.prettierrc +5 -4
  279. package/lib/openzeppelin-contracts/.solcover.js +19 -13
  280. package/lib/openzeppelin-contracts/CHANGELOG.md +918 -325
  281. package/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +2 -2
  282. package/lib/openzeppelin-contracts/CONTRIBUTING.md +19 -47
  283. package/lib/openzeppelin-contracts/FUNDING.json +10 -0
  284. package/lib/openzeppelin-contracts/GUIDELINES.md +115 -65
  285. package/lib/openzeppelin-contracts/LICENSE +1 -1
  286. package/lib/openzeppelin-contracts/README.md +40 -16
  287. package/lib/openzeppelin-contracts/RELEASING.md +32 -23
  288. package/lib/openzeppelin-contracts/SECURITY.md +34 -11
  289. package/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
  290. package/lib/openzeppelin-contracts/audits/2018-10.pdf +0 -0
  291. package/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
  292. package/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
  293. package/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
  294. package/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
  295. package/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf +0 -0
  296. package/lib/openzeppelin-contracts/audits/2024-12-v5.2.pdf +0 -0
  297. package/lib/openzeppelin-contracts/audits/2025-04-v5.3.pdf +0 -0
  298. package/lib/openzeppelin-contracts/audits/README.md +20 -0
  299. package/lib/openzeppelin-contracts/certora/Makefile +44 -14
  300. package/lib/openzeppelin-contracts/certora/README.md +43 -39
  301. package/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
  302. package/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
  303. package/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol +6 -0
  304. package/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol +36 -0
  305. package/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol +116 -0
  306. package/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
  307. package/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
  308. package/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol +16 -0
  309. package/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol +34 -0
  310. package/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
  311. package/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol +33 -0
  312. package/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
  313. package/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol +55 -0
  314. package/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol +35 -0
  315. package/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol +23 -0
  316. package/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol +14 -0
  317. package/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol +10 -0
  318. package/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol +10 -0
  319. package/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol +18 -0
  320. package/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol +13 -0
  321. package/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
  322. package/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
  323. package/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
  324. package/lib/openzeppelin-contracts/certora/run.js +168 -0
  325. package/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
  326. package/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
  327. package/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec +34 -0
  328. package/lib/openzeppelin-contracts/certora/specs/AccessManager.spec +826 -0
  329. package/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
  330. package/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
  331. package/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
  332. package/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
  333. package/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
  334. package/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
  335. package/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
  336. package/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
  337. package/lib/openzeppelin-contracts/certora/specs/Nonces.spec +92 -0
  338. package/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
  339. package/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
  340. package/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
  341. package/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
  342. package/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +12 -0
  343. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
  344. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
  345. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec +5 -0
  346. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec +33 -0
  347. package/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
  348. package/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
  349. package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
  350. package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
  351. package/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
  352. package/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
  353. package/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
  354. package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
  355. package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
  356. package/lib/openzeppelin-contracts/certora/specs.json +110 -0
  357. package/lib/openzeppelin-contracts/contracts/access/AccessControl.sol +41 -81
  358. package/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol +20 -10
  359. package/lib/openzeppelin-contracts/contracts/access/Ownable.sol +29 -12
  360. package/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol +16 -6
  361. package/lib/openzeppelin-contracts/contracts/access/README.adoc +23 -3
  362. package/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol +372 -0
  363. package/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol +81 -0
  364. package/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol +192 -0
  365. package/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol +31 -0
  366. package/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol +112 -0
  367. package/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol +740 -0
  368. package/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol +36 -0
  369. package/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol +32 -0
  370. package/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol +399 -0
  371. package/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol +14 -0
  372. package/lib/openzeppelin-contracts/contracts/account/Account.sol +144 -0
  373. package/lib/openzeppelin-contracts/contracts/account/README.adoc +30 -0
  374. package/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579.sol +413 -0
  375. package/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579Hooked.sol +106 -0
  376. package/lib/openzeppelin-contracts/contracts/account/extensions/draft-ERC7821.sol +69 -0
  377. package/lib/openzeppelin-contracts/contracts/account/utils/EIP7702Utils.sol +20 -0
  378. package/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol +159 -0
  379. package/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol +280 -0
  380. package/lib/openzeppelin-contracts/contracts/finance/README.adoc +1 -7
  381. package/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol +42 -32
  382. package/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol +54 -0
  383. package/lib/openzeppelin-contracts/contracts/governance/Governor.sol +474 -253
  384. package/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol +236 -58
  385. package/lib/openzeppelin-contracts/contracts/governance/README.adoc +37 -16
  386. package/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol +153 -108
  387. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol +190 -0
  388. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol +222 -0
  389. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol +22 -33
  390. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorNoncesKeyed.sol +90 -0
  391. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol +24 -40
  392. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalGuardian.sol +58 -0
  393. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSequentialProposalId.sol +75 -0
  394. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol +19 -27
  395. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol +125 -0
  396. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSuperQuorum.sol +58 -0
  397. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol +346 -0
  398. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol +47 -75
  399. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol +57 -56
  400. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol +43 -11
  401. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol +38 -44
  402. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesSuperQuorumFraction.sol +134 -0
  403. package/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol +16 -18
  404. package/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol +116 -75
  405. package/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol +84 -0
  406. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol +3 -3
  407. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol +3 -3
  408. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol +3 -3
  409. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol +5 -7
  410. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol +54 -63
  411. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol +20 -20
  412. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol +19 -23
  413. package/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol +3 -3
  414. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol +17 -3
  415. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol +109 -3
  416. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol +24 -0
  417. package/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol +3 -3
  418. package/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol +3 -3
  419. package/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol +2 -4
  420. package/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol +8 -0
  421. package/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol +10 -9
  422. package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol +4 -4
  423. package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol +4 -6
  424. package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol +4 -6
  425. package/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol +8 -18
  426. package/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol +20 -0
  427. package/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol +28 -0
  428. package/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol +16 -0
  429. package/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol +9 -0
  430. package/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol +17 -0
  431. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol +3 -3
  432. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol +3 -3
  433. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol +3 -3
  434. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol +3 -3
  435. package/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol +197 -3
  436. package/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol +32 -3
  437. package/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol +32 -3
  438. package/lib/openzeppelin-contracts/contracts/interfaces/IERC7913.sol +17 -0
  439. package/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +50 -1
  440. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol +3 -3
  441. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol +253 -0
  442. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol +161 -0
  443. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6909.sol +125 -0
  444. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol +226 -0
  445. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol +17 -0
  446. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7786.sol +64 -0
  447. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7802.sol +30 -0
  448. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7821.sol +43 -0
  449. package/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol +62 -15
  450. package/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol +372 -0
  451. package/lib/openzeppelin-contracts/contracts/metatx/README.adoc +6 -1
  452. package/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol +34 -0
  453. package/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol +20 -0
  454. package/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol +124 -4
  455. package/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol +69 -0
  456. package/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol +19 -0
  457. package/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol +20 -0
  458. package/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol +26 -5
  459. package/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol +34 -0
  460. package/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol +9 -7
  461. package/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol +10 -6
  462. package/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol +16 -0
  463. package/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol +7 -9
  464. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +4 -4
  465. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol +1 -1
  466. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol +1 -1
  467. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol +1 -1
  468. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol +2 -2
  469. package/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol +10 -4
  470. package/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol +6 -6
  471. package/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol +1 -1
  472. package/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol +6 -6
  473. package/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol +62 -0
  474. package/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol +52 -0
  475. package/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol +23 -0
  476. package/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol +7 -12
  477. package/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol +2 -2
  478. package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol +4 -4
  479. package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol +13 -6
  480. package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol +50 -0
  481. package/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol +2 -2
  482. package/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol +2 -2
  483. package/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol +55 -0
  484. package/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol +61 -15
  485. package/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol +26 -0
  486. package/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol +61 -0
  487. package/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol +27 -0
  488. package/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol +42 -0
  489. package/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol +20 -18
  490. package/lib/openzeppelin-contracts/contracts/mocks/account/AccountMock.sol +169 -0
  491. package/lib/openzeppelin-contracts/contracts/mocks/account/modules/ERC7579Mock.sol +122 -0
  492. package/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol +23 -0
  493. package/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol +1 -1
  494. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +22 -0
  495. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +109 -0
  496. package/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +9 -0
  497. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +25 -0
  498. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +24 -0
  499. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +23 -0
  500. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +14 -0
  501. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +16 -0
  502. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +17 -0
  503. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +20 -0
  504. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +37 -0
  505. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +80 -0
  506. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +21 -0
  507. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +32 -0
  508. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +28 -0
  509. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +21 -0
  510. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +7 -0
  511. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +11 -0
  512. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +26 -0
  513. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +19 -0
  514. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +27 -0
  515. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +15 -0
  516. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol +18 -0
  517. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol +14 -0
  518. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol +14 -0
  519. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorNoncesKeyedMock.sol +45 -0
  520. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol +40 -0
  521. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorProposalGuardianMock.sol +27 -0
  522. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSequentialProposalIdMock.sol +39 -0
  523. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol +79 -0
  524. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSuperQuorumMock.sol +95 -0
  525. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol +70 -0
  526. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol +69 -0
  527. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol +69 -0
  528. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol +20 -0
  529. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMock.sol +37 -0
  530. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol +51 -0
  531. package/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol +11 -0
  532. package/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol +19 -0
  533. package/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol +35 -0
  534. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol +74 -0
  535. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol +13 -0
  536. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol +33 -0
  537. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol +52 -0
  538. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol +34 -0
  539. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol +47 -0
  540. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol +10 -0
  541. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol +26 -0
  542. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol +17 -0
  543. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol +9 -0
  544. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol +26 -0
  545. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol +13 -0
  546. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol +38 -0
  547. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol +16 -0
  548. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol +8 -0
  549. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol +28 -0
  550. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol +39 -0
  551. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol +19 -0
  552. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol +31 -0
  553. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol +253 -0
  554. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol +29 -0
  555. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol +23 -0
  556. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol +17 -0
  557. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol +17 -0
  558. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol +40 -0
  559. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol +42 -0
  560. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol +61 -0
  561. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol +47 -0
  562. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol +17 -0
  563. package/lib/openzeppelin-contracts/contracts/mocks/utils/cryptography/ERC7739Mock.sol +13 -0
  564. package/lib/openzeppelin-contracts/contracts/package.json +2 -2
  565. package/lib/openzeppelin-contracts/contracts/proxy/Clones.sol +197 -24
  566. package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol +21 -13
  567. package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol +177 -0
  568. package/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol +4 -21
  569. package/lib/openzeppelin-contracts/contracts/proxy/README.adoc +13 -11
  570. package/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol +23 -27
  571. package/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol +3 -3
  572. package/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol +16 -11
  573. package/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol +17 -53
  574. package/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +80 -86
  575. package/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol +108 -35
  576. package/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol +81 -30
  577. package/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol +197 -325
  578. package/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol +28 -30
  579. package/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol +7 -6
  580. package/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +6 -12
  581. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol +11 -23
  582. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol +11 -17
  583. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol +45 -21
  584. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol +9 -11
  585. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol +4 -6
  586. package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol +11 -7
  587. package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol +88 -0
  588. package/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol +137 -221
  589. package/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol +13 -16
  590. package/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +28 -36
  591. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol +135 -0
  592. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol +13 -13
  593. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol +27 -10
  594. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol +56 -31
  595. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol +9 -15
  596. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol +77 -0
  597. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol +43 -235
  598. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol +48 -22
  599. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol +130 -132
  600. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol +4 -6
  601. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol +90 -0
  602. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Bridgeable.sol +50 -0
  603. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol +119 -0
  604. package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol +95 -0
  605. package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol +241 -77
  606. package/lib/openzeppelin-contracts/contracts/token/ERC6909/README.adoc +27 -0
  607. package/lib/openzeppelin-contracts/contracts/token/ERC6909/draft-ERC6909.sol +224 -0
  608. package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909ContentURI.sol +53 -0
  609. package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909Metadata.sol +77 -0
  610. package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupply.sol +35 -0
  611. package/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol +250 -326
  612. package/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol +17 -27
  613. package/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol +6 -5
  614. package/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +11 -12
  615. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol +9 -9
  616. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol +82 -54
  617. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol +61 -56
  618. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol +12 -15
  619. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol +10 -22
  620. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol +25 -29
  621. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol +22 -16
  622. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol +102 -0
  623. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol +3 -3
  624. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol +3 -3
  625. package/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol +7 -11
  626. package/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol +50 -0
  627. package/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol +56 -28
  628. package/lib/openzeppelin-contracts/contracts/token/common/README.adoc +2 -2
  629. package/lib/openzeppelin-contracts/contracts/utils/Address.sol +51 -146
  630. package/lib/openzeppelin-contracts/contracts/utils/Arrays.sol +481 -25
  631. package/lib/openzeppelin-contracts/contracts/utils/Base64.sol +65 -38
  632. package/lib/openzeppelin-contracts/contracts/utils/Blockhash.sol +52 -0
  633. package/lib/openzeppelin-contracts/contracts/utils/Bytes.sol +166 -0
  634. package/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol +54 -0
  635. package/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol +51 -0
  636. package/lib/openzeppelin-contracts/contracts/utils/Calldata.sol +25 -0
  637. package/lib/openzeppelin-contracts/contracts/utils/Comparators.sol +19 -0
  638. package/lib/openzeppelin-contracts/contracts/utils/Context.sol +6 -2
  639. package/lib/openzeppelin-contracts/contracts/utils/Create2.sol +29 -20
  640. package/lib/openzeppelin-contracts/contracts/utils/Errors.sol +34 -0
  641. package/lib/openzeppelin-contracts/contracts/utils/Memory.sol +44 -0
  642. package/lib/openzeppelin-contracts/contracts/utils/Multicall.sol +19 -6
  643. package/lib/openzeppelin-contracts/contracts/utils/Nonces.sol +46 -0
  644. package/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol +74 -0
  645. package/lib/openzeppelin-contracts/contracts/utils/Packing.sol +1656 -0
  646. package/lib/openzeppelin-contracts/contracts/utils/Panic.sol +57 -0
  647. package/lib/openzeppelin-contracts/contracts/utils/Pausable.sol +112 -0
  648. package/lib/openzeppelin-contracts/contracts/utils/README.adoc +79 -45
  649. package/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol +87 -0
  650. package/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol +61 -0
  651. package/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol +122 -0
  652. package/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol +155 -0
  653. package/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol +72 -17
  654. package/lib/openzeppelin-contracts/contracts/utils/Strings.sol +453 -16
  655. package/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol +183 -0
  656. package/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol +96 -96
  657. package/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol +96 -40
  658. package/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol +31 -0
  659. package/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol +362 -71
  660. package/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol +99 -0
  661. package/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol +408 -0
  662. package/lib/openzeppelin-contracts/contracts/utils/cryptography/README.adoc +67 -0
  663. package/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol +154 -0
  664. package/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol +143 -21
  665. package/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-ERC7739Utils.sol +206 -0
  666. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol +22 -0
  667. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913.sol +251 -0
  668. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913Weighted.sol +207 -0
  669. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerECDSA.sol +55 -0
  670. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7702.sol +24 -0
  671. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7913.sol +62 -0
  672. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerP256.sol +63 -0
  673. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerRSA.sol +64 -0
  674. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/draft-ERC7739.sol +98 -0
  675. package/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913P256Verifier.sol +28 -0
  676. package/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913RSAVerifier.sol +22 -0
  677. package/lib/openzeppelin-contracts/contracts/utils/draft-InteroperableAddress.sol +234 -0
  678. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol +6 -10
  679. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol +18 -21
  680. package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol +5 -5
  681. package/lib/openzeppelin-contracts/contracts/utils/math/Math.sol +580 -176
  682. package/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol +224 -198
  683. package/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol +31 -6
  684. package/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol +14 -9
  685. package/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol +833 -0
  686. package/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol +140 -0
  687. package/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol +46 -60
  688. package/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol +919 -130
  689. package/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol +441 -27
  690. package/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol +256 -0
  691. package/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol +267 -0
  692. package/lib/openzeppelin-contracts/contracts/utils/types/Time.sol +133 -0
  693. package/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol +3 -3
  694. package/lib/openzeppelin-contracts/docs/README.md +16 -0
  695. package/lib/openzeppelin-contracts/docs/antora.yml +2 -1
  696. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
  697. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
  698. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +99 -0
  699. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  700. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  701. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  702. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  703. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  704. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  705. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  706. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  707. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  708. package/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +13 -7
  709. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +168 -97
  710. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
  711. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +354 -0
  712. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
  713. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
  714. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +19 -54
  715. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +13 -55
  716. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +7 -25
  717. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
  718. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +47 -0
  719. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +10 -42
  720. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +4 -82
  721. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
  722. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +85 -167
  723. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +19 -12
  724. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +306 -0
  725. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +4 -5
  726. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +14 -10
  727. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +482 -81
  728. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +1 -1
  729. package/lib/openzeppelin-contracts/docs/templates/contract.hbs +57 -1
  730. package/lib/openzeppelin-contracts/docs/templates/helpers.js +8 -8
  731. package/lib/openzeppelin-contracts/docs/templates/properties.js +47 -8
  732. package/lib/openzeppelin-contracts/eslint.config.mjs +26 -0
  733. package/lib/openzeppelin-contracts/foundry.toml +15 -0
  734. package/lib/openzeppelin-contracts/fv-requirements.txt +4 -0
  735. package/lib/openzeppelin-contracts/hardhat/async-test-sanity.js +10 -0
  736. package/lib/openzeppelin-contracts/hardhat/common-contracts.js +69 -0
  737. package/lib/openzeppelin-contracts/hardhat/env-artifacts.js +29 -0
  738. package/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +2 -4
  739. package/lib/openzeppelin-contracts/hardhat/remappings.js +18 -0
  740. package/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +3 -4
  741. package/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
  742. package/lib/openzeppelin-contracts/hardhat.config.js +67 -49
  743. package/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol +404 -0
  744. package/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol +356 -0
  745. package/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
  746. package/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
  747. package/lib/openzeppelin-contracts/lib/forge-std/.gitattributes +1 -0
  748. package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +48 -12
  749. package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml +31 -0
  750. package/lib/openzeppelin-contracts/lib/forge-std/CONTRIBUTING.md +193 -0
  751. package/lib/openzeppelin-contracts/lib/forge-std/README.md +19 -3
  752. package/lib/openzeppelin-contracts/lib/forge-std/foundry.toml +5 -3
  753. package/lib/openzeppelin-contracts/lib/forge-std/package.json +2 -2
  754. package/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py +646 -0
  755. package/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol +7 -3
  756. package/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol +4 -3
  757. package/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol +595 -135
  758. package/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol +146 -48
  759. package/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol +303 -39
  760. package/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol +122 -0
  761. package/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol +129 -25
  762. package/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol +245 -99
  763. package/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol +333 -0
  764. package/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol +283 -0
  765. package/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol +125 -39
  766. package/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol +10 -5
  767. package/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol +2182 -304
  768. package/lib/openzeppelin-contracts/lib/forge-std/src/console.sol +635 -608
  769. package/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol +1 -1543
  770. package/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol +2 -2
  771. package/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
  772. package/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol +13937 -0
  773. package/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol +126 -572
  774. package/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol +166 -62
  775. package/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol +348 -35
  776. package/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol +15 -13
  777. package/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol +49 -0
  778. package/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol +31 -26
  779. package/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol +251 -46
  780. package/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol +110 -0
  781. package/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol +49 -0
  782. package/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol +186 -35
  783. package/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol +18 -0
  784. package/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json +8 -0
  785. package/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml +6 -0
  786. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE +661 -0
  787. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md +97 -0
  788. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol +49 -0
  789. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
  790. package/lib/openzeppelin-contracts/package.json +59 -45
  791. package/lib/openzeppelin-contracts/remappings.txt +1 -0
  792. package/lib/openzeppelin-contracts/renovate.json +2 -9
  793. package/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +28 -0
  794. package/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +130 -92
  795. package/lib/openzeppelin-contracts/scripts/checks/coverage.sh +24 -0
  796. package/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +39 -0
  797. package/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +28 -23
  798. package/lib/openzeppelin-contracts/scripts/checks/pragma-validity.js +45 -0
  799. package/lib/openzeppelin-contracts/scripts/fetch-common-contracts.js +50 -0
  800. package/lib/openzeppelin-contracts/scripts/gen-nav.js +62 -22
  801. package/lib/openzeppelin-contracts/scripts/generate/format-lines.js +4 -4
  802. package/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js +5 -0
  803. package/lib/openzeppelin-contracts/scripts/generate/run.js +38 -23
  804. package/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js +386 -0
  805. package/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js +9 -0
  806. package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +67 -128
  807. package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +18 -0
  808. package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +141 -0
  809. package/lib/openzeppelin-contracts/scripts/generate/templates/Enumerable.opts.js +53 -0
  810. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +269 -84
  811. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +252 -36
  812. package/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js +187 -0
  813. package/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js +11 -0
  814. package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js +92 -0
  815. package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js +3 -0
  816. package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js +48 -0
  817. package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +50 -82
  818. package/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js +15 -0
  819. package/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js +119 -0
  820. package/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js +127 -0
  821. package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +77 -0
  822. package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js +57 -0
  823. package/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js +80 -0
  824. package/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js +35 -0
  825. package/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +18 -18
  826. package/lib/openzeppelin-contracts/scripts/get-contracts-metadata.js +55 -0
  827. package/lib/openzeppelin-contracts/scripts/helpers.js +4 -20
  828. package/lib/openzeppelin-contracts/scripts/minimize-pragma.js +138 -0
  829. package/lib/openzeppelin-contracts/scripts/prepack.sh +14 -3
  830. package/lib/openzeppelin-contracts/scripts/prepare-docs.sh +12 -1
  831. package/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
  832. package/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +6 -7
  833. package/lib/openzeppelin-contracts/scripts/release/update-comment.js +2 -4
  834. package/lib/openzeppelin-contracts/scripts/release/version.sh +4 -2
  835. package/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
  836. package/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
  837. package/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
  838. package/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
  839. package/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
  840. package/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
  841. package/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
  842. package/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
  843. package/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
  844. package/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +4 -4
  845. package/lib/openzeppelin-contracts/scripts/set-max-old-space-size.sh +10 -0
  846. package/lib/openzeppelin-contracts/scripts/solc-versions.js +15 -0
  847. package/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
  848. package/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +8 -0
  849. package/lib/openzeppelin-contracts/scripts/update-docs-branch.js +15 -5
  850. package/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
  851. package/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
  852. package/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
  853. package/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
  854. package/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +50 -0
  855. package/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +398 -0
  856. package/lib/openzeppelin-contracts/slither.config.json +3 -4
  857. package/lib/openzeppelin-contracts/solhint.config.js +29 -0
  858. package/lib/openzeppelin-contracts/test/TESTING.md +1 -1
  859. package/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js +756 -98
  860. package/lib/openzeppelin-contracts/test/access/AccessControl.test.js +13 -7
  861. package/lib/openzeppelin-contracts/test/access/Ownable.test.js +50 -28
  862. package/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js +77 -32
  863. package/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
  864. package/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js +24 -0
  865. package/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js +146 -0
  866. package/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js +257 -0
  867. package/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js +456 -0
  868. package/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js +2489 -0
  869. package/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js +112 -0
  870. package/lib/openzeppelin-contracts/test/account/Account.behavior.js +144 -0
  871. package/lib/openzeppelin-contracts/test/account/Account.test.js +48 -0
  872. package/lib/openzeppelin-contracts/test/account/AccountECDSA.test.js +52 -0
  873. package/lib/openzeppelin-contracts/test/account/AccountERC7702.t.sol +103 -0
  874. package/lib/openzeppelin-contracts/test/account/AccountERC7702.test.js +52 -0
  875. package/lib/openzeppelin-contracts/test/account/AccountERC7913.test.js +116 -0
  876. package/lib/openzeppelin-contracts/test/account/AccountMultiSigner.test.js +326 -0
  877. package/lib/openzeppelin-contracts/test/account/AccountMultiSignerWeighted.test.js +312 -0
  878. package/lib/openzeppelin-contracts/test/account/AccountP256.test.js +58 -0
  879. package/lib/openzeppelin-contracts/test/account/AccountRSA.test.js +58 -0
  880. package/lib/openzeppelin-contracts/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
  881. package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.behavior.js +563 -0
  882. package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.test.js +60 -0
  883. package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
  884. package/lib/openzeppelin-contracts/test/account/extensions/ERC7821.behavior.js +145 -0
  885. package/lib/openzeppelin-contracts/test/account/utils/EIP7702Utils.test.js +53 -0
  886. package/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js +289 -0
  887. package/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
  888. package/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js +399 -0
  889. package/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi +1 -0
  890. package/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode +0 -0
  891. package/lib/openzeppelin-contracts/test/bin/EntryPoint080.abi +1 -0
  892. package/lib/openzeppelin-contracts/test/bin/EntryPoint080.bytecode +0 -0
  893. package/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi +1 -0
  894. package/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode +0 -0
  895. package/lib/openzeppelin-contracts/test/bin/SenderCreator080.abi +1 -0
  896. package/lib/openzeppelin-contracts/test/bin/SenderCreator080.bytecode +0 -0
  897. package/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js +59 -46
  898. package/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js +35 -37
  899. package/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js +70 -0
  900. package/lib/openzeppelin-contracts/test/governance/Governor.t.sol +59 -0
  901. package/lib/openzeppelin-contracts/test/governance/Governor.test.js +938 -590
  902. package/lib/openzeppelin-contracts/test/governance/TimelockController.test.js +910 -765
  903. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
  904. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
  905. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js +127 -100
  906. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
  907. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js +181 -173
  908. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
  909. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
  910. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js +155 -0
  911. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
  912. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
  913. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
  914. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js +419 -339
  915. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js +468 -384
  916. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js +161 -133
  917. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
  918. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js +234 -155
  919. package/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js +28 -0
  920. package/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js +254 -273
  921. package/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js +89 -48
  922. package/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js +152 -0
  923. package/lib/openzeppelin-contracts/test/helpers/access-manager.js +85 -0
  924. package/lib/openzeppelin-contracts/test/helpers/account.js +14 -0
  925. package/lib/openzeppelin-contracts/test/helpers/chains.js +56 -0
  926. package/lib/openzeppelin-contracts/test/helpers/constants.js +7 -0
  927. package/lib/openzeppelin-contracts/test/helpers/deploy.js +14 -0
  928. package/lib/openzeppelin-contracts/test/helpers/eip712-types.js +61 -0
  929. package/lib/openzeppelin-contracts/test/helpers/eip712.js +41 -26
  930. package/lib/openzeppelin-contracts/test/helpers/enums.js +9 -24
  931. package/lib/openzeppelin-contracts/test/helpers/erc4337.js +217 -0
  932. package/lib/openzeppelin-contracts/test/helpers/erc7579.js +58 -0
  933. package/lib/openzeppelin-contracts/test/helpers/erc7739.js +118 -0
  934. package/lib/openzeppelin-contracts/test/helpers/governance.js +194 -188
  935. package/lib/openzeppelin-contracts/test/helpers/iterate.js +41 -0
  936. package/lib/openzeppelin-contracts/test/helpers/math.js +33 -0
  937. package/lib/openzeppelin-contracts/test/helpers/methods.js +14 -0
  938. package/lib/openzeppelin-contracts/test/helpers/precompiles.js +12 -0
  939. package/lib/openzeppelin-contracts/test/helpers/random.js +24 -0
  940. package/lib/openzeppelin-contracts/test/helpers/signers.js +184 -0
  941. package/lib/openzeppelin-contracts/test/helpers/storage.js +48 -0
  942. package/lib/openzeppelin-contracts/test/helpers/strings.js +5 -0
  943. package/lib/openzeppelin-contracts/test/helpers/time.js +33 -0
  944. package/lib/openzeppelin-contracts/test/helpers/txpool.js +9 -20
  945. package/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js +95 -71
  946. package/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol +279 -0
  947. package/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js +384 -0
  948. package/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js +60 -50
  949. package/lib/openzeppelin-contracts/test/proxy/Clones.t.sol +91 -0
  950. package/lib/openzeppelin-contracts/test/proxy/Clones.test.js +164 -56
  951. package/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js +17 -7
  952. package/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
  953. package/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js +59 -98
  954. package/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js +98 -113
  955. package/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js +34 -29
  956. package/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js +45 -88
  957. package/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +209 -283
  958. package/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js +20 -7
  959. package/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js +94 -96
  960. package/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js +94 -59
  961. package/lib/openzeppelin-contracts/test/sanity.test.js +27 -0
  962. package/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js +530 -541
  963. package/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js +101 -152
  964. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js +35 -36
  965. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js +54 -57
  966. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js +59 -51
  967. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +37 -33
  968. package/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js +40 -46
  969. package/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
  970. package/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js +142 -206
  971. package/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js +133 -243
  972. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js +370 -0
  973. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js +96 -10
  974. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js +43 -15
  975. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js +102 -82
  976. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js +59 -64
  977. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
  978. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js +490 -462
  979. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js +133 -120
  980. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
  981. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js +802 -536
  982. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
  983. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
  984. package/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js +387 -179
  985. package/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.behavior.js +216 -0
  986. package/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.test.js +104 -0
  987. package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
  988. package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
  989. package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
  990. package/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js +488 -479
  991. package/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js +16 -11
  992. package/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js +16 -8
  993. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js +43 -44
  994. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol +80 -19
  995. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js +179 -176
  996. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js +34 -51
  997. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js +41 -24
  998. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js +69 -44
  999. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js +187 -167
  1000. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
  1001. package/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js +12 -16
  1002. package/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
  1003. package/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js +80 -88
  1004. package/lib/openzeppelin-contracts/test/utils/Address.test.js +159 -260
  1005. package/lib/openzeppelin-contracts/test/utils/Arrays.t.sol +31 -0
  1006. package/lib/openzeppelin-contracts/test/utils/Arrays.test.js +217 -95
  1007. package/lib/openzeppelin-contracts/test/utils/Base64.t.sol +34 -0
  1008. package/lib/openzeppelin-contracts/test/utils/Base64.test.js +48 -22
  1009. package/lib/openzeppelin-contracts/test/utils/Blockhash.t.sol +101 -0
  1010. package/lib/openzeppelin-contracts/test/utils/Blockhash.test.js +59 -0
  1011. package/lib/openzeppelin-contracts/test/utils/Bytes.t.sol +74 -0
  1012. package/lib/openzeppelin-contracts/test/utils/Bytes.test.js +212 -0
  1013. package/lib/openzeppelin-contracts/test/utils/CAIP.test.js +56 -0
  1014. package/lib/openzeppelin-contracts/test/utils/Calldata.test.js +22 -0
  1015. package/lib/openzeppelin-contracts/test/utils/Context.behavior.js +26 -20
  1016. package/lib/openzeppelin-contracts/test/utils/Context.test.js +10 -9
  1017. package/lib/openzeppelin-contracts/test/utils/Create2.t.sol +17 -0
  1018. package/lib/openzeppelin-contracts/test/utils/Create2.test.js +147 -49
  1019. package/lib/openzeppelin-contracts/test/utils/Memory.t.sol +21 -0
  1020. package/lib/openzeppelin-contracts/test/utils/Memory.test.js +39 -0
  1021. package/lib/openzeppelin-contracts/test/utils/Multicall.test.js +50 -35
  1022. package/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js +189 -0
  1023. package/lib/openzeppelin-contracts/test/utils/Nonces.test.js +16 -0
  1024. package/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js +17 -0
  1025. package/lib/openzeppelin-contracts/test/utils/Packing.t.sol +993 -0
  1026. package/lib/openzeppelin-contracts/test/utils/Packing.test.js +70 -0
  1027. package/lib/openzeppelin-contracts/test/utils/Panic.test.js +37 -0
  1028. package/lib/openzeppelin-contracts/test/utils/Pausable.test.js +90 -0
  1029. package/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js +50 -0
  1030. package/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol +109 -0
  1031. package/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js +64 -0
  1032. package/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol +248 -0
  1033. package/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js +58 -0
  1034. package/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js +55 -92
  1035. package/lib/openzeppelin-contracts/test/utils/Strings.t.sol +50 -0
  1036. package/lib/openzeppelin-contracts/test/utils/Strings.test.js +323 -49
  1037. package/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js +59 -0
  1038. package/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js +167 -132
  1039. package/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js +100 -52
  1040. package/lib/openzeppelin-contracts/test/utils/cryptography/ERC1271.behavior.js +111 -0
  1041. package/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739.test.js +42 -0
  1042. package/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739Utils.test.js +203 -0
  1043. package/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js +210 -176
  1044. package/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
  1045. package/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js +97 -0
  1046. package/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol +65 -0
  1047. package/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js +182 -0
  1048. package/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js +17 -0
  1049. package/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js +102 -0
  1050. package/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
  1051. package/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js +397 -56
  1052. package/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
  1053. package/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.t.sol +99 -0
  1054. package/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.test.js +170 -0
  1055. package/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js +11 -6
  1056. package/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js +84 -142
  1057. package/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js +109 -90
  1058. package/lib/openzeppelin-contracts/test/utils/math/Math.t.sol +255 -24
  1059. package/lib/openzeppelin-contracts/test/utils/math/Math.test.js +616 -215
  1060. package/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js +84 -89
  1061. package/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol +80 -0
  1062. package/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js +25 -65
  1063. package/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js +83 -79
  1064. package/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol +440 -0
  1065. package/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js +147 -0
  1066. package/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js +83 -0
  1067. package/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js +47 -41
  1068. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js +122 -89
  1069. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js +70 -73
  1070. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js +105 -61
  1071. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js +53 -33
  1072. package/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol +74 -0
  1073. package/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js +113 -0
  1074. package/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js +180 -0
  1075. package/lib/openzeppelin-contracts/test/utils/types/Time.test.js +135 -0
  1076. package/lib/openzeppelin-contracts-upgradeable/.changeset/all-geese-stand.md +5 -0
  1077. package/lib/openzeppelin-contracts-upgradeable/.changeset/clean-ways-push.md +5 -0
  1078. package/lib/openzeppelin-contracts-upgradeable/.changeset/config.json +12 -0
  1079. package/lib/openzeppelin-contracts-upgradeable/.changeset/dull-students-eat.md +5 -0
  1080. package/lib/openzeppelin-contracts-upgradeable/.changeset/eight-radios-check.md +5 -0
  1081. package/lib/openzeppelin-contracts-upgradeable/.changeset/fine-frogs-bake.md +5 -0
  1082. package/lib/openzeppelin-contracts-upgradeable/.changeset/full-ways-help.md +5 -0
  1083. package/lib/openzeppelin-contracts-upgradeable/.changeset/funny-years-yawn.md +5 -0
  1084. package/lib/openzeppelin-contracts-upgradeable/.changeset/hot-grapes-lie.md +5 -0
  1085. package/lib/openzeppelin-contracts-upgradeable/.changeset/lazy-poets-cheer.md +5 -0
  1086. package/lib/openzeppelin-contracts-upgradeable/.changeset/long-hornets-mate.md +5 -0
  1087. package/lib/openzeppelin-contracts-upgradeable/.changeset/lucky-donuts-scream.md +5 -0
  1088. package/lib/openzeppelin-contracts-upgradeable/.changeset/major-feet-write.md +5 -0
  1089. package/lib/openzeppelin-contracts-upgradeable/.changeset/new-days-tease.md +5 -0
  1090. package/lib/openzeppelin-contracts-upgradeable/.changeset/nice-rings-wish.md +5 -0
  1091. package/lib/openzeppelin-contracts-upgradeable/.changeset/pink-dolls-shop.md +5 -0
  1092. package/lib/openzeppelin-contracts-upgradeable/.changeset/popular-geese-tan.md +5 -0
  1093. package/lib/openzeppelin-contracts-upgradeable/.changeset/proud-tables-sip.md +5 -0
  1094. package/lib/openzeppelin-contracts-upgradeable/.changeset/public-crabs-heal.md +5 -0
  1095. package/lib/openzeppelin-contracts-upgradeable/.changeset/quiet-kiwis-feel.md +5 -0
  1096. package/lib/openzeppelin-contracts-upgradeable/.changeset/rare-shirts-unite.md +5 -0
  1097. package/lib/openzeppelin-contracts-upgradeable/.changeset/rich-cows-repair.md +5 -0
  1098. package/lib/openzeppelin-contracts-upgradeable/.changeset/ripe-bears-hide.md +5 -0
  1099. package/lib/openzeppelin-contracts-upgradeable/.changeset/rotten-apes-lie.md +5 -0
  1100. package/lib/openzeppelin-contracts-upgradeable/.changeset/social-walls-obey.md +5 -0
  1101. package/lib/openzeppelin-contracts-upgradeable/.changeset/sour-pens-shake.md +5 -0
  1102. package/lib/openzeppelin-contracts-upgradeable/.changeset/strong-points-change.md +5 -0
  1103. package/lib/openzeppelin-contracts-upgradeable/.changeset/tame-bears-mix.md +5 -0
  1104. package/lib/openzeppelin-contracts-upgradeable/.changeset/violet-turtles-like.md +5 -0
  1105. package/lib/openzeppelin-contracts-upgradeable/.changeset/wet-dodos-reply.md +5 -0
  1106. package/lib/openzeppelin-contracts-upgradeable/.changeset/whole-plums-speak.md +5 -0
  1107. package/lib/openzeppelin-contracts-upgradeable/.changeset/wild-baths-buy.md +5 -0
  1108. package/lib/openzeppelin-contracts-upgradeable/.codecov.yml +4 -0
  1109. package/lib/openzeppelin-contracts-upgradeable/.github/CODEOWNERS +10 -0
  1110. package/lib/openzeppelin-contracts-upgradeable/.github/ISSUE_TEMPLATE/config.yml +4 -0
  1111. package/lib/openzeppelin-contracts-upgradeable/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  1112. package/lib/openzeppelin-contracts-upgradeable/.github/actions/gas-compare/action.yml +7 -5
  1113. package/lib/openzeppelin-contracts-upgradeable/.github/actions/setup/action.yml +9 -7
  1114. package/lib/openzeppelin-contracts-upgradeable/.github/actions/storage-layout/action.yml +57 -0
  1115. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/actionlint.yml +18 -0
  1116. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/changeset.yml +28 -0
  1117. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/checks.yml +67 -36
  1118. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/docs.yml +1 -1
  1119. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/formal-verification.yml +86 -0
  1120. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/release-cycle.yml +214 -0
  1121. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/upgradeable.yml +34 -0
  1122. package/lib/openzeppelin-contracts-upgradeable/.gitmodules +11 -0
  1123. package/lib/openzeppelin-contracts-upgradeable/.husky/pre-commit +2 -0
  1124. package/lib/openzeppelin-contracts-upgradeable/.prettierrc +5 -4
  1125. package/lib/openzeppelin-contracts-upgradeable/.solcover.js +19 -13
  1126. package/lib/openzeppelin-contracts-upgradeable/CHANGELOG.md +918 -328
  1127. package/lib/openzeppelin-contracts-upgradeable/CODE_OF_CONDUCT.md +2 -2
  1128. package/lib/openzeppelin-contracts-upgradeable/CONTRIBUTING.md +19 -47
  1129. package/lib/openzeppelin-contracts-upgradeable/FUNDING.json +10 -0
  1130. package/lib/openzeppelin-contracts-upgradeable/GUIDELINES.md +115 -65
  1131. package/lib/openzeppelin-contracts-upgradeable/LICENSE +1 -1
  1132. package/lib/openzeppelin-contracts-upgradeable/README.md +55 -47
  1133. package/lib/openzeppelin-contracts-upgradeable/RELEASING.md +32 -23
  1134. package/lib/openzeppelin-contracts-upgradeable/SECURITY.md +34 -11
  1135. package/lib/openzeppelin-contracts-upgradeable/audits/2017-03.md +292 -0
  1136. package/lib/openzeppelin-contracts-upgradeable/audits/2022-10-Checkpoints.pdf +0 -0
  1137. package/lib/openzeppelin-contracts-upgradeable/audits/2022-10-ERC4626.pdf +0 -0
  1138. package/lib/openzeppelin-contracts-upgradeable/audits/2023-05-v4.9.pdf +0 -0
  1139. package/lib/openzeppelin-contracts-upgradeable/audits/2023-10-v5.0.pdf +0 -0
  1140. package/lib/openzeppelin-contracts-upgradeable/audits/2024-10-v5.1.pdf +0 -0
  1141. package/lib/openzeppelin-contracts-upgradeable/audits/2024-12-v5.2.pdf +0 -0
  1142. package/lib/openzeppelin-contracts-upgradeable/audits/2025-04-v5.3.pdf +0 -0
  1143. package/lib/openzeppelin-contracts-upgradeable/audits/README.md +20 -0
  1144. package/lib/openzeppelin-contracts-upgradeable/certora/Makefile +44 -14
  1145. package/lib/openzeppelin-contracts-upgradeable/certora/README.md +43 -39
  1146. package/lib/openzeppelin-contracts-upgradeable/certora/diff/access_manager_AccessManager.sol.patch +97 -0
  1147. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
  1148. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessControlHarness.sol +6 -0
  1149. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessManagedHarness.sol +36 -0
  1150. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessManagerHarness.sol +116 -0
  1151. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
  1152. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
  1153. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20PermitHarness.sol +16 -0
  1154. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20WrapperHarness.sol +34 -0
  1155. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
  1156. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC721Harness.sol +33 -0
  1157. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
  1158. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/EnumerableMapHarness.sol +55 -0
  1159. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/EnumerableSetHarness.sol +35 -0
  1160. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/InitializableHarness.sol +23 -0
  1161. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/NoncesHarness.sol +14 -0
  1162. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/Ownable2StepHarness.sol +10 -0
  1163. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/OwnableHarness.sol +10 -0
  1164. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/PausableHarness.sol +18 -0
  1165. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/TimelockControllerHarness.sol +13 -0
  1166. package/lib/openzeppelin-contracts-upgradeable/certora/reports/2021-10.pdf +0 -0
  1167. package/lib/openzeppelin-contracts-upgradeable/certora/reports/2022-03.pdf +0 -0
  1168. package/lib/openzeppelin-contracts-upgradeable/certora/reports/2022-05.pdf +0 -0
  1169. package/lib/openzeppelin-contracts-upgradeable/certora/run.js +168 -0
  1170. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessControl.spec +119 -0
  1171. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
  1172. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessManaged.spec +34 -0
  1173. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessManager.spec +826 -0
  1174. package/lib/openzeppelin-contracts-upgradeable/certora/specs/DoubleEndedQueue.spec +300 -0
  1175. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20.spec +352 -0
  1176. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20FlashMint.spec +55 -0
  1177. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20Wrapper.spec +198 -0
  1178. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC721.spec +679 -0
  1179. package/lib/openzeppelin-contracts-upgradeable/certora/specs/EnumerableMap.spec +333 -0
  1180. package/lib/openzeppelin-contracts-upgradeable/certora/specs/EnumerableSet.spec +246 -0
  1181. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Initializable.spec +165 -0
  1182. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Nonces.spec +92 -0
  1183. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Ownable.spec +77 -0
  1184. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Ownable2Step.spec +108 -0
  1185. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Pausable.spec +96 -0
  1186. package/lib/openzeppelin-contracts-upgradeable/certora/specs/TimelockController.spec +274 -0
  1187. package/lib/openzeppelin-contracts-upgradeable/certora/specs/helpers/helpers.spec +12 -0
  1188. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessControl.spec +8 -0
  1189. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
  1190. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessManaged.spec +5 -0
  1191. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessManager.spec +33 -0
  1192. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC20.spec +11 -0
  1193. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC2612.spec +5 -0
  1194. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
  1195. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC3156FlashLender.spec +5 -0
  1196. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC5313.spec +3 -0
  1197. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC721.spec +17 -0
  1198. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC721Receiver.spec +3 -0
  1199. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IOwnable.spec +5 -0
  1200. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IOwnable2Step.spec +7 -0
  1201. package/lib/openzeppelin-contracts-upgradeable/certora/specs.json +110 -0
  1202. package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol +71 -99
  1203. package/lib/openzeppelin-contracts-upgradeable/contracts/access/Ownable2StepUpgradeable.sol +38 -21
  1204. package/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol +50 -26
  1205. package/lib/openzeppelin-contracts-upgradeable/contracts/access/README.adoc +23 -3
  1206. package/lib/openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlDefaultAdminRulesUpgradeable.sol +401 -0
  1207. package/lib/openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlEnumerableUpgradeable.sol +104 -0
  1208. package/lib/openzeppelin-contracts-upgradeable/contracts/access/manager/AccessManagedUpgradeable.sol +133 -0
  1209. package/lib/openzeppelin-contracts-upgradeable/contracts/access/manager/AccessManagerUpgradeable.sol +783 -0
  1210. package/lib/openzeppelin-contracts-upgradeable/contracts/account/README.adoc +30 -0
  1211. package/lib/openzeppelin-contracts-upgradeable/contracts/account/extensions/draft-AccountERC7579HookedUpgradeable.sol +127 -0
  1212. package/lib/openzeppelin-contracts-upgradeable/contracts/account/extensions/draft-AccountERC7579Upgradeable.sol +426 -0
  1213. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/README.adoc +1 -7
  1214. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/VestingWalletCliffUpgradeable.sol +73 -0
  1215. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/VestingWalletUpgradeable.sol +79 -59
  1216. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/GovernorUpgradeable.sol +509 -269
  1217. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/README.adoc +37 -16
  1218. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/TimelockControllerUpgradeable.sol +186 -131
  1219. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingFractionalUpgradeable.sol +214 -0
  1220. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingOverridableUpgradeable.sol +248 -0
  1221. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingSimpleUpgradeable.sol +51 -51
  1222. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorNoncesKeyedUpgradeable.sol +96 -0
  1223. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorPreventLateQuorumUpgradeable.sol +46 -53
  1224. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorProposalGuardianUpgradeable.sol +78 -0
  1225. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSequentialProposalIdUpgradeable.sol +98 -0
  1226. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSettingsUpgradeable.sol +50 -50
  1227. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorStorageUpgradeable.sol +150 -0
  1228. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSuperQuorumUpgradeable.sol +64 -0
  1229. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockAccessUpgradeable.sol +376 -0
  1230. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockCompoundUpgradeable.sol +77 -91
  1231. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockControlUpgradeable.sol +84 -70
  1232. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesQuorumFractionUpgradeable.sol +51 -49
  1233. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesSuperQuorumFractionUpgradeable.sol +155 -0
  1234. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesUpgradeable.sol +60 -23
  1235. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/VotesExtendedUpgradeable.sol +106 -0
  1236. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/VotesUpgradeable.sol +143 -87
  1237. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/README.adoc +50 -1
  1238. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/ERC2771ContextUpgradeable.sol +60 -20
  1239. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/ERC2771ForwarderUpgradeable.sol +380 -0
  1240. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/README.adoc +6 -1
  1241. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessManagedTargetUpgradeable.sol +40 -0
  1242. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessManagerMockUpgradeable.sol +25 -0
  1243. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ArraysMockUpgradeable.sol +133 -26
  1244. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AuthorityMockUpgradeable.sol +95 -0
  1245. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Base64DirtyUpgradeable.sol +25 -0
  1246. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BatchCallerUpgradeable.sol +26 -0
  1247. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CallReceiverMockUpgradeable.sol +35 -17
  1248. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ConstructorMockUpgradeable.sol +39 -0
  1249. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ContextMockUpgradeable.sol +11 -23
  1250. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/DummyImplementationUpgradeable.sol +14 -31
  1251. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EIP712VerifierUpgradeable.sol +22 -0
  1252. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1271WalletMockUpgradeable.sol +12 -29
  1253. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165InterfacesSupportedUpgradeable.sol +6 -20
  1254. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165MaliciousDataUpgradeable.sol +2 -9
  1255. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165MissingDataUpgradeable.sol +2 -9
  1256. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165NotSupportedUpgradeable.sol +2 -9
  1257. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165ReturnBombUpgradeable.sol +5 -12
  1258. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC2771ContextMockUpgradeable.sol +10 -11
  1259. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC3156FlashBorrowerMockUpgradeable.sol +12 -19
  1260. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EtherReceiverMockUpgradeable.sol +4 -11
  1261. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/InitializableMock.sol +6 -6
  1262. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleProofCustomHashMockUpgradeable.sol +68 -0
  1263. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleTreeMockUpgradeable.sol +58 -0
  1264. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallHelperUpgradeable.sol +29 -0
  1265. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MultipleInheritanceInitializableMocks.sol +7 -12
  1266. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/PausableMockUpgradeable.sol +3 -11
  1267. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyAttackUpgradeable.sol +5 -12
  1268. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyMockUpgradeable.sol +13 -13
  1269. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyTransientMockUpgradeable.sol +55 -0
  1270. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/RegressionImplementation.sol +2 -2
  1271. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SingleInheritanceInitializableMocks.sol +2 -2
  1272. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StatelessUpgradeable.sol +61 -0
  1273. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StorageSlotMockUpgradeable.sol +62 -23
  1274. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimelockReentrantUpgradeable.sol +32 -0
  1275. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TransientSlotMockUpgradeable.sol +67 -0
  1276. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UpgradeableBeaconMockUpgradeable.sol +34 -0
  1277. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/VotesExtendedMockUpgradeable.sol +53 -0
  1278. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/VotesMockUpgradeable.sol +28 -27
  1279. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/WithInit.sol +849 -740
  1280. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/AccountMockUpgradeable.sol +223 -0
  1281. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/modules/ERC7579MockUpgradeable.sol +138 -0
  1282. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/utils/ERC7579UtilsMockUpgradeable.sol +29 -0
  1283. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/compound/CompTimelockUpgradeable.sol +2 -9
  1284. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC20WithAutoMinerRewardUpgradeable.sol +28 -0
  1285. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC4626FeesUpgradeable.sol +115 -0
  1286. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/MyNFTUpgradeable.sol +14 -0
  1287. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintBaseUpgradeable.sol +31 -0
  1288. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintMissingUpgradeable.sol +30 -0
  1289. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRoleUpgradeable.sol +29 -0
  1290. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlModifiedUpgradeable.sol +20 -0
  1291. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessManagedERC20MintBaseUpgradeable.sol +22 -0
  1292. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/MyContractOwnableUpgradeable.sol +22 -0
  1293. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyAccountERC7702Upgradeable.sol +26 -0
  1294. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyFactoryAccountUpgradeable.sol +42 -0
  1295. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyGovernorUpgradeable.sol +92 -0
  1296. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenTimestampBasedUpgradeable.sol +39 -0
  1297. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenUpgradeable.sol +28 -0
  1298. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenWrappedUpgradeable.sol +39 -0
  1299. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/GameItemsUpgradeable.sol +27 -0
  1300. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/MyERC115HolderContractUpgradeable.sol +13 -0
  1301. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC20/GLDTokenUpgradeable.sol +17 -0
  1302. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC6909/ERC6909GameItemsUpgradeable.sol +31 -0
  1303. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC721/GameItemUpgradeable.sol +24 -0
  1304. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/Base64NFTUpgradeable.sol +32 -0
  1305. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/MulticallUpgradeable.sol +21 -0
  1306. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorCountingOverridableMockUpgradeable.sol +24 -0
  1307. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorFractionalMockUpgradeable.sol +20 -0
  1308. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorMockUpgradeable.sol +20 -0
  1309. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorNoncesKeyedMockUpgradeable.sol +51 -0
  1310. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorPreventLateQuorumMockUpgradeable.sol +45 -0
  1311. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorProposalGuardianMockUpgradeable.sol +33 -0
  1312. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorSequentialProposalIdMockUpgradeable.sol +45 -0
  1313. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorStorageMockUpgradeable.sol +85 -0
  1314. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorSuperQuorumMockUpgradeable.sol +100 -0
  1315. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockAccessMockUpgradeable.sol +76 -0
  1316. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockCompoundMockUpgradeable.sol +75 -0
  1317. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockControlMockUpgradeable.sol +75 -0
  1318. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorVoteMockUpgradeable.sol +26 -0
  1319. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMockUpgradeable.sol +43 -0
  1320. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorWithParamsMockUpgradeable.sol +57 -0
  1321. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/BadBeaconUpgradeable.sol +22 -0
  1322. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/ClashingImplementationUpgradeable.sol +25 -0
  1323. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/UUPSUpgradeableMockUpgradeable.sol +56 -0
  1324. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1155ReceiverMockUpgradeable.sol +79 -0
  1325. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ForceApproveMockUpgradeable.sol +19 -0
  1326. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363NoReturnMockUpgradeable.sol +39 -0
  1327. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ReceiverMockUpgradeable.sol +57 -0
  1328. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ReturnFalseMockUpgradeable.sol +46 -0
  1329. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363SpenderMockUpgradeable.sol +52 -0
  1330. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ApprovalMockUpgradeable.sol +16 -0
  1331. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20BridgeableMockUpgradeable.sol +31 -0
  1332. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20DecimalsMockUpgradeable.sol +22 -0
  1333. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ExcessDecimalsMockUpgradeable.sol +15 -0
  1334. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20FlashMintMockUpgradeable.sol +32 -0
  1335. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ForceApproveMockUpgradeable.sol +19 -0
  1336. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20GetterHelperUpgradeable.sol +44 -0
  1337. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20MockUpgradeable.sol +21 -0
  1338. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20MulticallMockUpgradeable.sol +14 -0
  1339. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20NoReturnMockUpgradeable.sol +34 -0
  1340. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ReentrantUpgradeable.sol +46 -0
  1341. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ReturnFalseMockUpgradeable.sol +25 -0
  1342. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMockUpgradeable.sol +42 -0
  1343. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesLegacyMockUpgradeable.sol +259 -0
  1344. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesTimestampMockUpgradeable.sol +40 -0
  1345. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626LimitsMockUpgradeable.sol +28 -0
  1346. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626MockUpgradeable.sol +24 -0
  1347. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626OffsetMockUpgradeable.sol +22 -0
  1348. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4646FeesMockUpgradeable.sol +50 -0
  1349. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ConsecutiveEnumerableMockUpgradeable.sol +53 -0
  1350. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ConsecutiveMockUpgradeable.sol +80 -0
  1351. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ReceiverMockUpgradeable.sol +52 -0
  1352. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721URIStorageMockUpgradeable.sol +23 -0
  1353. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/utils/cryptography/ERC7739MockUpgradeable.sol +29 -0
  1354. package/lib/openzeppelin-contracts-upgradeable/contracts/package.json +7 -4
  1355. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/README.adoc +13 -11
  1356. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol +108 -35
  1357. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol +84 -40
  1358. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol +227 -343
  1359. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/README.adoc +6 -12
  1360. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155BurnableUpgradeable.sol +12 -31
  1361. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155PausableUpgradeable.sol +12 -26
  1362. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155SupplyUpgradeable.sol +63 -31
  1363. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155URIStorageUpgradeable.sol +37 -30
  1364. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/utils/ERC1155HolderUpgradeable.sol +13 -15
  1365. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/ERC20Upgradeable.sol +168 -239
  1366. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/README.adoc +28 -36
  1367. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC1363Upgradeable.sol +142 -0
  1368. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20BurnableUpgradeable.sol +14 -21
  1369. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20CappedUpgradeable.sol +45 -23
  1370. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20FlashMintUpgradeable.sol +60 -42
  1371. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20PausableUpgradeable.sol +10 -24
  1372. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20PermitUpgradeable.sol +82 -0
  1373. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20VotesUpgradeable.sol +46 -245
  1374. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20WrapperUpgradeable.sol +71 -34
  1375. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC4626Upgradeable.sol +156 -148
  1376. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20BridgeableUpgradeable.sol +57 -0
  1377. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20TemporaryApprovalUpgradeable.sol +126 -0
  1378. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/README.adoc +27 -0
  1379. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/draft-ERC6909Upgradeable.sol +250 -0
  1380. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909ContentURIUpgradeable.sol +75 -0
  1381. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909MetadataUpgradeable.sol +101 -0
  1382. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupplyUpgradeable.sol +55 -0
  1383. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/ERC721Upgradeable.sol +288 -347
  1384. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/README.adoc +11 -12
  1385. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721BurnableUpgradeable.sol +10 -17
  1386. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721ConsecutiveUpgradeable.sol +106 -69
  1387. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol +100 -83
  1388. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721PausableUpgradeable.sol +13 -24
  1389. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721RoyaltyUpgradeable.sol +11 -30
  1390. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol +45 -42
  1391. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721VotesUpgradeable.sol +20 -21
  1392. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721WrapperUpgradeable.sol +122 -0
  1393. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/utils/ERC721HolderUpgradeable.sol +8 -19
  1394. package/lib/openzeppelin-contracts-upgradeable/contracts/token/common/ERC2981Upgradeable.sol +86 -47
  1395. package/lib/openzeppelin-contracts-upgradeable/contracts/token/common/README.adoc +2 -2
  1396. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol +6 -9
  1397. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/MulticallUpgradeable.sol +20 -28
  1398. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/NoncesKeyedUpgradeable.sol +94 -0
  1399. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/NoncesUpgradeable.sol +66 -0
  1400. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/PausableUpgradeable.sol +133 -0
  1401. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/README.adoc +79 -45
  1402. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardTransientUpgradeable.sol +67 -0
  1403. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardUpgradeable.sol +108 -0
  1404. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/EIP712Upgradeable.sol +127 -41
  1405. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/README.adoc +67 -0
  1406. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/MultiSignerERC7913Upgradeable.sol +276 -0
  1407. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/MultiSignerERC7913WeightedUpgradeable.sol +229 -0
  1408. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerECDSAUpgradeable.sol +74 -0
  1409. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerERC7913Upgradeable.sol +81 -0
  1410. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerP256Upgradeable.sol +82 -0
  1411. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerRSAUpgradeable.sol +83 -0
  1412. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/draft-ERC7739Upgradeable.sol +104 -0
  1413. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol +9 -20
  1414. package/lib/openzeppelin-contracts-upgradeable/docs/antora.yml +2 -1
  1415. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
  1416. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
  1417. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager.svg +99 -0
  1418. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  1419. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  1420. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  1421. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  1422. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  1423. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  1424. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  1425. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  1426. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  1427. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/nav.adoc +13 -7
  1428. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/access-control.adoc +168 -97
  1429. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
  1430. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/accounts.adoc +354 -0
  1431. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
  1432. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
  1433. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc1155.adoc +19 -54
  1434. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20-supply.adoc +13 -55
  1435. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20.adoc +7 -25
  1436. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc4626.adoc +214 -0
  1437. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc6909.adoc +47 -0
  1438. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc721.adoc +10 -42
  1439. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/extending-contracts.adoc +4 -82
  1440. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/faq.adoc +13 -0
  1441. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/governance.adoc +85 -167
  1442. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/index.adoc +19 -12
  1443. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/multisig.adoc +306 -0
  1444. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/tokens.adoc +4 -5
  1445. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/upgradeable.adoc +14 -10
  1446. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/utilities.adoc +482 -81
  1447. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/wizard.adoc +1 -1
  1448. package/lib/openzeppelin-contracts-upgradeable/docs/templates/contract.hbs +57 -1
  1449. package/lib/openzeppelin-contracts-upgradeable/docs/templates/helpers.js +8 -8
  1450. package/lib/openzeppelin-contracts-upgradeable/docs/templates/properties.js +47 -8
  1451. package/lib/openzeppelin-contracts-upgradeable/eslint.config.mjs +26 -0
  1452. package/lib/openzeppelin-contracts-upgradeable/foundry.toml +15 -0
  1453. package/lib/openzeppelin-contracts-upgradeable/fv-requirements.txt +4 -0
  1454. package/lib/openzeppelin-contracts-upgradeable/hardhat/async-test-sanity.js +10 -0
  1455. package/lib/openzeppelin-contracts-upgradeable/hardhat/common-contracts.js +69 -0
  1456. package/lib/openzeppelin-contracts-upgradeable/hardhat/env-artifacts.js +15 -6
  1457. package/lib/openzeppelin-contracts-upgradeable/hardhat/ignore-unreachable-warnings.js +2 -4
  1458. package/lib/openzeppelin-contracts-upgradeable/hardhat/remappings.js +18 -0
  1459. package/lib/openzeppelin-contracts-upgradeable/hardhat/skip-foundry-tests.js +3 -4
  1460. package/lib/openzeppelin-contracts-upgradeable/hardhat/task-test-get-files.js +22 -16
  1461. package/lib/openzeppelin-contracts-upgradeable/hardhat.config.js +67 -49
  1462. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ERC4626.prop.sol +404 -0
  1463. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ERC4626.test.sol +356 -0
  1464. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/LICENSE +661 -0
  1465. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/README.md +116 -0
  1466. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.gitattributes +1 -0
  1467. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.github/workflows/ci.yml +48 -12
  1468. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.github/workflows/sync.yml +31 -0
  1469. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/CONTRIBUTING.md +193 -0
  1470. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/README.md +19 -3
  1471. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/foundry.toml +5 -3
  1472. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/package.json +2 -2
  1473. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/scripts/vm.py +646 -0
  1474. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Base.sol +7 -3
  1475. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Script.sol +4 -3
  1476. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdAssertions.sol +595 -135
  1477. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdChains.sol +146 -48
  1478. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdCheats.sol +303 -39
  1479. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdInvariant.sol +122 -0
  1480. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdJson.sol +129 -25
  1481. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdStorage.sol +245 -99
  1482. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdStyle.sol +333 -0
  1483. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdToml.sol +283 -0
  1484. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdUtils.sol +125 -39
  1485. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Test.sol +10 -5
  1486. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Vm.sol +2182 -304
  1487. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/console.sol +635 -608
  1488. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/console2.sol +1 -1543
  1489. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/interfaces/IERC4626.sol +2 -2
  1490. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
  1491. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/safeconsole.sol +13937 -0
  1492. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdAssertions.t.sol +126 -572
  1493. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdChains.t.sol +166 -62
  1494. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdCheats.t.sol +348 -35
  1495. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdError.t.sol +15 -13
  1496. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdJson.t.sol +49 -0
  1497. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdMath.t.sol +31 -26
  1498. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdStorage.t.sol +251 -46
  1499. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdStyle.t.sol +110 -0
  1500. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdToml.t.sol +49 -0
  1501. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdUtils.t.sol +186 -35
  1502. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/Vm.t.sol +18 -0
  1503. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/fixtures/test.json +8 -0
  1504. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/fixtures/test.toml +6 -0
  1505. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/LICENSE +661 -0
  1506. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/README.md +97 -0
  1507. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/SVM.sol +49 -0
  1508. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
  1509. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/all-geese-stand.md +5 -0
  1510. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/clean-ways-push.md +5 -0
  1511. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/config.json +12 -0
  1512. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/dull-students-eat.md +5 -0
  1513. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/eight-radios-check.md +5 -0
  1514. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/fine-frogs-bake.md +5 -0
  1515. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/full-ways-help.md +5 -0
  1516. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/funny-years-yawn.md +5 -0
  1517. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/hot-grapes-lie.md +5 -0
  1518. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/lazy-poets-cheer.md +5 -0
  1519. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/long-hornets-mate.md +5 -0
  1520. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/lucky-donuts-scream.md +5 -0
  1521. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/major-feet-write.md +5 -0
  1522. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/new-days-tease.md +5 -0
  1523. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/nice-rings-wish.md +5 -0
  1524. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/pink-dolls-shop.md +5 -0
  1525. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/popular-geese-tan.md +5 -0
  1526. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/proud-tables-sip.md +5 -0
  1527. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/public-crabs-heal.md +5 -0
  1528. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/quiet-kiwis-feel.md +5 -0
  1529. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rare-shirts-unite.md +5 -0
  1530. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rich-cows-repair.md +5 -0
  1531. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/ripe-bears-hide.md +5 -0
  1532. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rotten-apes-lie.md +5 -0
  1533. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/social-walls-obey.md +5 -0
  1534. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/sour-pens-shake.md +5 -0
  1535. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/strong-points-change.md +5 -0
  1536. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/tame-bears-mix.md +5 -0
  1537. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/violet-turtles-like.md +5 -0
  1538. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/wet-dodos-reply.md +5 -0
  1539. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/whole-plums-speak.md +5 -0
  1540. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/wild-baths-buy.md +5 -0
  1541. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.codecov.yml +16 -0
  1542. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.editorconfig +21 -0
  1543. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/CODEOWNERS +10 -0
  1544. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +21 -0
  1545. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml +4 -0
  1546. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +20 -0
  1547. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +51 -0
  1548. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/setup/action.yml +22 -0
  1549. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +57 -0
  1550. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
  1551. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
  1552. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/checks.yml +132 -0
  1553. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/docs.yml +19 -0
  1554. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +86 -0
  1555. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
  1556. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +34 -0
  1557. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.gitmodules +10 -0
  1558. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.husky/pre-commit +2 -0
  1559. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.mocharc.js +4 -0
  1560. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.prettierrc +15 -0
  1561. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.solcover.js +21 -0
  1562. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CHANGELOG.md +1220 -0
  1563. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +73 -0
  1564. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CONTRIBUTING.md +36 -0
  1565. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/FUNDING.json +10 -0
  1566. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/GUIDELINES.md +155 -0
  1567. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/LICENSE +22 -0
  1568. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/README.md +108 -0
  1569. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/RELEASING.md +45 -0
  1570. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/SECURITY.md +43 -0
  1571. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
  1572. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
  1573. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
  1574. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
  1575. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
  1576. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf +0 -0
  1577. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2024-12-v5.2.pdf +0 -0
  1578. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2025-04-v5.3.pdf +0 -0
  1579. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/README.md +20 -0
  1580. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/Makefile +54 -0
  1581. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/README.md +60 -0
  1582. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
  1583. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
  1584. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol +6 -0
  1585. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol +36 -0
  1586. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol +116 -0
  1587. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
  1588. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
  1589. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol +16 -0
  1590. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol +34 -0
  1591. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
  1592. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol +33 -0
  1593. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
  1594. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol +55 -0
  1595. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol +35 -0
  1596. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol +23 -0
  1597. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol +14 -0
  1598. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol +10 -0
  1599. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol +10 -0
  1600. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol +18 -0
  1601. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol +13 -0
  1602. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
  1603. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
  1604. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
  1605. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/run.js +168 -0
  1606. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
  1607. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
  1608. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec +34 -0
  1609. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessManager.spec +826 -0
  1610. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
  1611. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
  1612. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
  1613. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
  1614. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
  1615. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
  1616. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
  1617. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
  1618. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Nonces.spec +92 -0
  1619. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
  1620. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
  1621. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
  1622. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
  1623. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +12 -0
  1624. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
  1625. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
  1626. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec +5 -0
  1627. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec +33 -0
  1628. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
  1629. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
  1630. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
  1631. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
  1632. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
  1633. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
  1634. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
  1635. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
  1636. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
  1637. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs.json +110 -0
  1638. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/AccessControl.sol +207 -0
  1639. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol +98 -0
  1640. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/Ownable.sol +100 -0
  1641. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol +67 -0
  1642. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/README.adoc +45 -0
  1643. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol +372 -0
  1644. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol +81 -0
  1645. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol +192 -0
  1646. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol +31 -0
  1647. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol +112 -0
  1648. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol +740 -0
  1649. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol +36 -0
  1650. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol +32 -0
  1651. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol +399 -0
  1652. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol +14 -0
  1653. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/Account.sol +144 -0
  1654. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/README.adoc +30 -0
  1655. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579.sol +413 -0
  1656. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579Hooked.sol +106 -0
  1657. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-ERC7821.sol +69 -0
  1658. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/EIP7702Utils.sol +20 -0
  1659. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol +159 -0
  1660. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol +280 -0
  1661. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/README.adoc +14 -0
  1662. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol +159 -0
  1663. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol +54 -0
  1664. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/Governor.sol +818 -0
  1665. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol +454 -0
  1666. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/README.adoc +197 -0
  1667. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol +471 -0
  1668. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol +190 -0
  1669. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol +222 -0
  1670. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol +96 -0
  1671. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorNoncesKeyed.sol +90 -0
  1672. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol +92 -0
  1673. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalGuardian.sol +58 -0
  1674. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSequentialProposalId.sol +75 -0
  1675. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol +106 -0
  1676. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol +125 -0
  1677. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSuperQuorum.sol +58 -0
  1678. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol +346 -0
  1679. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol +165 -0
  1680. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol +167 -0
  1681. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol +63 -0
  1682. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol +113 -0
  1683. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesSuperQuorumFraction.sol +134 -0
  1684. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol +59 -0
  1685. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol +252 -0
  1686. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol +84 -0
  1687. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol +6 -0
  1688. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol +6 -0
  1689. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol +6 -0
  1690. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol +17 -0
  1691. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol +86 -0
  1692. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol +32 -0
  1693. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol +26 -0
  1694. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol +6 -0
  1695. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol +20 -0
  1696. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol +112 -0
  1697. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol +24 -0
  1698. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol +6 -0
  1699. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol +6 -0
  1700. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol +19 -0
  1701. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol +8 -0
  1702. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol +26 -0
  1703. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol +7 -0
  1704. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol +27 -0
  1705. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol +41 -0
  1706. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol +230 -0
  1707. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol +20 -0
  1708. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol +28 -0
  1709. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol +16 -0
  1710. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol +9 -0
  1711. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol +17 -0
  1712. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol +6 -0
  1713. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol +6 -0
  1714. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol +6 -0
  1715. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol +6 -0
  1716. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol +200 -0
  1717. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol +35 -0
  1718. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol +35 -0
  1719. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC7913.sol +17 -0
  1720. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +105 -0
  1721. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol +20 -0
  1722. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol +253 -0
  1723. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol +161 -0
  1724. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6909.sol +125 -0
  1725. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol +226 -0
  1726. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol +17 -0
  1727. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7786.sol +64 -0
  1728. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7802.sol +30 -0
  1729. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7821.sol +43 -0
  1730. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol +90 -0
  1731. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol +372 -0
  1732. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/README.adoc +17 -0
  1733. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol +34 -0
  1734. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol +20 -0
  1735. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol +171 -0
  1736. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol +69 -0
  1737. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol +19 -0
  1738. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol +20 -0
  1739. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol +78 -0
  1740. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol +34 -0
  1741. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol +35 -0
  1742. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol +65 -0
  1743. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol +16 -0
  1744. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol +24 -0
  1745. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +58 -0
  1746. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol +12 -0
  1747. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol +7 -0
  1748. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol +5 -0
  1749. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol +18 -0
  1750. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol +28 -0
  1751. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol +53 -0
  1752. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol +17 -0
  1753. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol +130 -0
  1754. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol +62 -0
  1755. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol +52 -0
  1756. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol +23 -0
  1757. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol +131 -0
  1758. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol +31 -0
  1759. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol +12 -0
  1760. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol +50 -0
  1761. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol +50 -0
  1762. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol +61 -0
  1763. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol +49 -0
  1764. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol +55 -0
  1765. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol +87 -0
  1766. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol +26 -0
  1767. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol +61 -0
  1768. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol +27 -0
  1769. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol +42 -0
  1770. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol +42 -0
  1771. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/AccountMock.sol +169 -0
  1772. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/modules/ERC7579Mock.sol +122 -0
  1773. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol +23 -0
  1774. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol +174 -0
  1775. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +22 -0
  1776. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +109 -0
  1777. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +9 -0
  1778. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +25 -0
  1779. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +24 -0
  1780. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +23 -0
  1781. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +14 -0
  1782. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +16 -0
  1783. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +17 -0
  1784. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +20 -0
  1785. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +37 -0
  1786. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +80 -0
  1787. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +21 -0
  1788. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +32 -0
  1789. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +28 -0
  1790. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +21 -0
  1791. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +7 -0
  1792. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +11 -0
  1793. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +26 -0
  1794. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +19 -0
  1795. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +27 -0
  1796. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +15 -0
  1797. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol +18 -0
  1798. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol +14 -0
  1799. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol +14 -0
  1800. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorNoncesKeyedMock.sol +45 -0
  1801. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol +40 -0
  1802. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorProposalGuardianMock.sol +27 -0
  1803. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSequentialProposalIdMock.sol +39 -0
  1804. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol +79 -0
  1805. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSuperQuorumMock.sol +95 -0
  1806. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol +70 -0
  1807. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol +69 -0
  1808. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol +69 -0
  1809. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol +20 -0
  1810. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMock.sol +37 -0
  1811. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol +51 -0
  1812. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol +11 -0
  1813. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol +19 -0
  1814. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol +35 -0
  1815. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol +74 -0
  1816. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol +13 -0
  1817. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol +33 -0
  1818. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol +52 -0
  1819. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol +34 -0
  1820. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol +47 -0
  1821. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol +10 -0
  1822. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol +26 -0
  1823. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol +17 -0
  1824. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol +9 -0
  1825. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol +26 -0
  1826. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol +13 -0
  1827. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol +38 -0
  1828. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol +16 -0
  1829. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol +8 -0
  1830. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol +28 -0
  1831. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol +39 -0
  1832. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol +19 -0
  1833. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol +31 -0
  1834. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol +253 -0
  1835. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol +29 -0
  1836. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol +23 -0
  1837. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol +17 -0
  1838. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol +17 -0
  1839. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol +40 -0
  1840. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol +42 -0
  1841. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol +61 -0
  1842. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol +47 -0
  1843. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol +17 -0
  1844. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/utils/cryptography/ERC7739Mock.sol +13 -0
  1845. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/package.json +32 -0
  1846. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/Clones.sol +262 -0
  1847. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol +40 -0
  1848. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol +177 -0
  1849. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol +69 -0
  1850. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/README.adoc +87 -0
  1851. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol +57 -0
  1852. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol +16 -0
  1853. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol +70 -0
  1854. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol +45 -0
  1855. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +118 -0
  1856. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol +238 -0
  1857. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol +146 -0
  1858. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol +389 -0
  1859. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol +123 -0
  1860. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol +59 -0
  1861. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +43 -0
  1862. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol +28 -0
  1863. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol +38 -0
  1864. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol +88 -0
  1865. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol +61 -0
  1866. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol +20 -0
  1867. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol +40 -0
  1868. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol +88 -0
  1869. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol +305 -0
  1870. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol +79 -0
  1871. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +78 -0
  1872. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol +135 -0
  1873. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol +39 -0
  1874. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol +54 -0
  1875. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol +134 -0
  1876. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol +33 -0
  1877. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol +77 -0
  1878. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol +83 -0
  1879. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol +89 -0
  1880. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol +282 -0
  1881. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol +26 -0
  1882. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol +90 -0
  1883. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Bridgeable.sol +50 -0
  1884. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol +119 -0
  1885. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol +95 -0
  1886. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol +280 -0
  1887. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/README.adoc +27 -0
  1888. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/draft-ERC6909.sol +224 -0
  1889. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909ContentURI.sol +53 -0
  1890. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909Metadata.sol +77 -0
  1891. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupply.sol +35 -0
  1892. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol +430 -0
  1893. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol +135 -0
  1894. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol +28 -0
  1895. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +69 -0
  1896. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol +26 -0
  1897. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol +176 -0
  1898. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol +164 -0
  1899. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol +37 -0
  1900. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol +26 -0
  1901. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol +58 -0
  1902. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol +47 -0
  1903. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol +102 -0
  1904. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol +29 -0
  1905. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol +27 -0
  1906. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol +24 -0
  1907. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol +50 -0
  1908. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol +139 -0
  1909. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/common/README.adoc +10 -0
  1910. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Address.sol +149 -0
  1911. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Arrays.sol +552 -0
  1912. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Base64.sol +119 -0
  1913. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Blockhash.sol +52 -0
  1914. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Bytes.sol +166 -0
  1915. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol +54 -0
  1916. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol +51 -0
  1917. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Calldata.sol +25 -0
  1918. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Comparators.sol +19 -0
  1919. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Context.sol +28 -0
  1920. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Create2.sol +92 -0
  1921. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Errors.sol +34 -0
  1922. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Memory.sol +44 -0
  1923. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Multicall.sol +37 -0
  1924. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Nonces.sol +46 -0
  1925. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol +74 -0
  1926. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Packing.sol +1656 -0
  1927. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Panic.sol +57 -0
  1928. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Pausable.sol +112 -0
  1929. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/README.adoc +145 -0
  1930. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol +87 -0
  1931. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol +61 -0
  1932. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol +122 -0
  1933. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol +155 -0
  1934. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol +143 -0
  1935. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol +507 -0
  1936. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol +183 -0
  1937. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol +213 -0
  1938. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol +160 -0
  1939. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol +31 -0
  1940. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol +514 -0
  1941. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol +99 -0
  1942. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol +408 -0
  1943. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/README.adoc +67 -0
  1944. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol +154 -0
  1945. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol +164 -0
  1946. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-ERC7739Utils.sol +206 -0
  1947. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol +22 -0
  1948. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913.sol +251 -0
  1949. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913Weighted.sol +207 -0
  1950. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerECDSA.sol +55 -0
  1951. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7702.sol +24 -0
  1952. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7913.sol +62 -0
  1953. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerP256.sol +63 -0
  1954. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerRSA.sol +64 -0
  1955. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/draft-ERC7739.sol +98 -0
  1956. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913P256Verifier.sol +28 -0
  1957. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913RSAVerifier.sol +22 -0
  1958. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/draft-InteroperableAddress.sol +234 -0
  1959. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol +25 -0
  1960. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol +124 -0
  1961. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol +25 -0
  1962. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/Math.sol +749 -0
  1963. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol +1162 -0
  1964. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol +68 -0
  1965. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol +60 -0
  1966. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol +833 -0
  1967. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol +140 -0
  1968. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol +156 -0
  1969. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol +1319 -0
  1970. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol +792 -0
  1971. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol +256 -0
  1972. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol +267 -0
  1973. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/types/Time.sol +133 -0
  1974. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol +86 -0
  1975. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/vendor/compound/LICENSE +11 -0
  1976. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/antora.yml +7 -0
  1977. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/config.js +21 -0
  1978. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
  1979. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
  1980. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +99 -0
  1981. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  1982. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  1983. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  1984. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  1985. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  1986. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  1987. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  1988. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  1989. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  1990. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
  1991. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
  1992. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +29 -0
  1993. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +288 -0
  1994. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
  1995. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +354 -0
  1996. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
  1997. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
  1998. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +118 -0
  1999. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +71 -0
  2000. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +67 -0
  2001. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
  2002. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +47 -0
  2003. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +58 -0
  2004. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +51 -0
  2005. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
  2006. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +239 -0
  2007. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +70 -0
  2008. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +306 -0
  2009. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +31 -0
  2010. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +77 -0
  2011. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +591 -0
  2012. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +15 -0
  2013. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/contract.hbs +141 -0
  2014. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/helpers.js +46 -0
  2015. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/page.hbs +4 -0
  2016. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/properties.js +88 -0
  2017. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/eslint.config.mjs +26 -0
  2018. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/foundry.toml +15 -0
  2019. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/fv-requirements.txt +4 -0
  2020. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/async-test-sanity.js +10 -0
  2021. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/common-contracts.js +69 -0
  2022. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/env-artifacts.js +29 -0
  2023. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +45 -0
  2024. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/remappings.js +18 -0
  2025. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +6 -0
  2026. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
  2027. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat.config.js +124 -0
  2028. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol +404 -0
  2029. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol +356 -0
  2030. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
  2031. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
  2032. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.gitattributes +1 -0
  2033. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +128 -0
  2034. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml +31 -0
  2035. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/CONTRIBUTING.md +193 -0
  2036. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/LICENSE-APACHE +203 -0
  2037. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/LICENSE-MIT +25 -0
  2038. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/README.md +266 -0
  2039. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/foundry.toml +23 -0
  2040. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/package.json +16 -0
  2041. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py +646 -0
  2042. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol +35 -0
  2043. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol +27 -0
  2044. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol +669 -0
  2045. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol +287 -0
  2046. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol +829 -0
  2047. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdError.sol +15 -0
  2048. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol +122 -0
  2049. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol +283 -0
  2050. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdMath.sol +43 -0
  2051. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol +473 -0
  2052. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol +333 -0
  2053. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol +283 -0
  2054. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol +209 -0
  2055. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol +33 -0
  2056. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol +2263 -0
  2057. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/console.sol +1560 -0
  2058. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol +4 -0
  2059. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC1155.sol +105 -0
  2060. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC165.sol +12 -0
  2061. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC20.sol +43 -0
  2062. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol +190 -0
  2063. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC721.sol +164 -0
  2064. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
  2065. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol +13937 -0
  2066. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol +141 -0
  2067. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol +227 -0
  2068. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol +618 -0
  2069. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol +120 -0
  2070. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol +49 -0
  2071. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol +202 -0
  2072. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol +488 -0
  2073. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol +110 -0
  2074. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol +49 -0
  2075. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol +342 -0
  2076. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol +18 -0
  2077. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScript.sol +10 -0
  2078. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScriptBase.sol +10 -0
  2079. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTest.sol +10 -0
  2080. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTestBase.sol +10 -0
  2081. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/broadcast.log.json +187 -0
  2082. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json +8 -0
  2083. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml +6 -0
  2084. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE +661 -0
  2085. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md +97 -0
  2086. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol +49 -0
  2087. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
  2088. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/logo.svg +15 -0
  2089. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/netlify.toml +3 -0
  2090. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/package.json +106 -0
  2091. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/remappings.txt +1 -0
  2092. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/renovate.json +4 -0
  2093. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +28 -0
  2094. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +249 -0
  2095. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/coverage.sh +24 -0
  2096. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +39 -0
  2097. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/generation.sh +6 -0
  2098. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +55 -0
  2099. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/pragma-validity.js +45 -0
  2100. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/fetch-common-contracts.js +50 -0
  2101. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/gen-nav.js +81 -0
  2102. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/format-lines.js +16 -0
  2103. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js +5 -0
  2104. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/run.js +61 -0
  2105. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js +386 -0
  2106. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js +9 -0
  2107. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +242 -0
  2108. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +18 -0
  2109. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +141 -0
  2110. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Enumerable.opts.js +53 -0
  2111. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +463 -0
  2112. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +469 -0
  2113. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js +187 -0
  2114. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js +11 -0
  2115. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js +92 -0
  2116. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js +3 -0
  2117. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js +48 -0
  2118. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +136 -0
  2119. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js +15 -0
  2120. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js +119 -0
  2121. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js +127 -0
  2122. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +77 -0
  2123. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js +57 -0
  2124. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js +80 -0
  2125. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js +35 -0
  2126. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +30 -0
  2127. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/get-contracts-metadata.js +55 -0
  2128. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/helpers.js +7 -0
  2129. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/minimize-pragma.js +138 -0
  2130. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/prepack.sh +23 -0
  2131. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/prepare-docs.sh +26 -0
  2132. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
  2133. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +15 -0
  2134. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/update-comment.js +34 -0
  2135. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/version.sh +11 -0
  2136. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
  2137. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
  2138. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
  2139. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
  2140. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
  2141. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
  2142. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
  2143. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
  2144. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
  2145. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +45 -0
  2146. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/set-max-old-space-size.sh +10 -0
  2147. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solc-versions.js +15 -0
  2148. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
  2149. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +8 -0
  2150. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/update-docs-branch.js +65 -0
  2151. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
  2152. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
  2153. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
  2154. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
  2155. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +50 -0
  2156. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +398 -0
  2157. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/slither.config.json +4 -0
  2158. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/solhint.config.js +29 -0
  2159. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/TESTING.md +3 -0
  2160. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js +874 -0
  2161. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/AccessControl.test.js +19 -0
  2162. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/Ownable.test.js +79 -0
  2163. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js +102 -0
  2164. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
  2165. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js +24 -0
  2166. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js +146 -0
  2167. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js +257 -0
  2168. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js +456 -0
  2169. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js +2489 -0
  2170. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js +112 -0
  2171. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/Account.behavior.js +144 -0
  2172. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/Account.test.js +48 -0
  2173. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountECDSA.test.js +52 -0
  2174. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7702.t.sol +103 -0
  2175. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7702.test.js +52 -0
  2176. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7913.test.js +116 -0
  2177. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountMultiSigner.test.js +326 -0
  2178. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountMultiSignerWeighted.test.js +312 -0
  2179. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountP256.test.js +58 -0
  2180. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountRSA.test.js +58 -0
  2181. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
  2182. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.behavior.js +563 -0
  2183. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.test.js +60 -0
  2184. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
  2185. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/ERC7821.behavior.js +145 -0
  2186. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/EIP7702Utils.test.js +53 -0
  2187. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js +289 -0
  2188. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
  2189. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js +399 -0
  2190. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi +1 -0
  2191. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode +0 -0
  2192. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint080.abi +1 -0
  2193. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint080.bytecode +0 -0
  2194. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi +1 -0
  2195. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode +0 -0
  2196. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator080.abi +1 -0
  2197. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator080.bytecode +0 -0
  2198. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js +87 -0
  2199. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js +65 -0
  2200. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js +70 -0
  2201. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/Governor.t.sol +59 -0
  2202. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/Governor.test.js +980 -0
  2203. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/TimelockController.test.js +1279 -0
  2204. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
  2205. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
  2206. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js +131 -0
  2207. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
  2208. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js +185 -0
  2209. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
  2210. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
  2211. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js +155 -0
  2212. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
  2213. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
  2214. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
  2215. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js +448 -0
  2216. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js +504 -0
  2217. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js +165 -0
  2218. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
  2219. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js +245 -0
  2220. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js +28 -0
  2221. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js +325 -0
  2222. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js +102 -0
  2223. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js +152 -0
  2224. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/access-manager.js +85 -0
  2225. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/account.js +14 -0
  2226. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/chains.js +56 -0
  2227. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/constants.js +7 -0
  2228. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/deploy.js +14 -0
  2229. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/eip712-types.js +61 -0
  2230. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/eip712.js +45 -0
  2231. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/enums.js +14 -0
  2232. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc4337.js +217 -0
  2233. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc7579.js +58 -0
  2234. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc7739.js +118 -0
  2235. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/governance.js +217 -0
  2236. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/iterate.js +41 -0
  2237. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/math.js +33 -0
  2238. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/methods.js +14 -0
  2239. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/precompiles.js +12 -0
  2240. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/random.js +24 -0
  2241. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/signers.js +184 -0
  2242. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/storage.js +48 -0
  2243. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/strings.js +5 -0
  2244. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/time.js +33 -0
  2245. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/txpool.js +29 -0
  2246. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js +133 -0
  2247. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol +279 -0
  2248. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js +384 -0
  2249. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js +160 -0
  2250. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.t.sol +91 -0
  2251. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.test.js +177 -0
  2252. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js +23 -0
  2253. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
  2254. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js +185 -0
  2255. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js +141 -0
  2256. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js +55 -0
  2257. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js +82 -0
  2258. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +357 -0
  2259. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js +28 -0
  2260. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js +216 -0
  2261. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js +120 -0
  2262. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/sanity.test.js +27 -0
  2263. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js +763 -0
  2264. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js +213 -0
  2265. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js +66 -0
  2266. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js +105 -0
  2267. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js +119 -0
  2268. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +70 -0
  2269. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js +56 -0
  2270. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
  2271. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js +269 -0
  2272. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js +199 -0
  2273. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js +370 -0
  2274. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js +105 -0
  2275. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js +55 -0
  2276. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js +164 -0
  2277. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js +129 -0
  2278. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
  2279. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js +546 -0
  2280. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js +203 -0
  2281. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
  2282. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js +888 -0
  2283. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
  2284. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
  2285. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js +463 -0
  2286. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.behavior.js +216 -0
  2287. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.test.js +104 -0
  2288. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
  2289. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
  2290. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
  2291. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js +946 -0
  2292. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js +23 -0
  2293. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js +28 -0
  2294. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js +77 -0
  2295. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol +181 -0
  2296. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js +228 -0
  2297. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js +81 -0
  2298. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js +57 -0
  2299. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js +121 -0
  2300. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js +194 -0
  2301. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
  2302. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js +20 -0
  2303. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
  2304. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js +152 -0
  2305. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Address.test.js +281 -0
  2306. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Arrays.t.sol +31 -0
  2307. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Arrays.test.js +227 -0
  2308. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Base64.t.sol +34 -0
  2309. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Base64.test.js +59 -0
  2310. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Blockhash.t.sol +101 -0
  2311. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Blockhash.test.js +59 -0
  2312. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Bytes.t.sol +74 -0
  2313. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Bytes.test.js +212 -0
  2314. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/CAIP.test.js +56 -0
  2315. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Calldata.test.js +22 -0
  2316. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Context.behavior.js +48 -0
  2317. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Context.test.js +18 -0
  2318. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Create2.t.sol +17 -0
  2319. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Create2.test.js +190 -0
  2320. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Memory.t.sol +21 -0
  2321. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Memory.test.js +39 -0
  2322. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Multicall.test.js +72 -0
  2323. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js +189 -0
  2324. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Nonces.test.js +16 -0
  2325. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js +17 -0
  2326. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Packing.t.sol +993 -0
  2327. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Packing.test.js +70 -0
  2328. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Panic.test.js +37 -0
  2329. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Pausable.test.js +90 -0
  2330. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js +50 -0
  2331. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol +109 -0
  2332. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js +64 -0
  2333. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol +248 -0
  2334. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js +58 -0
  2335. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js +73 -0
  2336. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Strings.t.sol +50 -0
  2337. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Strings.test.js +360 -0
  2338. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js +59 -0
  2339. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js +239 -0
  2340. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js +105 -0
  2341. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC1271.behavior.js +111 -0
  2342. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739.test.js +42 -0
  2343. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739Utils.test.js +203 -0
  2344. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js +213 -0
  2345. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
  2346. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js +97 -0
  2347. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol +65 -0
  2348. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js +182 -0
  2349. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js +17 -0
  2350. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js +102 -0
  2351. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
  2352. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js +422 -0
  2353. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
  2354. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.t.sol +99 -0
  2355. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.test.js +170 -0
  2356. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js +18 -0
  2357. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js +245 -0
  2358. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js +166 -0
  2359. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/Math.t.sol +349 -0
  2360. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/Math.test.js +713 -0
  2361. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js +159 -0
  2362. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol +80 -0
  2363. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js +53 -0
  2364. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js +149 -0
  2365. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol +440 -0
  2366. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js +147 -0
  2367. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js +83 -0
  2368. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js +102 -0
  2369. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js +214 -0
  2370. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js +83 -0
  2371. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js +175 -0
  2372. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js +66 -0
  2373. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol +74 -0
  2374. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js +113 -0
  2375. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js +180 -0
  2376. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/types/Time.test.js +135 -0
  2377. package/lib/openzeppelin-contracts-upgradeable/package.json +60 -47
  2378. package/lib/openzeppelin-contracts-upgradeable/remappings.txt +2 -0
  2379. package/lib/openzeppelin-contracts-upgradeable/renovate.json +2 -9
  2380. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/compare-layout.js +28 -0
  2381. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/compareGasReports.js +130 -92
  2382. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/coverage.sh +24 -0
  2383. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/extract-layout.js +39 -0
  2384. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/inheritance-ordering.js +28 -23
  2385. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/pragma-validity.js +45 -0
  2386. package/lib/openzeppelin-contracts-upgradeable/scripts/fetch-common-contracts.js +50 -0
  2387. package/lib/openzeppelin-contracts-upgradeable/scripts/gen-nav.js +62 -22
  2388. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/format-lines.js +4 -4
  2389. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/helpers/sanitize.js +5 -0
  2390. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/run.js +38 -23
  2391. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Arrays.js +386 -0
  2392. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Arrays.opts.js +9 -0
  2393. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.js +67 -128
  2394. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.opts.js +18 -0
  2395. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.t.js +141 -0
  2396. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Enumerable.opts.js +53 -0
  2397. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableMap.js +269 -84
  2398. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableSet.js +252 -36
  2399. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/MerkleProof.js +187 -0
  2400. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/MerkleProof.opts.js +11 -0
  2401. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.js +92 -0
  2402. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.opts.js +3 -0
  2403. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.t.js +48 -0
  2404. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SafeCast.js +50 -82
  2405. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Slot.opts.js +15 -0
  2406. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SlotDerivation.js +119 -0
  2407. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SlotDerivation.t.js +127 -0
  2408. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/StorageSlot.js +77 -0
  2409. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/StorageSlotMock.js +57 -0
  2410. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/TransientSlot.js +80 -0
  2411. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/TransientSlotMock.js +35 -0
  2412. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/conversion.js +18 -18
  2413. package/lib/openzeppelin-contracts-upgradeable/scripts/get-contracts-metadata.js +55 -0
  2414. package/lib/openzeppelin-contracts-upgradeable/scripts/helpers.js +4 -20
  2415. package/lib/openzeppelin-contracts-upgradeable/scripts/minimize-pragma.js +138 -0
  2416. package/lib/openzeppelin-contracts-upgradeable/scripts/prepack.sh +14 -3
  2417. package/lib/openzeppelin-contracts-upgradeable/scripts/prepare-docs.sh +12 -1
  2418. package/lib/openzeppelin-contracts-upgradeable/scripts/release/format-changelog.js +33 -0
  2419. package/lib/openzeppelin-contracts-upgradeable/scripts/release/synchronize-versions.js +6 -7
  2420. package/lib/openzeppelin-contracts-upgradeable/scripts/release/update-comment.js +2 -4
  2421. package/lib/openzeppelin-contracts-upgradeable/scripts/release/version.sh +4 -2
  2422. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/exit-prerelease.sh +8 -0
  2423. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/github-release.js +48 -0
  2424. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/integrity-check.sh +20 -0
  2425. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/pack.sh +26 -0
  2426. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/publish.sh +26 -0
  2427. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/rerun.js +7 -0
  2428. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/set-changesets-pr-title.js +17 -0
  2429. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/start.sh +35 -0
  2430. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/state.js +112 -0
  2431. package/lib/openzeppelin-contracts-upgradeable/scripts/remove-ignored-artifacts.js +4 -4
  2432. package/lib/openzeppelin-contracts-upgradeable/scripts/set-max-old-space-size.sh +10 -0
  2433. package/lib/openzeppelin-contracts-upgradeable/scripts/solc-versions.js +15 -0
  2434. package/lib/openzeppelin-contracts-upgradeable/scripts/solhint-custom/index.js +84 -0
  2435. package/lib/openzeppelin-contracts-upgradeable/scripts/solhint-custom/package.json +8 -0
  2436. package/lib/openzeppelin-contracts-upgradeable/scripts/update-docs-branch.js +15 -5
  2437. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/README.md +21 -0
  2438. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch-apply.sh +19 -0
  2439. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch-save.sh +18 -0
  2440. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/transpile-onto.sh +21 -5
  2441. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/transpile.sh +24 -8
  2442. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/upgradeable.patch +398 -0
  2443. package/lib/openzeppelin-contracts-upgradeable/slither.config.json +3 -4
  2444. package/lib/openzeppelin-contracts-upgradeable/solhint.config.js +29 -0
  2445. package/lib/openzeppelin-contracts-upgradeable/test/TESTING.md +1 -1
  2446. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControl.behavior.js +756 -98
  2447. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControl.test.js +13 -7
  2448. package/lib/openzeppelin-contracts-upgradeable/test/access/Ownable.test.js +50 -28
  2449. package/lib/openzeppelin-contracts-upgradeable/test/access/Ownable2Step.test.js +77 -32
  2450. package/lib/openzeppelin-contracts-upgradeable/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
  2451. package/lib/openzeppelin-contracts-upgradeable/test/access/extensions/AccessControlEnumerable.test.js +24 -0
  2452. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManaged.test.js +146 -0
  2453. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.behavior.js +257 -0
  2454. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.predicate.js +456 -0
  2455. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.test.js +2489 -0
  2456. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AuthorityUtils.test.js +112 -0
  2457. package/lib/openzeppelin-contracts-upgradeable/test/account/Account.behavior.js +144 -0
  2458. package/lib/openzeppelin-contracts-upgradeable/test/account/Account.test.js +48 -0
  2459. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountECDSA.test.js +52 -0
  2460. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7702.t.sol +103 -0
  2461. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7702.test.js +52 -0
  2462. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7913.test.js +116 -0
  2463. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountMultiSigner.test.js +326 -0
  2464. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountMultiSignerWeighted.test.js +312 -0
  2465. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountP256.test.js +58 -0
  2466. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountRSA.test.js +58 -0
  2467. package/lib/openzeppelin-contracts-upgradeable/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
  2468. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579.behavior.js +563 -0
  2469. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579.test.js +60 -0
  2470. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
  2471. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/ERC7821.behavior.js +145 -0
  2472. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/EIP7702Utils.test.js +53 -0
  2473. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC4337Utils.test.js +289 -0
  2474. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
  2475. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC7579Utils.test.js +399 -0
  2476. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint070.abi +1 -0
  2477. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint070.bytecode +0 -0
  2478. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint080.abi +1 -0
  2479. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint080.bytecode +0 -0
  2480. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator070.abi +1 -0
  2481. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator070.bytecode +0 -0
  2482. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator080.abi +1 -0
  2483. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator080.bytecode +0 -0
  2484. package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWallet.behavior.js +59 -46
  2485. package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWallet.test.js +35 -37
  2486. package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWalletCliff.test.js +70 -0
  2487. package/lib/openzeppelin-contracts-upgradeable/test/governance/Governor.t.sol +59 -0
  2488. package/lib/openzeppelin-contracts-upgradeable/test/governance/Governor.test.js +938 -590
  2489. package/lib/openzeppelin-contracts-upgradeable/test/governance/TimelockController.test.js +910 -765
  2490. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
  2491. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
  2492. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorERC721.test.js +127 -100
  2493. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
  2494. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorPreventLateQuorum.test.js +181 -173
  2495. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
  2496. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
  2497. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorStorage.test.js +155 -0
  2498. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
  2499. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
  2500. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
  2501. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockCompound.test.js +419 -339
  2502. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockControl.test.js +468 -384
  2503. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorVotesQuorumFraction.test.js +161 -133
  2504. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
  2505. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorWithParams.test.js +234 -155
  2506. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/ERC6372.behavior.js +28 -0
  2507. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/Votes.behavior.js +254 -273
  2508. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/Votes.test.js +89 -48
  2509. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/VotesExtended.test.js +152 -0
  2510. package/lib/openzeppelin-contracts-upgradeable/test/helpers/access-manager.js +85 -0
  2511. package/lib/openzeppelin-contracts-upgradeable/test/helpers/account.js +14 -0
  2512. package/lib/openzeppelin-contracts-upgradeable/test/helpers/chains.js +56 -0
  2513. package/lib/openzeppelin-contracts-upgradeable/test/helpers/constants.js +7 -0
  2514. package/lib/openzeppelin-contracts-upgradeable/test/helpers/deploy.js +14 -0
  2515. package/lib/openzeppelin-contracts-upgradeable/test/helpers/eip712-types.js +61 -0
  2516. package/lib/openzeppelin-contracts-upgradeable/test/helpers/eip712.js +41 -26
  2517. package/lib/openzeppelin-contracts-upgradeable/test/helpers/enums.js +9 -24
  2518. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc4337.js +217 -0
  2519. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc7579.js +58 -0
  2520. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc7739.js +118 -0
  2521. package/lib/openzeppelin-contracts-upgradeable/test/helpers/governance.js +194 -188
  2522. package/lib/openzeppelin-contracts-upgradeable/test/helpers/iterate.js +41 -0
  2523. package/lib/openzeppelin-contracts-upgradeable/test/helpers/math.js +33 -0
  2524. package/lib/openzeppelin-contracts-upgradeable/test/helpers/methods.js +14 -0
  2525. package/lib/openzeppelin-contracts-upgradeable/test/helpers/precompiles.js +12 -0
  2526. package/lib/openzeppelin-contracts-upgradeable/test/helpers/random.js +24 -0
  2527. package/lib/openzeppelin-contracts-upgradeable/test/helpers/signers.js +184 -0
  2528. package/lib/openzeppelin-contracts-upgradeable/test/helpers/storage.js +48 -0
  2529. package/lib/openzeppelin-contracts-upgradeable/test/helpers/strings.js +5 -0
  2530. package/lib/openzeppelin-contracts-upgradeable/test/helpers/time.js +33 -0
  2531. package/lib/openzeppelin-contracts-upgradeable/test/helpers/txpool.js +9 -20
  2532. package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Context.test.js +95 -71
  2533. package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Forwarder.t.sol +279 -0
  2534. package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Forwarder.test.js +384 -0
  2535. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.behaviour.js +60 -50
  2536. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.t.sol +91 -0
  2537. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.test.js +164 -56
  2538. package/lib/openzeppelin-contracts-upgradeable/test/proxy/ERC1967/ERC1967Proxy.test.js +17 -7
  2539. package/lib/openzeppelin-contracts-upgradeable/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
  2540. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Proxy.behaviour.js +59 -98
  2541. package/lib/openzeppelin-contracts-upgradeable/test/proxy/beacon/BeaconProxy.test.js +98 -113
  2542. package/lib/openzeppelin-contracts-upgradeable/test/proxy/beacon/UpgradeableBeacon.test.js +34 -29
  2543. package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/ProxyAdmin.test.js +45 -88
  2544. package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +209 -283
  2545. package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/TransparentUpgradeableProxy.test.js +20 -7
  2546. package/lib/openzeppelin-contracts-upgradeable/test/proxy/utils/Initializable.test.js +94 -96
  2547. package/lib/openzeppelin-contracts-upgradeable/test/proxy/utils/UUPSUpgradeable.test.js +94 -59
  2548. package/lib/openzeppelin-contracts-upgradeable/test/sanity.test.js +27 -0
  2549. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/ERC1155.behavior.js +530 -541
  2550. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/ERC1155.test.js +101 -152
  2551. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Burnable.test.js +35 -36
  2552. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Pausable.test.js +54 -57
  2553. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Supply.test.js +59 -51
  2554. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +37 -33
  2555. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/utils/ERC1155Holder.test.js +40 -46
  2556. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
  2557. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/ERC20.behavior.js +142 -206
  2558. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/ERC20.test.js +133 -243
  2559. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC1363.test.js +370 -0
  2560. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Burnable.test.js +96 -10
  2561. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Capped.test.js +43 -15
  2562. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20FlashMint.test.js +102 -82
  2563. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Pausable.test.js +59 -64
  2564. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
  2565. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Votes.test.js +490 -462
  2566. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Wrapper.test.js +133 -120
  2567. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
  2568. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC4626.test.js +802 -536
  2569. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
  2570. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
  2571. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/utils/SafeERC20.test.js +387 -179
  2572. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/ERC6909.behavior.js +216 -0
  2573. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/ERC6909.test.js +104 -0
  2574. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
  2575. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
  2576. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
  2577. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721.behavior.js +488 -479
  2578. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721.test.js +16 -11
  2579. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721Enumerable.test.js +16 -8
  2580. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Burnable.test.js +43 -44
  2581. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Consecutive.t.sol +80 -19
  2582. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Consecutive.test.js +181 -165
  2583. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Pausable.test.js +34 -51
  2584. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Royalty.test.js +41 -24
  2585. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721URIStorage.test.js +69 -44
  2586. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Votes.test.js +187 -167
  2587. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
  2588. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/utils/ERC721Holder.test.js +12 -16
  2589. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
  2590. package/lib/openzeppelin-contracts-upgradeable/test/token/common/ERC2981.behavior.js +80 -88
  2591. package/lib/openzeppelin-contracts-upgradeable/test/utils/Address.test.js +160 -261
  2592. package/lib/openzeppelin-contracts-upgradeable/test/utils/Arrays.t.sol +31 -0
  2593. package/lib/openzeppelin-contracts-upgradeable/test/utils/Arrays.test.js +217 -95
  2594. package/lib/openzeppelin-contracts-upgradeable/test/utils/Base64.t.sol +34 -0
  2595. package/lib/openzeppelin-contracts-upgradeable/test/utils/Base64.test.js +48 -22
  2596. package/lib/openzeppelin-contracts-upgradeable/test/utils/Blockhash.t.sol +101 -0
  2597. package/lib/openzeppelin-contracts-upgradeable/test/utils/Blockhash.test.js +59 -0
  2598. package/lib/openzeppelin-contracts-upgradeable/test/utils/Bytes.t.sol +74 -0
  2599. package/lib/openzeppelin-contracts-upgradeable/test/utils/Bytes.test.js +212 -0
  2600. package/lib/openzeppelin-contracts-upgradeable/test/utils/CAIP.test.js +56 -0
  2601. package/lib/openzeppelin-contracts-upgradeable/test/utils/Calldata.test.js +22 -0
  2602. package/lib/openzeppelin-contracts-upgradeable/test/utils/Context.behavior.js +26 -20
  2603. package/lib/openzeppelin-contracts-upgradeable/test/utils/Context.test.js +10 -9
  2604. package/lib/openzeppelin-contracts-upgradeable/test/utils/Create2.t.sol +17 -0
  2605. package/lib/openzeppelin-contracts-upgradeable/test/utils/Create2.test.js +147 -49
  2606. package/lib/openzeppelin-contracts-upgradeable/test/utils/Memory.t.sol +21 -0
  2607. package/lib/openzeppelin-contracts-upgradeable/test/utils/Memory.test.js +39 -0
  2608. package/lib/openzeppelin-contracts-upgradeable/test/utils/Multicall.test.js +50 -35
  2609. package/lib/openzeppelin-contracts-upgradeable/test/utils/Nonces.behavior.js +189 -0
  2610. package/lib/openzeppelin-contracts-upgradeable/test/utils/Nonces.test.js +16 -0
  2611. package/lib/openzeppelin-contracts-upgradeable/test/utils/NoncesKeyed.test.js +17 -0
  2612. package/lib/openzeppelin-contracts-upgradeable/test/utils/Packing.t.sol +993 -0
  2613. package/lib/openzeppelin-contracts-upgradeable/test/utils/Packing.test.js +70 -0
  2614. package/lib/openzeppelin-contracts-upgradeable/test/utils/Panic.test.js +37 -0
  2615. package/lib/openzeppelin-contracts-upgradeable/test/utils/Pausable.test.js +90 -0
  2616. package/lib/openzeppelin-contracts-upgradeable/test/utils/ReentrancyGuard.test.js +50 -0
  2617. package/lib/openzeppelin-contracts-upgradeable/test/utils/ShortStrings.t.sol +109 -0
  2618. package/lib/openzeppelin-contracts-upgradeable/test/utils/ShortStrings.test.js +64 -0
  2619. package/lib/openzeppelin-contracts-upgradeable/test/utils/SlotDerivation.t.sol +248 -0
  2620. package/lib/openzeppelin-contracts-upgradeable/test/utils/SlotDerivation.test.js +58 -0
  2621. package/lib/openzeppelin-contracts-upgradeable/test/utils/StorageSlot.test.js +55 -92
  2622. package/lib/openzeppelin-contracts-upgradeable/test/utils/Strings.t.sol +50 -0
  2623. package/lib/openzeppelin-contracts-upgradeable/test/utils/Strings.test.js +323 -49
  2624. package/lib/openzeppelin-contracts-upgradeable/test/utils/TransientSlot.test.js +59 -0
  2625. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ECDSA.test.js +167 -132
  2626. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/EIP712.test.js +79 -52
  2627. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC1271.behavior.js +111 -0
  2628. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC7739.test.js +42 -0
  2629. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC7739Utils.test.js +203 -0
  2630. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MerkleProof.test.js +210 -176
  2631. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
  2632. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MessageHashUtils.test.js +97 -0
  2633. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/P256.t.sol +65 -0
  2634. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/P256.test.js +182 -0
  2635. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/RSA.helper.js +17 -0
  2636. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/RSA.test.js +102 -0
  2637. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
  2638. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/SignatureChecker.test.js +397 -56
  2639. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
  2640. package/lib/openzeppelin-contracts-upgradeable/test/utils/draft-InteroperableAddress.t.sol +99 -0
  2641. package/lib/openzeppelin-contracts-upgradeable/test/utils/draft-InteroperableAddress.test.js +170 -0
  2642. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165.test.js +11 -6
  2643. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165Checker.test.js +84 -142
  2644. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/SupportsInterface.behavior.js +109 -90
  2645. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/Math.t.sol +255 -24
  2646. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/Math.test.js +616 -215
  2647. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SafeCast.test.js +84 -89
  2648. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedMath.t.sol +80 -0
  2649. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedMath.test.js +25 -65
  2650. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/BitMap.test.js +83 -79
  2651. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Checkpoints.t.sol +440 -0
  2652. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Checkpoints.test.js +147 -0
  2653. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/CircularBuffer.test.js +83 -0
  2654. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/DoubleEndedQueue.test.js +47 -41
  2655. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableMap.behavior.js +122 -89
  2656. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableMap.test.js +70 -73
  2657. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableSet.behavior.js +105 -61
  2658. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableSet.test.js +53 -33
  2659. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Heap.t.sol +74 -0
  2660. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Heap.test.js +113 -0
  2661. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/MerkleTree.test.js +180 -0
  2662. package/lib/openzeppelin-contracts-upgradeable/test/utils/types/Time.test.js +135 -0
  2663. package/package.json +10 -23
  2664. package/remappings.txt +5 -0
  2665. package/script/CreateMarketLib.sol +1873 -0
  2666. package/script/DeployProxy.s.sol +27 -0
  2667. package/script/DeployUpgradeablePM.s.sol +47 -0
  2668. package/script/PredictionMarketV3_3Flow.s.sol +132 -0
  2669. package/scripts/copy-abis.js +57 -0
  2670. package/src/Application.js +18 -0
  2671. package/src/interfaces/index.js +16 -15
  2672. package/src/models/PredictionMarketV2Contract.js +19 -15
  2673. package/src/models/PredictionMarketV3ControllerContract.js +2 -2
  2674. package/src/models/PredictionMarketV3ManagerContract.js +4 -0
  2675. package/src/models/PredictionMarketV3PlusContract.js +210 -0
  2676. package/src/models/index.js +2 -0
  2677. package/test/PredictionMarket.t.sol +923 -0
  2678. package/test/PredictionMarketManager.t.sol +909 -0
  2679. package/build/contracts/AccessControl.json +0 -1
  2680. package/build/contracts/Address.json +0 -1
  2681. package/build/contracts/BalanceHolder_ERC20.json +0 -1
  2682. package/build/contracts/CeilDiv.json +0 -1
  2683. package/build/contracts/Clones.json +0 -1
  2684. package/build/contracts/Context.json +0 -1
  2685. package/build/contracts/ERC165.json +0 -1
  2686. package/build/contracts/ERC20.json +0 -1
  2687. package/build/contracts/ERC20Burnable.json +0 -1
  2688. package/build/contracts/ERC20Pausable.json +0 -1
  2689. package/build/contracts/FantasyERC20.json +0 -1
  2690. package/build/contracts/IAccessControl.json +0 -1
  2691. package/build/contracts/IBalanceHolder_ERC20.json +0 -1
  2692. package/build/contracts/IERC165.json +0 -1
  2693. package/build/contracts/IERC20.json +0 -1
  2694. package/build/contracts/IERC20Metadata.json +0 -1
  2695. package/build/contracts/IERC721.json +0 -1
  2696. package/build/contracts/IERC721Enumerable.json +0 -1
  2697. package/build/contracts/IERC721Metadata.json +0 -1
  2698. package/build/contracts/IFantasyERC20.json +0 -1
  2699. package/build/contracts/IPredictionMarketV3Factory.json +0 -1
  2700. package/build/contracts/IPredictionMarketV3Manager.json +0 -1
  2701. package/build/contracts/IRealityETH_ERC20.json +0 -1
  2702. package/build/contracts/IRealityETH_IERC20.json +0 -1
  2703. package/build/contracts/IWETH.json +0 -1
  2704. package/build/contracts/LandFactory.json +0 -1
  2705. package/build/contracts/Ownable.json +0 -1
  2706. package/build/contracts/Pausable.json +0 -1
  2707. package/build/contracts/PredictionMarketV3Claimer.json +0 -1
  2708. package/build/contracts/PredictionMarketV3Controller.json +0 -1
  2709. package/build/contracts/PredictionMarketV3Factory.json +0 -1
  2710. package/build/contracts/PredictionMarketV3Manager.json +0 -1
  2711. package/build/contracts/PredictionMarketV3Querier.json +0 -1
  2712. package/build/contracts/RealityETH_ERC20_Factory.json +0 -1
  2713. package/build/contracts/RealityETH_ERC20_v3_0.json +0 -1
  2714. package/build/contracts/RealityETH_ERC20_v3_0_.json +0 -1
  2715. package/build/contracts/ReentrancyGuard.json +0 -1
  2716. package/build/contracts/SafeERC20.json +0 -1
  2717. package/build/contracts/StorageSlot.json +0 -1
  2718. package/build/contracts/TWProxy.json +0 -1
  2719. package/build/contracts/USDCERC20.json +0 -1
  2720. package/build/contracts/Voting.json +0 -1
  2721. package/build/contracts/test.json +0 -1
  2722. package/cache/solidity-files-cache.json +0 -1
  2723. package/cache/zksync-solidity-files-cache.json +0 -1
  2724. package/cleanContracts.js +0 -22
  2725. package/contracts/IPredictionMarketV3.sol +0 -207
  2726. package/contracts/Migrations.sol +0 -24
  2727. package/contracts/PredictionMarketV3.sol +0 -1332
  2728. package/contracts/RealityETH_ERC20_v3_0.sol +0 -8
  2729. package/contracts/TWProxy.sol +0 -42
  2730. package/contracts/USDCERC20.sol +0 -12
  2731. package/contracts/WETH9.sol +0 -62
  2732. package/lib/openzeppelin-contracts/.changeset/new-ways-own.md +0 -5
  2733. package/lib/openzeppelin-contracts/.eslintrc +0 -62
  2734. package/lib/openzeppelin-contracts/.gitattributes +0 -1
  2735. package/lib/openzeppelin-contracts/.github/workflows/changelog.yml +0 -28
  2736. package/lib/openzeppelin-contracts/.solhint.json +0 -14
  2737. package/lib/openzeppelin-contracts/audit/2017-03.md +0 -292
  2738. package/lib/openzeppelin-contracts/certora/applyHarness.patch +0 -101
  2739. package/lib/openzeppelin-contracts/certora/harnesses/ERC20VotesHarness.sol +0 -28
  2740. package/lib/openzeppelin-contracts/certora/harnesses/WizardControlFirstPriority.sol +0 -150
  2741. package/lib/openzeppelin-contracts/certora/harnesses/WizardFirstTry.sol +0 -141
  2742. package/lib/openzeppelin-contracts/certora/munged/.gitignore +0 -2
  2743. package/lib/openzeppelin-contracts/certora/scripts/Governor.sh +0 -10
  2744. package/lib/openzeppelin-contracts/certora/scripts/GovernorCountingSimple-counting.sh +0 -10
  2745. package/lib/openzeppelin-contracts/certora/scripts/WizardControlFirstPriority.sh +0 -12
  2746. package/lib/openzeppelin-contracts/certora/scripts/WizardFirstTry.sh +0 -10
  2747. package/lib/openzeppelin-contracts/certora/scripts/sanity.sh +0 -14
  2748. package/lib/openzeppelin-contracts/certora/scripts/verifyAll.sh +0 -39
  2749. package/lib/openzeppelin-contracts/certora/specs/GovernorBase.spec +0 -333
  2750. package/lib/openzeppelin-contracts/certora/specs/GovernorCountingSimple.spec +0 -221
  2751. package/lib/openzeppelin-contracts/certora/specs/RulesInProgress.spec +0 -139
  2752. package/lib/openzeppelin-contracts/certora/specs/sanity.spec +0 -14
  2753. package/lib/openzeppelin-contracts/contracts/access/AccessControlCrossChain.sol +0 -45
  2754. package/lib/openzeppelin-contracts/contracts/access/AccessControlEnumerable.sol +0 -64
  2755. package/lib/openzeppelin-contracts/contracts/access/IAccessControlEnumerable.sol +0 -31
  2756. package/lib/openzeppelin-contracts/contracts/crosschain/CrossChainEnabled.sol +0 -54
  2757. package/lib/openzeppelin-contracts/contracts/crosschain/README.adoc +0 -34
  2758. package/lib/openzeppelin-contracts/contracts/crosschain/amb/CrossChainEnabledAMB.sol +0 -49
  2759. package/lib/openzeppelin-contracts/contracts/crosschain/amb/LibAMB.sol +0 -35
  2760. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1.sol +0 -44
  2761. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL2.sol +0 -40
  2762. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/LibArbitrumL1.sol +0 -42
  2763. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/LibArbitrumL2.sol +0 -45
  2764. package/lib/openzeppelin-contracts/contracts/crosschain/errors.sol +0 -7
  2765. package/lib/openzeppelin-contracts/contracts/crosschain/optimism/CrossChainEnabledOptimism.sol +0 -41
  2766. package/lib/openzeppelin-contracts/contracts/crosschain/optimism/LibOptimism.sol +0 -36
  2767. package/lib/openzeppelin-contracts/contracts/crosschain/polygon/CrossChainEnabledPolygonChild.sol +0 -72
  2768. package/lib/openzeppelin-contracts/contracts/finance/PaymentSplitter.sol +0 -214
  2769. package/lib/openzeppelin-contracts/contracts/governance/compatibility/GovernorCompatibilityBravo.sol +0 -285
  2770. package/lib/openzeppelin-contracts/contracts/governance/compatibility/IGovernorCompatibilityBravo.sol +0 -114
  2771. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalThreshold.sol +0 -23
  2772. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesComp.sol +0 -31
  2773. package/lib/openzeppelin-contracts/contracts/governance/extensions/IGovernorTimelock.sol +0 -26
  2774. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC2612.sol +0 -8
  2775. package/lib/openzeppelin-contracts/contracts/metatx/MinimalForwarder.sol +0 -73
  2776. package/lib/openzeppelin-contracts/contracts/mocks/AccessControlCrossChainMock.sol +0 -22
  2777. package/lib/openzeppelin-contracts/contracts/mocks/AccessControlEnumerableMock.sol +0 -17
  2778. package/lib/openzeppelin-contracts/contracts/mocks/AccessControlMock.sol +0 -17
  2779. package/lib/openzeppelin-contracts/contracts/mocks/AddressImpl.sol +0 -46
  2780. package/lib/openzeppelin-contracts/contracts/mocks/BadBeacon.sol +0 -11
  2781. package/lib/openzeppelin-contracts/contracts/mocks/Base64Mock.sol +0 -11
  2782. package/lib/openzeppelin-contracts/contracts/mocks/BitmapMock.sol +0 -27
  2783. package/lib/openzeppelin-contracts/contracts/mocks/CheckpointsMock.sol +0 -120
  2784. package/lib/openzeppelin-contracts/contracts/mocks/ClashingImplementation.sol +0 -18
  2785. package/lib/openzeppelin-contracts/contracts/mocks/ClonesMock.sol +0 -36
  2786. package/lib/openzeppelin-contracts/contracts/mocks/ConditionalEscrowMock.sol +0 -18
  2787. package/lib/openzeppelin-contracts/contracts/mocks/CountersImpl.sol +0 -27
  2788. package/lib/openzeppelin-contracts/contracts/mocks/Create2Impl.sol +0 -34
  2789. package/lib/openzeppelin-contracts/contracts/mocks/DoubleEndedQueueMock.sol +0 -58
  2790. package/lib/openzeppelin-contracts/contracts/mocks/ECDSAMock.sol +0 -41
  2791. package/lib/openzeppelin-contracts/contracts/mocks/EIP712External.sol +0 -31
  2792. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155BurnableMock.sol +0 -18
  2793. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155Mock.sol +0 -51
  2794. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155PausableMock.sol +0 -29
  2795. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155ReceiverMock.sol +0 -52
  2796. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155SupplyMock.sol +0 -21
  2797. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155URIStorageMock.sol +0 -22
  2798. package/lib/openzeppelin-contracts/contracts/mocks/ERC165CheckerMock.sol +0 -29
  2799. package/lib/openzeppelin-contracts/contracts/mocks/ERC165Mock.sol +0 -7
  2800. package/lib/openzeppelin-contracts/contracts/mocks/ERC165StorageMock.sol +0 -11
  2801. package/lib/openzeppelin-contracts/contracts/mocks/ERC1820ImplementerMock.sol +0 -11
  2802. package/lib/openzeppelin-contracts/contracts/mocks/ERC20BurnableMock.sol +0 -16
  2803. package/lib/openzeppelin-contracts/contracts/mocks/ERC20CappedMock.sol +0 -17
  2804. package/lib/openzeppelin-contracts/contracts/mocks/ERC20DecimalsMock.sol +0 -29
  2805. package/lib/openzeppelin-contracts/contracts/mocks/ERC20FlashMintMock.sol +0 -43
  2806. package/lib/openzeppelin-contracts/contracts/mocks/ERC20Mock.sol +0 -41
  2807. package/lib/openzeppelin-contracts/contracts/mocks/ERC20PausableMock.sol +0 -33
  2808. package/lib/openzeppelin-contracts/contracts/mocks/ERC20PermitMock.sol +0 -20
  2809. package/lib/openzeppelin-contracts/contracts/mocks/ERC20SnapshotMock.sol +0 -28
  2810. package/lib/openzeppelin-contracts/contracts/mocks/ERC20VotesCompMock.sol +0 -21
  2811. package/lib/openzeppelin-contracts/contracts/mocks/ERC20VotesMock.sol +0 -21
  2812. package/lib/openzeppelin-contracts/contracts/mocks/ERC20WrapperMock.sol +0 -17
  2813. package/lib/openzeppelin-contracts/contracts/mocks/ERC4626Mock.sol +0 -60
  2814. package/lib/openzeppelin-contracts/contracts/mocks/ERC721BurnableMock.sol +0 -29
  2815. package/lib/openzeppelin-contracts/contracts/mocks/ERC721ConsecutiveEnumerableMock.sol +0 -55
  2816. package/lib/openzeppelin-contracts/contracts/mocks/ERC721ConsecutiveMock.sol +0 -86
  2817. package/lib/openzeppelin-contracts/contracts/mocks/ERC721EnumerableMock.sol +0 -51
  2818. package/lib/openzeppelin-contracts/contracts/mocks/ERC721Mock.sol +0 -41
  2819. package/lib/openzeppelin-contracts/contracts/mocks/ERC721PausableMock.sol +0 -45
  2820. package/lib/openzeppelin-contracts/contracts/mocks/ERC721ReceiverMock.sol +0 -42
  2821. package/lib/openzeppelin-contracts/contracts/mocks/ERC721RoyaltyMock.sol +0 -33
  2822. package/lib/openzeppelin-contracts/contracts/mocks/ERC721URIStorageMock.sol +0 -55
  2823. package/lib/openzeppelin-contracts/contracts/mocks/ERC721VotesMock.sol +0 -25
  2824. package/lib/openzeppelin-contracts/contracts/mocks/ERC777Mock.sol +0 -56
  2825. package/lib/openzeppelin-contracts/contracts/mocks/ERC777SenderRecipientMock.sol +0 -161
  2826. package/lib/openzeppelin-contracts/contracts/mocks/EnumerableMapMock.sol +0 -221
  2827. package/lib/openzeppelin-contracts/contracts/mocks/EnumerableSetMock.sol +0 -111
  2828. package/lib/openzeppelin-contracts/contracts/mocks/GovernorCompMock.sol +0 -31
  2829. package/lib/openzeppelin-contracts/contracts/mocks/GovernorCompatibilityBravoMock.sol +0 -127
  2830. package/lib/openzeppelin-contracts/contracts/mocks/GovernorMock.sol +0 -50
  2831. package/lib/openzeppelin-contracts/contracts/mocks/GovernorPreventLateQuorumMock.sol +0 -60
  2832. package/lib/openzeppelin-contracts/contracts/mocks/GovernorTimelockCompoundMock.sol +0 -96
  2833. package/lib/openzeppelin-contracts/contracts/mocks/GovernorTimelockControlMock.sol +0 -93
  2834. package/lib/openzeppelin-contracts/contracts/mocks/GovernorVoteMock.sol +0 -31
  2835. package/lib/openzeppelin-contracts/contracts/mocks/GovernorWithParamsMock.sol +0 -61
  2836. package/lib/openzeppelin-contracts/contracts/mocks/MathMock.sol +0 -48
  2837. package/lib/openzeppelin-contracts/contracts/mocks/MerkleProofWrapper.sol +0 -65
  2838. package/lib/openzeppelin-contracts/contracts/mocks/MulticallTest.sol +0 -23
  2839. package/lib/openzeppelin-contracts/contracts/mocks/MulticallTokenMock.sol +0 -10
  2840. package/lib/openzeppelin-contracts/contracts/mocks/Ownable2StepMock.sol +0 -7
  2841. package/lib/openzeppelin-contracts/contracts/mocks/OwnableMock.sol +0 -7
  2842. package/lib/openzeppelin-contracts/contracts/mocks/PullPaymentMock.sol +0 -15
  2843. package/lib/openzeppelin-contracts/contracts/mocks/SafeCastMock.sol +0 -267
  2844. package/lib/openzeppelin-contracts/contracts/mocks/SafeERC20Helper.sol +0 -194
  2845. package/lib/openzeppelin-contracts/contracts/mocks/SafeMathMock.sol +0 -138
  2846. package/lib/openzeppelin-contracts/contracts/mocks/SignatureCheckerMock.sol +0 -17
  2847. package/lib/openzeppelin-contracts/contracts/mocks/SignedMathMock.sol +0 -23
  2848. package/lib/openzeppelin-contracts/contracts/mocks/SignedSafeMathMock.sol +0 -23
  2849. package/lib/openzeppelin-contracts/contracts/mocks/StringsMock.sol +0 -23
  2850. package/lib/openzeppelin-contracts/contracts/mocks/TimersBlockNumberImpl.sol +0 -39
  2851. package/lib/openzeppelin-contracts/contracts/mocks/TimersTimestampImpl.sol +0 -39
  2852. package/lib/openzeppelin-contracts/contracts/mocks/UUPS/UUPSLegacy.sol +0 -58
  2853. package/lib/openzeppelin-contracts/contracts/mocks/UUPS/UUPSUpgradeableMock.sol +0 -21
  2854. package/lib/openzeppelin-contracts/contracts/mocks/crosschain/bridges.sol +0 -102
  2855. package/lib/openzeppelin-contracts/contracts/mocks/crosschain/receivers.sol +0 -54
  2856. package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor1.sol +0 -87
  2857. package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor2.sol +0 -93
  2858. package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor3.sol +0 -96
  2859. package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol +0 -185
  2860. package/lib/openzeppelin-contracts/contracts/security/Pausable.sol +0 -105
  2861. package/lib/openzeppelin-contracts/contracts/security/PullPayment.sol +0 -74
  2862. package/lib/openzeppelin-contracts/contracts/security/README.adoc +0 -20
  2863. package/lib/openzeppelin-contracts/contracts/security/ReentrancyGuard.sol +0 -69
  2864. package/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/ERC1155PresetMinterPauser.sol +0 -128
  2865. package/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/README.md +0 -1
  2866. package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol +0 -19
  2867. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Snapshot.sol +0 -195
  2868. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20VotesComp.sol +0 -46
  2869. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Permit.sol +0 -95
  2870. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol +0 -60
  2871. package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol +0 -35
  2872. package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol +0 -94
  2873. package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/README.md +0 -1
  2874. package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol +0 -76
  2875. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/draft-ERC721Votes.sol +0 -9
  2876. package/lib/openzeppelin-contracts/contracts/token/ERC721/presets/ERC721PresetMinterPauserAutoId.sol +0 -140
  2877. package/lib/openzeppelin-contracts/contracts/token/ERC721/presets/README.md +0 -1
  2878. package/lib/openzeppelin-contracts/contracts/token/ERC777/ERC777.sol +0 -547
  2879. package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol +0 -209
  2880. package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol +0 -35
  2881. package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol +0 -35
  2882. package/lib/openzeppelin-contracts/contracts/token/ERC777/README.adoc +0 -30
  2883. package/lib/openzeppelin-contracts/contracts/token/ERC777/presets/ERC777PresetFixedSupply.sol +0 -30
  2884. package/lib/openzeppelin-contracts/contracts/utils/Checkpoints.sol +0 -554
  2885. package/lib/openzeppelin-contracts/contracts/utils/Counters.sol +0 -43
  2886. package/lib/openzeppelin-contracts/contracts/utils/Timers.sol +0 -73
  2887. package/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-EIP712.sol +0 -8
  2888. package/lib/openzeppelin-contracts/contracts/utils/escrow/ConditionalEscrow.sol +0 -25
  2889. package/lib/openzeppelin-contracts/contracts/utils/escrow/Escrow.sol +0 -67
  2890. package/lib/openzeppelin-contracts/contracts/utils/escrow/RefundEscrow.sol +0 -100
  2891. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Storage.sol +0 -42
  2892. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC1820Implementer.sol +0 -44
  2893. package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Implementer.sol +0 -20
  2894. package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol +0 -116
  2895. package/lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol +0 -227
  2896. package/lib/openzeppelin-contracts/contracts/utils/math/SignedSafeMath.sol +0 -68
  2897. package/lib/openzeppelin-contracts/contracts/vendor/amb/IAMB.sol +0 -49
  2898. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IArbSys.sol +0 -141
  2899. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IBridge.sol +0 -109
  2900. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IDelayedMessageProvider.sol +0 -16
  2901. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IInbox.sol +0 -152
  2902. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IOutbox.sol +0 -121
  2903. package/lib/openzeppelin-contracts/contracts/vendor/optimism/ICrossDomainMessenger.sol +0 -38
  2904. package/lib/openzeppelin-contracts/contracts/vendor/optimism/LICENSE +0 -22
  2905. package/lib/openzeppelin-contracts/contracts/vendor/polygon/IFxMessageProcessor.sol +0 -11
  2906. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  2907. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  2908. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/drafts.adoc +0 -19
  2909. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc777.adoc +0 -73
  2910. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  2911. package/lib/openzeppelin-contracts/hardhat/env-contract.js +0 -10
  2912. package/lib/openzeppelin-contracts/lib/forge-std/.gitmodules +0 -3
  2913. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/LICENSE +0 -674
  2914. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/Makefile +0 -14
  2915. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/default.nix +0 -4
  2916. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
  2917. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/package.json +0 -15
  2918. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/test.sol +0 -469
  2919. package/lib/openzeppelin-contracts/scripts/generate/templates/CheckpointsMock.js +0 -80
  2920. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMapMock.js +0 -66
  2921. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSetMock.js +0 -56
  2922. package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCastMock.js +0 -50
  2923. package/lib/openzeppelin-contracts/scripts/migrate-imports.js +0 -177
  2924. package/lib/openzeppelin-contracts/scripts/prepare-contracts-package.sh +0 -15
  2925. package/lib/openzeppelin-contracts/scripts/prepare.sh +0 -10
  2926. package/lib/openzeppelin-contracts/scripts/release/release.sh +0 -145
  2927. package/lib/openzeppelin-contracts/scripts/release/update-changelog-release-date.js +0 -34
  2928. package/lib/openzeppelin-contracts/test/access/AccessControlCrossChain.test.js +0 -59
  2929. package/lib/openzeppelin-contracts/test/access/AccessControlEnumerable.test.js +0 -15
  2930. package/lib/openzeppelin-contracts/test/crosschain/CrossChainEnabled.test.js +0 -88
  2931. package/lib/openzeppelin-contracts/test/finance/PaymentSplitter.test.js +0 -217
  2932. package/lib/openzeppelin-contracts/test/governance/compatibility/GovernorCompatibilityBravo.test.js +0 -265
  2933. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorComp.test.js +0 -78
  2934. package/lib/openzeppelin-contracts/test/helpers/create2.js +0 -12
  2935. package/lib/openzeppelin-contracts/test/helpers/crosschain.js +0 -63
  2936. package/lib/openzeppelin-contracts/test/helpers/customError.js +0 -24
  2937. package/lib/openzeppelin-contracts/test/helpers/erc1967.js +0 -24
  2938. package/lib/openzeppelin-contracts/test/helpers/sign.js +0 -47
  2939. package/lib/openzeppelin-contracts/test/metatx/MinimalForwarder.test.js +0 -184
  2940. package/lib/openzeppelin-contracts/test/migrate-imports.test.js +0 -29
  2941. package/lib/openzeppelin-contracts/test/security/Pausable.test.js +0 -89
  2942. package/lib/openzeppelin-contracts/test/security/PullPayment.test.js +0 -51
  2943. package/lib/openzeppelin-contracts/test/security/ReentrancyGuard.test.js +0 -40
  2944. package/lib/openzeppelin-contracts/test/token/ERC1155/presets/ERC1155PresetMinterPauser.test.js +0 -146
  2945. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.behavior.js +0 -109
  2946. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.behavior.js +0 -32
  2947. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Snapshot.test.js +0 -204
  2948. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20VotesComp.test.js +0 -496
  2949. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Permit.test.js +0 -109
  2950. package/lib/openzeppelin-contracts/test/token/ERC20/presets/ERC20PresetFixedSupply.test.js +0 -42
  2951. package/lib/openzeppelin-contracts/test/token/ERC20/presets/ERC20PresetMinterPauser.test.js +0 -113
  2952. package/lib/openzeppelin-contracts/test/token/ERC20/utils/TokenTimelock.test.js +0 -71
  2953. package/lib/openzeppelin-contracts/test/token/ERC721/presets/ERC721PresetMinterPauserAutoId.test.js +0 -125
  2954. package/lib/openzeppelin-contracts/test/token/ERC777/ERC777.behavior.js +0 -555
  2955. package/lib/openzeppelin-contracts/test/token/ERC777/ERC777.test.js +0 -610
  2956. package/lib/openzeppelin-contracts/test/token/ERC777/presets/ERC777PresetFixedSupply.test.js +0 -49
  2957. package/lib/openzeppelin-contracts/test/utils/Checkpoints.test.js +0 -189
  2958. package/lib/openzeppelin-contracts/test/utils/Counters.test.js +0 -84
  2959. package/lib/openzeppelin-contracts/test/utils/TimersBlockNumberImpl.test.js +0 -55
  2960. package/lib/openzeppelin-contracts/test/utils/TimersTimestamp.test.js +0 -55
  2961. package/lib/openzeppelin-contracts/test/utils/escrow/ConditionalEscrow.test.js +0 -36
  2962. package/lib/openzeppelin-contracts/test/utils/escrow/Escrow.behavior.js +0 -94
  2963. package/lib/openzeppelin-contracts/test/utils/escrow/Escrow.test.js +0 -14
  2964. package/lib/openzeppelin-contracts/test/utils/escrow/RefundEscrow.test.js +0 -148
  2965. package/lib/openzeppelin-contracts/test/utils/introspection/ERC165Storage.test.js +0 -25
  2966. package/lib/openzeppelin-contracts/test/utils/introspection/ERC1820Implementer.test.js +0 -66
  2967. package/lib/openzeppelin-contracts/test/utils/math/SafeMath.test.js +0 -403
  2968. package/lib/openzeppelin-contracts/test/utils/math/SignedSafeMath.test.js +0 -152
  2969. package/lib/openzeppelin-contracts-upgradeable/.changeset/new-ways-own.md +0 -5
  2970. package/lib/openzeppelin-contracts-upgradeable/.eslintrc +0 -62
  2971. package/lib/openzeppelin-contracts-upgradeable/.gitattributes +0 -1
  2972. package/lib/openzeppelin-contracts-upgradeable/.github/ISSUE_TEMPLATE/bug_report.md +0 -21
  2973. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/changelog.yml +0 -28
  2974. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/merge-upstream.yml +0 -28
  2975. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/transpile.yml +0 -27
  2976. package/lib/openzeppelin-contracts-upgradeable/.solhint.json +0 -14
  2977. package/lib/openzeppelin-contracts-upgradeable/UPGRADEABLE.md +0 -47
  2978. package/lib/openzeppelin-contracts-upgradeable/audit/2017-03.md +0 -292
  2979. package/lib/openzeppelin-contracts-upgradeable/certora/applyHarness.patch +0 -101
  2980. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20VotesHarness.sol +0 -28
  2981. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/WizardControlFirstPriority.sol +0 -150
  2982. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/WizardFirstTry.sol +0 -141
  2983. package/lib/openzeppelin-contracts-upgradeable/certora/munged/.gitignore +0 -2
  2984. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/Governor.sh +0 -10
  2985. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/GovernorCountingSimple-counting.sh +0 -10
  2986. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/WizardControlFirstPriority.sh +0 -12
  2987. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/WizardFirstTry.sh +0 -10
  2988. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/sanity.sh +0 -14
  2989. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/verifyAll.sh +0 -39
  2990. package/lib/openzeppelin-contracts-upgradeable/certora/specs/GovernorBase.spec +0 -333
  2991. package/lib/openzeppelin-contracts-upgradeable/certora/specs/GovernorCountingSimple.spec +0 -221
  2992. package/lib/openzeppelin-contracts-upgradeable/certora/specs/RulesInProgress.spec +0 -139
  2993. package/lib/openzeppelin-contracts-upgradeable/certora/specs/sanity.spec +0 -14
  2994. package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlCrossChainUpgradeable.sol +0 -58
  2995. package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlEnumerableUpgradeable.sol +0 -77
  2996. package/lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlEnumerableUpgradeable.sol +0 -31
  2997. package/lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol +0 -88
  2998. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/CrossChainEnabledUpgradeable.sol +0 -67
  2999. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/README.adoc +0 -34
  3000. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/amb/CrossChainEnabledAMBUpgradeable.sol +0 -57
  3001. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/amb/LibAMBUpgradeable.sol +0 -35
  3002. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1Upgradeable.sol +0 -52
  3003. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL2Upgradeable.sol +0 -53
  3004. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/LibArbitrumL1Upgradeable.sol +0 -42
  3005. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/LibArbitrumL2Upgradeable.sol +0 -45
  3006. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/errorsUpgradeable.sol +0 -7
  3007. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/optimism/CrossChainEnabledOptimismUpgradeable.sol +0 -49
  3008. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/optimism/LibOptimismUpgradeable.sol +0 -36
  3009. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/polygon/CrossChainEnabledPolygonChildUpgradeable.sol +0 -90
  3010. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/PaymentSplitterUpgradeable.sol +0 -226
  3011. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/IGovernorUpgradeable.sol +0 -289
  3012. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/TimelockControllerWith46MigrationUpgradeable.sol +0 -56
  3013. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/compatibility/GovernorCompatibilityBravoUpgradeable.sol +0 -298
  3014. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/compatibility/IGovernorCompatibilityBravoUpgradeable.sol +0 -127
  3015. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorProposalThresholdUpgradeable.sol +0 -36
  3016. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesCompUpgradeable.sol +0 -45
  3017. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/IGovernorTimelockUpgradeable.sol +0 -39
  3018. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/IVotesUpgradeable.sol +0 -61
  3019. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155MetadataURIUpgradeable.sol +0 -6
  3020. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155ReceiverUpgradeable.sol +0 -6
  3021. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155Upgradeable.sol +0 -6
  3022. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1271Upgradeable.sol +0 -19
  3023. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363ReceiverUpgradeable.sol +0 -32
  3024. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363SpenderUpgradeable.sol +0 -30
  3025. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363Upgradeable.sol +0 -95
  3026. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC165Upgradeable.sol +0 -6
  3027. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1820ImplementerUpgradeable.sol +0 -6
  3028. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1820RegistryUpgradeable.sol +0 -6
  3029. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC20MetadataUpgradeable.sol +0 -6
  3030. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC20Upgradeable.sol +0 -6
  3031. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC2309Upgradeable.sol +0 -21
  3032. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC2981Upgradeable.sol +0 -25
  3033. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156FlashBorrowerUpgradeable.sol +0 -29
  3034. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156FlashLenderUpgradeable.sol +0 -43
  3035. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156Upgradeable.sol +0 -7
  3036. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC4626Upgradeable.sol +0 -240
  3037. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721EnumerableUpgradeable.sol +0 -6
  3038. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721MetadataUpgradeable.sol +0 -6
  3039. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721ReceiverUpgradeable.sol +0 -6
  3040. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721Upgradeable.sol +0 -6
  3041. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777RecipientUpgradeable.sol +0 -6
  3042. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777SenderUpgradeable.sol +0 -6
  3043. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777Upgradeable.sol +0 -6
  3044. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC1822Upgradeable.sol +0 -20
  3045. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC2612Upgradeable.sol +0 -8
  3046. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/MinimalForwarderUpgradeable.sol +0 -85
  3047. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlCrossChainMockUpgradeable.sol +0 -34
  3048. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlEnumerableMockUpgradeable.sol +0 -29
  3049. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlMockUpgradeable.sol +0 -29
  3050. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AddressImplUpgradeable.sol +0 -54
  3051. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BadBeaconUpgradeable.sol +0 -36
  3052. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Base64MockUpgradeable.sol +0 -24
  3053. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BitmapMockUpgradeable.sol +0 -40
  3054. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CheckpointsMockUpgradeable.sol +0 -157
  3055. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ClashingImplementationUpgradeable.sol +0 -31
  3056. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ClonesMockUpgradeable.sol +0 -49
  3057. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ConditionalEscrowMockUpgradeable.sol +0 -32
  3058. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CountersImplUpgradeable.sol +0 -40
  3059. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Create2ImplUpgradeable.sol +0 -47
  3060. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/DoubleEndedQueueMockUpgradeable.sol +0 -71
  3061. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ECDSAMockUpgradeable.sol +0 -54
  3062. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EIP712ExternalUpgradeable.sol +0 -43
  3063. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155BurnableMockUpgradeable.sol +0 -30
  3064. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155MockUpgradeable.sol +0 -63
  3065. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155PausableMockUpgradeable.sol +0 -43
  3066. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155ReceiverMockUpgradeable.sol +0 -69
  3067. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155SupplyMockUpgradeable.sol +0 -34
  3068. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155URIStorageMockUpgradeable.sol +0 -36
  3069. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165CheckerMockUpgradeable.sol +0 -42
  3070. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165MockUpgradeable.sol +0 -20
  3071. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165StorageMockUpgradeable.sol +0 -24
  3072. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1820ImplementerMockUpgradeable.sol +0 -24
  3073. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20BurnableMockUpgradeable.sol +0 -34
  3074. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20CappedMockUpgradeable.sol +0 -34
  3075. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20DecimalsMockUpgradeable.sol +0 -46
  3076. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20FlashMintMockUpgradeable.sol +0 -61
  3077. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20MockUpgradeable.sol +0 -59
  3078. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20PausableMockUpgradeable.sol +0 -52
  3079. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20PermitMockUpgradeable.sol +0 -40
  3080. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20SnapshotMockUpgradeable.sol +0 -46
  3081. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20VotesCompMockUpgradeable.sol +0 -35
  3082. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20VotesMockUpgradeable.sol +0 -35
  3083. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20WrapperMockUpgradeable.sol +0 -34
  3084. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC4626MockUpgradeable.sol +0 -96
  3085. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721BurnableMockUpgradeable.sol +0 -41
  3086. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ConsecutiveEnumerableMockUpgradeable.sol +0 -73
  3087. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ConsecutiveMockUpgradeable.sol +0 -119
  3088. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721EnumerableMockUpgradeable.sol +0 -63
  3089. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721MockUpgradeable.sol +0 -53
  3090. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721PausableMockUpgradeable.sol +0 -58
  3091. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ReceiverMockUpgradeable.sol +0 -54
  3092. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721RoyaltyMockUpgradeable.sol +0 -45
  3093. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721URIStorageMockUpgradeable.sol +0 -67
  3094. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721VotesMockUpgradeable.sol +0 -38
  3095. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC777MockUpgradeable.sol +0 -75
  3096. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC777SenderRecipientMockUpgradeable.sol +0 -176
  3097. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EnumerableMapMockUpgradeable.sol +0 -282
  3098. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EnumerableSetMockUpgradeable.sol +0 -148
  3099. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorCompMockUpgradeable.sol +0 -45
  3100. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorCompatibilityBravoMockUpgradeable.sol +0 -145
  3101. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorMockUpgradeable.sol +0 -67
  3102. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorPreventLateQuorumMockUpgradeable.sol +0 -79
  3103. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorTimelockCompoundMockUpgradeable.sol +0 -114
  3104. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorTimelockControlMockUpgradeable.sol +0 -111
  3105. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorVoteMockUpgradeable.sol +0 -45
  3106. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorWithParamsMockUpgradeable.sol +0 -75
  3107. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MathMockUpgradeable.sol +0 -61
  3108. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleProofWrapperUpgradeable.sol +0 -78
  3109. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallTestUpgradeable.sol +0 -36
  3110. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallTokenMockUpgradeable.sol +0 -23
  3111. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Ownable2StepMockUpgradeable.sol +0 -21
  3112. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/OwnableMockUpgradeable.sol +0 -21
  3113. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/PullPaymentMockUpgradeable.sol +0 -27
  3114. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeCastMockUpgradeable.sol +0 -280
  3115. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeERC20HelperUpgradeable.sol +0 -257
  3116. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeMathMockUpgradeable.sol +0 -151
  3117. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignatureCheckerMockUpgradeable.sol +0 -30
  3118. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignedMathMockUpgradeable.sol +0 -36
  3119. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignedSafeMathMockUpgradeable.sol +0 -36
  3120. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StringsMockUpgradeable.sol +0 -36
  3121. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimersBlockNumberImplUpgradeable.sol +0 -52
  3122. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimersTimestampImplUpgradeable.sol +0 -52
  3123. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UUPS/UUPSLegacyUpgradeable.sol +0 -81
  3124. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UUPS/UUPSUpgradeableMockUpgradeable.sol +0 -46
  3125. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/crosschain/bridgesUpgradeable.sol +0 -199
  3126. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/crosschain/receiversUpgradeable.sol +0 -107
  3127. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor1Upgradeable.sol +0 -98
  3128. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor2Upgradeable.sol +0 -104
  3129. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor3Upgradeable.sol +0 -107
  3130. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol +0 -89
  3131. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol +0 -212
  3132. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/beacon/IBeaconUpgradeable.sol +0 -16
  3133. package/lib/openzeppelin-contracts-upgradeable/contracts/security/PausableUpgradeable.sol +0 -117
  3134. package/lib/openzeppelin-contracts-upgradeable/contracts/security/PullPaymentUpgradeable.sol +0 -89
  3135. package/lib/openzeppelin-contracts-upgradeable/contracts/security/README.adoc +0 -20
  3136. package/lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol +0 -81
  3137. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol +0 -58
  3138. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol +0 -125
  3139. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol +0 -22
  3140. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.sol +0 -145
  3141. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/presets/README.md +0 -1
  3142. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/utils/ERC1155ReceiverUpgradeable.sol +0 -32
  3143. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol +0 -82
  3144. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20SnapshotUpgradeable.sol +0 -208
  3145. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20VotesCompUpgradeable.sol +0 -59
  3146. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/IERC20MetadataUpgradeable.sol +0 -28
  3147. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol +0 -109
  3148. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol +0 -60
  3149. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/ERC20PresetFixedSupplyUpgradeable.sol +0 -61
  3150. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/ERC20PresetMinterPauserUpgradeable.sol +0 -111
  3151. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/README.md +0 -1
  3152. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/utils/SafeERC20Upgradeable.sol +0 -116
  3153. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/utils/TokenTimelockUpgradeable.sol +0 -94
  3154. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/IERC721ReceiverUpgradeable.sol +0 -27
  3155. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/IERC721Upgradeable.sol +0 -145
  3156. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol +0 -29
  3157. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/IERC721MetadataUpgradeable.sol +0 -27
  3158. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/draft-ERC721VotesUpgradeable.sol +0 -9
  3159. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/presets/ERC721PresetMinterPauserAutoIdUpgradeable.sol +0 -165
  3160. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/presets/README.md +0 -1
  3161. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/ERC777Upgradeable.sol +0 -563
  3162. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777RecipientUpgradeable.sol +0 -35
  3163. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777SenderUpgradeable.sol +0 -35
  3164. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777Upgradeable.sol +0 -209
  3165. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/README.adoc +0 -30
  3166. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/presets/ERC777PresetFixedSupplyUpgradeable.sol +0 -58
  3167. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol +0 -219
  3168. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ArraysUpgradeable.sol +0 -96
  3169. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/Base64Upgradeable.sol +0 -92
  3170. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/CheckpointsUpgradeable.sol +0 -554
  3171. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/CountersUpgradeable.sol +0 -43
  3172. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/Create2Upgradeable.sol +0 -83
  3173. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/StorageSlotUpgradeable.sol +0 -88
  3174. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol +0 -70
  3175. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/TimersUpgradeable.sol +0 -73
  3176. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/ECDSAUpgradeable.sol +0 -213
  3177. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/MerkleProofUpgradeable.sol +0 -223
  3178. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/SignatureCheckerUpgradeable.sol +0 -42
  3179. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/draft-EIP712Upgradeable.sol +0 -8
  3180. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/ConditionalEscrowUpgradeable.sol +0 -39
  3181. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/EscrowUpgradeable.sol +0 -84
  3182. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/RefundEscrowUpgradeable.sol +0 -113
  3183. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165CheckerUpgradeable.sol +0 -127
  3184. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165StorageUpgradeable.sol +0 -55
  3185. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC1820ImplementerUpgradeable.sol +0 -57
  3186. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol +0 -25
  3187. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC1820ImplementerUpgradeable.sol +0 -20
  3188. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC1820RegistryUpgradeable.sol +0 -116
  3189. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol +0 -345
  3190. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SafeCastUpgradeable.sol +0 -1136
  3191. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SafeMathUpgradeable.sol +0 -227
  3192. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol +0 -43
  3193. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedSafeMathUpgradeable.sol +0 -68
  3194. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/BitMapsUpgradeable.sol +0 -55
  3195. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/DoubleEndedQueueUpgradeable.sol +0 -170
  3196. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/EnumerableMapUpgradeable.sol +0 -530
  3197. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/EnumerableSetUpgradeable.sol +0 -378
  3198. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/amb/IAMBUpgradeable.sol +0 -49
  3199. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IArbSysUpgradeable.sol +0 -141
  3200. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IBridgeUpgradeable.sol +0 -109
  3201. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IDelayedMessageProviderUpgradeable.sol +0 -16
  3202. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IInboxUpgradeable.sol +0 -152
  3203. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IOutboxUpgradeable.sol +0 -121
  3204. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/compound/ICompoundTimelockUpgradeable.sol +0 -86
  3205. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/optimism/ICrossDomainMessengerUpgradeable.sol +0 -38
  3206. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/optimism/LICENSE +0 -22
  3207. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/polygon/IFxMessageProcessorUpgradeable.sol +0 -11
  3208. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  3209. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  3210. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/drafts.adoc +0 -19
  3211. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc777.adoc +0 -73
  3212. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  3213. package/lib/openzeppelin-contracts-upgradeable/hardhat/env-contract.js +0 -10
  3214. package/lib/openzeppelin-contracts-upgradeable/hardhat/task-get-compiler-input.js +0 -10
  3215. package/lib/openzeppelin-contracts-upgradeable/icon.svg +0 -13
  3216. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.gitmodules +0 -3
  3217. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/LICENSE +0 -674
  3218. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/Makefile +0 -14
  3219. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/default.nix +0 -4
  3220. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
  3221. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/package.json +0 -15
  3222. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/src/test.sol +0 -469
  3223. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/CheckpointsMock.js +0 -80
  3224. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableMapMock.js +0 -66
  3225. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableSetMock.js +0 -56
  3226. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SafeCastMock.js +0 -50
  3227. package/lib/openzeppelin-contracts-upgradeable/scripts/migrate-imports.js +0 -177
  3228. package/lib/openzeppelin-contracts-upgradeable/scripts/prepare-contracts-package.sh +0 -15
  3229. package/lib/openzeppelin-contracts-upgradeable/scripts/prepare.sh +0 -10
  3230. package/lib/openzeppelin-contracts-upgradeable/scripts/release/release.sh +0 -145
  3231. package/lib/openzeppelin-contracts-upgradeable/scripts/release/update-changelog-release-date.js +0 -34
  3232. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/merge-upstream.sh +0 -33
  3233. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch/.gitkeep +0 -0
  3234. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControlCrossChain.test.js +0 -59
  3235. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControlEnumerable.test.js +0 -15
  3236. package/lib/openzeppelin-contracts-upgradeable/test/crosschain/CrossChainEnabled.test.js +0 -88
  3237. package/lib/openzeppelin-contracts-upgradeable/test/finance/PaymentSplitter.test.js +0 -217
  3238. package/lib/openzeppelin-contracts-upgradeable/test/governance/compatibility/GovernorCompatibilityBravo.test.js +0 -265
  3239. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorComp.test.js +0 -78
  3240. package/lib/openzeppelin-contracts-upgradeable/test/helpers/create2.js +0 -12
  3241. package/lib/openzeppelin-contracts-upgradeable/test/helpers/crosschain.js +0 -63
  3242. package/lib/openzeppelin-contracts-upgradeable/test/helpers/customError.js +0 -24
  3243. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc1967.js +0 -24
  3244. package/lib/openzeppelin-contracts-upgradeable/test/helpers/sign.js +0 -47
  3245. package/lib/openzeppelin-contracts-upgradeable/test/metatx/MinimalForwarder.test.js +0 -184
  3246. package/lib/openzeppelin-contracts-upgradeable/test/migrate-imports.test.js +0 -29
  3247. package/lib/openzeppelin-contracts-upgradeable/test/security/Pausable.test.js +0 -89
  3248. package/lib/openzeppelin-contracts-upgradeable/test/security/PullPayment.test.js +0 -51
  3249. package/lib/openzeppelin-contracts-upgradeable/test/security/ReentrancyGuard.test.js +0 -40
  3250. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/presets/ERC1155PresetMinterPauser.test.js +0 -146
  3251. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Burnable.behavior.js +0 -109
  3252. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Capped.behavior.js +0 -32
  3253. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Snapshot.test.js +0 -204
  3254. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20VotesComp.test.js +0 -496
  3255. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20Permit.test.js +0 -109
  3256. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/presets/ERC20PresetFixedSupply.test.js +0 -42
  3257. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/presets/ERC20PresetMinterPauser.test.js +0 -113
  3258. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/utils/TokenTimelock.test.js +0 -71
  3259. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/presets/ERC721PresetMinterPauserAutoId.test.js +0 -125
  3260. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/ERC777.behavior.js +0 -555
  3261. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/ERC777.test.js +0 -610
  3262. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/presets/ERC777PresetFixedSupply.test.js +0 -49
  3263. package/lib/openzeppelin-contracts-upgradeable/test/utils/Checkpoints.test.js +0 -189
  3264. package/lib/openzeppelin-contracts-upgradeable/test/utils/Counters.test.js +0 -84
  3265. package/lib/openzeppelin-contracts-upgradeable/test/utils/TimersBlockNumberImpl.test.js +0 -55
  3266. package/lib/openzeppelin-contracts-upgradeable/test/utils/TimersTimestamp.test.js +0 -55
  3267. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/ConditionalEscrow.test.js +0 -36
  3268. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/Escrow.behavior.js +0 -94
  3269. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/Escrow.test.js +0 -14
  3270. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/RefundEscrow.test.js +0 -148
  3271. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165Storage.test.js +0 -25
  3272. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC1820Implementer.test.js +0 -66
  3273. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SafeMath.test.js +0 -403
  3274. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedSafeMath.test.js +0 -152
  3275. package/migrations/10_deploy_weth.js +0 -5
  3276. package/migrations/11_deploy_full_flow.js +0 -99
  3277. package/migrations/12_deploy_pm_v3_querier.js +0 -7
  3278. package/migrations/13_deploy_pm_v3_factory.js +0 -14
  3279. package/migrations/15_deploy_ppmm.js +0 -10
  3280. package/migrations/16_deploy_raffle.js +0 -5
  3281. package/migrations/1_initial_migration.js +0 -5
  3282. package/migrations/2_deploy_erc20.js +0 -10
  3283. package/migrations/3_deploy_realitio.js +0 -11
  3284. package/migrations/4_deploy_pm.js +0 -20
  3285. package/migrations/5_seed_markets.js +0 -51
  3286. package/migrations/6_deploy_achievements.js +0 -5
  3287. package/migrations/7_deploy_voting.js +0 -14
  3288. package/migrations/8_deploy_pm_v2.js +0 -20
  3289. package/migrations/9_seed_markets_v2.js +0 -68
  3290. package/tests/PPMMarketContract.js +0 -340
  3291. package/tests/fantasyERC20Contract.js +0 -225
  3292. package/tests/index.js +0 -10
  3293. package/tests/predictionMarketContract.js +0 -466
  3294. package/tests/predictionMarketV2Contract.js +0 -1042
  3295. package/tests/predictionMarketV3Contract.js +0 -1079
  3296. package/tests/predictionMarketV3ControllerContract.js +0 -613
  3297. package/tests/predictionMarketV3FactoryContract.js +0 -469
  3298. package/tests/predictionMarketV3ManagerContract.js +0 -610
  3299. package/tests/utils.js +0 -16
  3300. package/tests/votingContract.js +0 -490
  3301. package/truffle-config.js +0 -134
  3302. package/zkout/AccessControl.sol/AccessControl.json +0 -1
  3303. package/zkout/AccessControlEnumerable.sol/AccessControlEnumerable.json +0 -1
  3304. package/zkout/Address.sol/Address.json +0 -1
  3305. package/zkout/Clones.sol/Clones.json +0 -1
  3306. package/zkout/Context.sol/Context.json +0 -1
  3307. package/zkout/ERC165.sol/ERC165.json +0 -1
  3308. package/zkout/ERC20.sol/ERC20.json +0 -1
  3309. package/zkout/ERC20Burnable.sol/ERC20Burnable.json +0 -1
  3310. package/zkout/ERC20Pausable.sol/ERC20Pausable.json +0 -1
  3311. package/zkout/ERC20PresetMinterPauser.sol/ERC20PresetMinterPauser.json +0 -1
  3312. package/zkout/EnumerableSet.sol/EnumerableSet.json +0 -1
  3313. package/zkout/FantasyERC20.sol/FantasyERC20.json +0 -1
  3314. package/zkout/IAccessControl.sol/IAccessControl.json +0 -1
  3315. package/zkout/IAccessControlEnumerable.sol/IAccessControlEnumerable.json +0 -1
  3316. package/zkout/IERC165.sol/IERC165.json +0 -1
  3317. package/zkout/IERC20.sol/IERC20.json +0 -1
  3318. package/zkout/IERC20Metadata.sol/IERC20Metadata.json +0 -1
  3319. package/zkout/IFantasyERC20.sol/IFantasyERC20.json +0 -1
  3320. package/zkout/IPredictionMarketV3.sol/IPredictionMarketV3.json +0 -1
  3321. package/zkout/IPredictionMarketV3Factory.sol/IPredictionMarketV3Factory.json +0 -1
  3322. package/zkout/IPredictionMarketV3Manager.sol/IPredictionMarketV3Manager.json +0 -1
  3323. package/zkout/IRealityETH_ERC20.sol/IRealityETH_ERC20.json +0 -1
  3324. package/zkout/LandFactory.sol/LandFactory.json +0 -1
  3325. package/zkout/Math.sol/Math.json +0 -1
  3326. package/zkout/Migrations.sol/Migrations.json +0 -1
  3327. package/zkout/Ownable.sol/Ownable.json +0 -1
  3328. package/zkout/Pausable.sol/Pausable.json +0 -1
  3329. package/zkout/PredictionMarketV3.sol/CeilDiv.json +0 -1
  3330. package/zkout/PredictionMarketV3.sol/IWETH.json +0 -1
  3331. package/zkout/PredictionMarketV3.sol/PredictionMarketV3.json +0 -1
  3332. package/zkout/PredictionMarketV3Controller.sol/PredictionMarketV3Controller.json +0 -1
  3333. package/zkout/PredictionMarketV3Factory.sol/PredictionMarketV3Factory.json +0 -1
  3334. package/zkout/PredictionMarketV3Manager.sol/PredictionMarketV3Manager.json +0 -1
  3335. package/zkout/PredictionMarketV3Querier.sol/PredictionMarketV3Querier.json +0 -1
  3336. package/zkout/Proxy.sol/Proxy.json +0 -1
  3337. package/zkout/RealityETH_ERC20_Factory.sol/IRealityETH_IERC20.json +0 -1
  3338. package/zkout/RealityETH_ERC20_Factory.sol/RealityETH_ERC20_Factory.json +0 -1
  3339. package/zkout/RealityETH_ERC20_v3_0.sol/RealityETH_ERC20_v3_0_.json +0 -1
  3340. package/zkout/ReentrancyGuard.sol/ReentrancyGuard.json +0 -1
  3341. package/zkout/SafeERC20.sol/SafeERC20.json +0 -1
  3342. package/zkout/SafeMath.sol/SafeMath.json +0 -1
  3343. package/zkout/Strings.sol/Strings.json +0 -1
  3344. package/zkout/USDCERC20.sol/USDCERC20.json +0 -1
  3345. package/zkout/Voting.sol/Voting.json +0 -1
  3346. package/zkout/build-info/0fa499f04838f8c1f593bcbafd0fd1a5.json +0 -1
  3347. package/zkout/build-info/39c03363a71a9805ec8ec63c81a8aaaf.json +0 -1
  3348. package/zkout/build-info/637aa7b0942c0ead878e36bd5d598008.json +0 -1
  3349. package/zkout/build-info/810ab68b6fb1e3386ce5a111c7eb136f.json +0 -1
  3350. package/zkout/build-info/aec05d9534229710b5b5f567c42384a1.json +0 -1
  3351. package/zkout/build-info/cdd531656c4131c11667647afa1b2cca.json +0 -1
  3352. package/zkout/build-info/e702288987d16a0b64efe75b321dfb8a.json +0 -1
  3353. package/zkout/build-info/eccbfbbf7a8a18e02ebf05d3b7c6eea8.json +0 -1
  3354. package/zkout/contracts/BalanceHolder_ERC20.sol/BalanceHolder_ERC20.json +0 -1
  3355. package/zkout/contracts/IBalanceHolder_ERC20.sol/IBalanceHolder_ERC20.json +0 -1
  3356. package/zkout/contracts/RealityETH_ERC20-3.0.sol/RealityETH_ERC20_v3_0.json +0 -1
  3357. package/zkout/development/contracts/IERC20.sol/IERC20.json +0 -1
  3358. package/zkout/draft-IERC20Permit.sol/IERC20Permit.json +0 -1
  3359. /package/{build/contracts → abis}/AccessControlEnumerable.json +0 -0
  3360. /package/{build/contracts → abis}/Achievements.json +0 -0
  3361. /package/{build/contracts → abis}/BalanceHolder.json +0 -0
  3362. /package/{build/contracts → abis}/Counters.json +0 -0
  3363. /package/{build/contracts → abis}/ERC20PresetMinterPauser.json +0 -0
  3364. /package/{build/contracts → abis}/ERC721.json +0 -0
  3365. /package/{build/contracts → abis}/EnumerableMap.json +0 -0
  3366. /package/{build/contracts → abis}/EnumerableSet.json +0 -0
  3367. /package/{build/contracts → abis}/IAccessControlEnumerable.json +0 -0
  3368. /package/{build/contracts → abis}/IERC20Permit.json +0 -0
  3369. /package/{build/contracts → abis}/IERC721Receiver.json +0 -0
  3370. /package/{build/contracts → abis}/IPredictionMarketV3.json +0 -0
  3371. /package/{build/contracts → abis}/Math.json +0 -0
  3372. /package/{build/contracts → abis}/Migrations.json +0 -0
  3373. /package/{build/contracts → abis}/PredictionMarket.json +0 -0
  3374. /package/{build/contracts → abis}/PredictionMarketV2.json +0 -0
  3375. /package/{build/contracts → abis}/PredictionMarketV3.json +0 -0
  3376. /package/{build/contracts → abis}/RealitioERC20.json +0 -0
  3377. /package/{build/contracts → abis}/RealitioForeignArbitrationProxyWithAppeals.json +0 -0
  3378. /package/{build/contracts → abis}/RealitioHomeArbitrationProxy.json +0 -0
  3379. /package/{build/contracts → abis}/RealitioSafeMath256.json +0 -0
  3380. /package/{build/contracts → abis}/RealitioSafeMath32.json +0 -0
  3381. /package/{build/contracts → abis}/SafeMath.json +0 -0
  3382. /package/{build/contracts → abis}/Strings.json +0 -0
  3383. /package/{build/contracts → abis}/WETH9.json +0 -0
  3384. /package/lib/openzeppelin-contracts-upgradeable/{audit → audits}/2018-10.pdf +0 -0
  3385. /package/lib/openzeppelin-contracts-upgradeable/{DOCUMENTATION.md → docs/README.md} +0 -0
  3386. /package/lib/openzeppelin-contracts-upgradeable/{.github → lib/openzeppelin-contracts/.github}/ISSUE_TEMPLATE/feature_request.md +0 -0
  3387. /package/lib/{openzeppelin-contracts/audit → openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits}/2018-10.pdf +0 -0
  3388. /package/lib/{openzeppelin-contracts/DOCUMENTATION.md → openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/README.md} +0 -0
  3389. /package/lib/openzeppelin-contracts-upgradeable/{scripts/upgradeable → lib/openzeppelin-contracts/scripts}/git-user-config.sh +0 -0
@@ -1,54 +1,57 @@
1
1
  // SPDX-License-Identifier: MIT
2
- // OpenZeppelin Contracts (last updated v4.8.0) (governance/Governor.sol)
3
-
4
- pragma solidity ^0.8.0;
5
-
6
- import "../token/ERC721/IERC721Receiver.sol";
7
- import "../token/ERC1155/IERC1155Receiver.sol";
8
- import "../utils/cryptography/ECDSA.sol";
9
- import "../utils/cryptography/EIP712.sol";
10
- import "../utils/introspection/ERC165.sol";
11
- import "../utils/math/SafeCast.sol";
12
- import "../utils/structs/DoubleEndedQueue.sol";
13
- import "../utils/Address.sol";
14
- import "../utils/Context.sol";
15
- import "../utils/Timers.sol";
16
- import "./IGovernor.sol";
2
+ // OpenZeppelin Contracts (last updated v5.3.0) (governance/Governor.sol)
3
+
4
+ pragma solidity ^0.8.24;
5
+
6
+ import {IERC721Receiver} from "../token/ERC721/IERC721Receiver.sol";
7
+ import {IERC1155Receiver} from "../token/ERC1155/IERC1155Receiver.sol";
8
+ import {EIP712} from "../utils/cryptography/EIP712.sol";
9
+ import {SignatureChecker} from "../utils/cryptography/SignatureChecker.sol";
10
+ import {IERC165, ERC165} from "../utils/introspection/ERC165.sol";
11
+ import {SafeCast} from "../utils/math/SafeCast.sol";
12
+ import {DoubleEndedQueue} from "../utils/structs/DoubleEndedQueue.sol";
13
+ import {Address} from "../utils/Address.sol";
14
+ import {Context} from "../utils/Context.sol";
15
+ import {Nonces} from "../utils/Nonces.sol";
16
+ import {Strings} from "../utils/Strings.sol";
17
+ import {IGovernor, IERC6372} from "./IGovernor.sol";
17
18
 
18
19
  /**
19
- * @dev Core of the governance system, designed to be extended though various modules.
20
+ * @dev Core of the governance system, designed to be extended through various modules.
20
21
  *
21
- * This contract is abstract and requires several function to be implemented in various modules:
22
+ * This contract is abstract and requires several functions to be implemented in various modules:
22
23
  *
23
- * - A counting module must implement {quorum}, {_quorumReached}, {_voteSucceeded} and {_countVote}
24
+ * - A counting module must implement {_quorumReached}, {_voteSucceeded} and {_countVote}
24
25
  * - A voting module must implement {_getVotes}
25
- * - Additionanly, the {votingPeriod} must also be implemented
26
- *
27
- * _Available since v4.3._
26
+ * - Additionally, {votingPeriod}, {votingDelay}, and {quorum} must also be implemented
28
27
  */
29
- abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receiver, IERC1155Receiver {
28
+ abstract contract Governor is Context, ERC165, EIP712, Nonces, IGovernor, IERC721Receiver, IERC1155Receiver {
30
29
  using DoubleEndedQueue for DoubleEndedQueue.Bytes32Deque;
31
- using SafeCast for uint256;
32
- using Timers for Timers.BlockNumber;
33
30
 
34
- bytes32 public constant BALLOT_TYPEHASH = keccak256("Ballot(uint256 proposalId,uint8 support)");
31
+ bytes32 public constant BALLOT_TYPEHASH =
32
+ keccak256("Ballot(uint256 proposalId,uint8 support,address voter,uint256 nonce)");
35
33
  bytes32 public constant EXTENDED_BALLOT_TYPEHASH =
36
- keccak256("ExtendedBallot(uint256 proposalId,uint8 support,string reason,bytes params)");
34
+ keccak256(
35
+ "ExtendedBallot(uint256 proposalId,uint8 support,address voter,uint256 nonce,string reason,bytes params)"
36
+ );
37
37
 
38
38
  struct ProposalCore {
39
- Timers.BlockNumber voteStart;
40
- Timers.BlockNumber voteEnd;
39
+ address proposer;
40
+ uint48 voteStart;
41
+ uint32 voteDuration;
41
42
  bool executed;
42
43
  bool canceled;
44
+ uint48 etaSeconds;
43
45
  }
44
46
 
47
+ bytes32 private constant ALL_PROPOSAL_STATES_BITMAP = bytes32((2 ** (uint8(type(ProposalState).max) + 1)) - 1);
45
48
  string private _name;
46
49
 
47
- mapping(uint256 => ProposalCore) private _proposals;
50
+ mapping(uint256 proposalId => ProposalCore) private _proposals;
48
51
 
49
- // This queue keeps track of the governor operating on itself. Calls to functions protected by the
50
- // {onlyGovernance} modifier needs to be whitelisted in this queue. Whitelisting is set in {_beforeExecute},
51
- // consumed by the {onlyGovernance} modifier and eventually reset in {_afterExecute}. This ensures that the
52
+ // This queue keeps track of the governor operating on itself. Calls to functions protected by the {onlyGovernance}
53
+ // modifier needs to be whitelisted in this queue. Whitelisting is set in {execute}, consumed by the
54
+ // {onlyGovernance} modifier and eventually reset after {_executeOperations} completes. This ensures that the
52
55
  // execution of {onlyGovernance} protected calls can only be achieved through successful proposals.
53
56
  DoubleEndedQueue.Bytes32Deque private _governanceCall;
54
57
 
@@ -63,12 +66,7 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
63
66
  * governance protocol (since v4.6).
64
67
  */
65
68
  modifier onlyGovernance() {
66
- require(_msgSender() == _executor(), "Governor: onlyGovernance");
67
- if (_executor() != address(this)) {
68
- bytes32 msgDataHash = keccak256(_msgData());
69
- // loop until popping the expected operation - throw if deque is empty (operation not authorized)
70
- while (_governanceCall.popFront() != msgDataHash) {}
71
- }
69
+ _checkGovernance();
72
70
  _;
73
71
  }
74
72
 
@@ -83,37 +81,27 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
83
81
  * @dev Function to receive ETH that will be handled by the governor (disabled if executor is a third party contract)
84
82
  */
85
83
  receive() external payable virtual {
86
- require(_executor() == address(this));
84
+ if (_executor() != address(this)) {
85
+ revert GovernorDisabledDeposit();
86
+ }
87
87
  }
88
88
 
89
- /**
90
- * @dev See {IERC165-supportsInterface}.
91
- */
89
+ /// @inheritdoc IERC165
92
90
  function supportsInterface(bytes4 interfaceId) public view virtual override(IERC165, ERC165) returns (bool) {
93
- // In addition to the current interfaceId, also support previous version of the interfaceId that did not
94
- // include the castVoteWithReasonAndParams() function as standard
95
91
  return
96
- interfaceId ==
97
- (type(IGovernor).interfaceId ^
98
- this.castVoteWithReasonAndParams.selector ^
99
- this.castVoteWithReasonAndParamsBySig.selector ^
100
- this.getVotesWithParams.selector) ||
101
92
  interfaceId == type(IGovernor).interfaceId ||
93
+ interfaceId == type(IGovernor).interfaceId ^ IGovernor.getProposalId.selector ||
102
94
  interfaceId == type(IERC1155Receiver).interfaceId ||
103
95
  super.supportsInterface(interfaceId);
104
96
  }
105
97
 
106
- /**
107
- * @dev See {IGovernor-name}.
108
- */
109
- function name() public view virtual override returns (string memory) {
98
+ /// @inheritdoc IGovernor
99
+ function name() public view virtual returns (string memory) {
110
100
  return _name;
111
101
  }
112
102
 
113
- /**
114
- * @dev See {IGovernor-version}.
115
- */
116
- function version() public view virtual override returns (string memory) {
103
+ /// @inheritdoc IGovernor
104
+ function version() public view virtual returns (string memory) {
117
105
  return "1";
118
106
  }
119
107
 
@@ -135,66 +123,104 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
135
123
  uint256[] memory values,
136
124
  bytes[] memory calldatas,
137
125
  bytes32 descriptionHash
138
- ) public pure virtual override returns (uint256) {
126
+ ) public pure virtual returns (uint256) {
139
127
  return uint256(keccak256(abi.encode(targets, values, calldatas, descriptionHash)));
140
128
  }
141
129
 
142
- /**
143
- * @dev See {IGovernor-state}.
144
- */
145
- function state(uint256 proposalId) public view virtual override returns (ProposalState) {
130
+ /// @inheritdoc IGovernor
131
+ function getProposalId(
132
+ address[] memory targets,
133
+ uint256[] memory values,
134
+ bytes[] memory calldatas,
135
+ bytes32 descriptionHash
136
+ ) public view virtual returns (uint256) {
137
+ return hashProposal(targets, values, calldatas, descriptionHash);
138
+ }
139
+
140
+ /// @inheritdoc IGovernor
141
+ function state(uint256 proposalId) public view virtual returns (ProposalState) {
142
+ // We read the struct fields into the stack at once so Solidity emits a single SLOAD
146
143
  ProposalCore storage proposal = _proposals[proposalId];
144
+ bool proposalExecuted = proposal.executed;
145
+ bool proposalCanceled = proposal.canceled;
147
146
 
148
- if (proposal.executed) {
147
+ if (proposalExecuted) {
149
148
  return ProposalState.Executed;
150
149
  }
151
150
 
152
- if (proposal.canceled) {
151
+ if (proposalCanceled) {
153
152
  return ProposalState.Canceled;
154
153
  }
155
154
 
156
155
  uint256 snapshot = proposalSnapshot(proposalId);
157
156
 
158
157
  if (snapshot == 0) {
159
- revert("Governor: unknown proposal id");
158
+ revert GovernorNonexistentProposal(proposalId);
160
159
  }
161
160
 
162
- if (snapshot >= block.number) {
161
+ uint256 currentTimepoint = clock();
162
+
163
+ if (snapshot >= currentTimepoint) {
163
164
  return ProposalState.Pending;
164
165
  }
165
166
 
166
167
  uint256 deadline = proposalDeadline(proposalId);
167
168
 
168
- if (deadline >= block.number) {
169
+ if (deadline >= currentTimepoint) {
169
170
  return ProposalState.Active;
170
- }
171
-
172
- if (_quorumReached(proposalId) && _voteSucceeded(proposalId)) {
171
+ } else if (!_quorumReached(proposalId) || !_voteSucceeded(proposalId)) {
172
+ return ProposalState.Defeated;
173
+ } else if (proposalEta(proposalId) == 0) {
173
174
  return ProposalState.Succeeded;
174
175
  } else {
175
- return ProposalState.Defeated;
176
+ return ProposalState.Queued;
176
177
  }
177
178
  }
178
179
 
179
- /**
180
- * @dev See {IGovernor-proposalSnapshot}.
181
- */
182
- function proposalSnapshot(uint256 proposalId) public view virtual override returns (uint256) {
183
- return _proposals[proposalId].voteStart.getDeadline();
180
+ /// @inheritdoc IGovernor
181
+ function proposalThreshold() public view virtual returns (uint256) {
182
+ return 0;
184
183
  }
185
184
 
186
- /**
187
- * @dev See {IGovernor-proposalDeadline}.
188
- */
189
- function proposalDeadline(uint256 proposalId) public view virtual override returns (uint256) {
190
- return _proposals[proposalId].voteEnd.getDeadline();
185
+ /// @inheritdoc IGovernor
186
+ function proposalSnapshot(uint256 proposalId) public view virtual returns (uint256) {
187
+ return _proposals[proposalId].voteStart;
188
+ }
189
+
190
+ /// @inheritdoc IGovernor
191
+ function proposalDeadline(uint256 proposalId) public view virtual returns (uint256) {
192
+ return _proposals[proposalId].voteStart + _proposals[proposalId].voteDuration;
193
+ }
194
+
195
+ /// @inheritdoc IGovernor
196
+ function proposalProposer(uint256 proposalId) public view virtual returns (address) {
197
+ return _proposals[proposalId].proposer;
198
+ }
199
+
200
+ /// @inheritdoc IGovernor
201
+ function proposalEta(uint256 proposalId) public view virtual returns (uint256) {
202
+ return _proposals[proposalId].etaSeconds;
203
+ }
204
+
205
+ /// @inheritdoc IGovernor
206
+ function proposalNeedsQueuing(uint256) public view virtual returns (bool) {
207
+ return false;
191
208
  }
192
209
 
193
210
  /**
194
- * @dev Part of the Governor Bravo's interface: _"The number of votes required in order for a voter to become a proposer"_.
211
+ * @dev Reverts if the `msg.sender` is not the executor. In case the executor is not this contract
212
+ * itself, the function reverts if `msg.data` is not whitelisted as a result of an {execute}
213
+ * operation. See {onlyGovernance}.
195
214
  */
196
- function proposalThreshold() public view virtual returns (uint256) {
197
- return 0;
215
+ function _checkGovernance() internal virtual {
216
+ if (_executor() != _msgSender()) {
217
+ revert GovernorOnlyExecutor(_msgSender());
218
+ }
219
+ if (_executor() != address(this)) {
220
+ bytes32 msgDataHash = keccak256(_msgData());
221
+ // loop until popping the expected operation - throw if deque is empty (operation not authorized)
222
+ while (_governanceCall.popFront() != msgDataHash) {}
223
+ }
198
224
  }
199
225
 
200
226
  /**
@@ -208,13 +234,9 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
208
234
  function _voteSucceeded(uint256 proposalId) internal view virtual returns (bool);
209
235
 
210
236
  /**
211
- * @dev Get the voting weight of `account` at a specific `blockNumber`, for a vote as described by `params`.
237
+ * @dev Get the voting weight of `account` at a specific `timepoint`, for a vote as described by `params`.
212
238
  */
213
- function _getVotes(
214
- address account,
215
- uint256 blockNumber,
216
- bytes memory params
217
- ) internal view virtual returns (uint256);
239
+ function _getVotes(address account, uint256 timepoint, bytes memory params) internal view virtual returns (uint256);
218
240
 
219
241
  /**
220
242
  * @dev Register a vote for `proposalId` by `account` with a given `support`, voting `weight` and voting `params`.
@@ -225,9 +247,16 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
225
247
  uint256 proposalId,
226
248
  address account,
227
249
  uint8 support,
228
- uint256 weight,
250
+ uint256 totalWeight,
229
251
  bytes memory params
230
- ) internal virtual;
252
+ ) internal virtual returns (uint256);
253
+
254
+ /**
255
+ * @dev Hook that should be called every time the tally for a proposal is updated.
256
+ *
257
+ * Note: This function must run successfully. Reverts will result in the bricking of governance
258
+ */
259
+ function _tallyUpdated(uint256 proposalId) internal virtual {}
231
260
 
232
261
  /**
233
262
  * @dev Default additional encoded parameters used by castVote methods that don't include them
@@ -240,103 +269,141 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
240
269
  }
241
270
 
242
271
  /**
243
- * @dev See {IGovernor-propose}.
272
+ * @dev See {IGovernor-propose}. This function has opt-in frontrunning protection, described in {_isValidDescriptionForProposer}.
244
273
  */
245
274
  function propose(
246
275
  address[] memory targets,
247
276
  uint256[] memory values,
248
277
  bytes[] memory calldatas,
249
278
  string memory description
250
- ) public virtual override returns (uint256) {
251
- require(
252
- getVotes(_msgSender(), block.number - 1) >= proposalThreshold(),
253
- "Governor: proposer votes below proposal threshold"
254
- );
279
+ ) public virtual returns (uint256) {
280
+ address proposer = _msgSender();
255
281
 
256
- uint256 proposalId = hashProposal(targets, values, calldatas, keccak256(bytes(description)));
282
+ // check description restriction
283
+ if (!_isValidDescriptionForProposer(proposer, description)) {
284
+ revert GovernorRestrictedProposer(proposer);
285
+ }
257
286
 
258
- require(targets.length == values.length, "Governor: invalid proposal length");
259
- require(targets.length == calldatas.length, "Governor: invalid proposal length");
260
- require(targets.length > 0, "Governor: empty proposal");
287
+ // check proposal threshold
288
+ uint256 votesThreshold = proposalThreshold();
289
+ if (votesThreshold > 0) {
290
+ uint256 proposerVotes = getVotes(proposer, clock() - 1);
291
+ if (proposerVotes < votesThreshold) {
292
+ revert GovernorInsufficientProposerVotes(proposer, proposerVotes, votesThreshold);
293
+ }
294
+ }
261
295
 
262
- ProposalCore storage proposal = _proposals[proposalId];
263
- require(proposal.voteStart.isUnset(), "Governor: proposal already exists");
296
+ return _propose(targets, values, calldatas, description, proposer);
297
+ }
298
+
299
+ /**
300
+ * @dev Internal propose mechanism. Can be overridden to add more logic on proposal creation.
301
+ *
302
+ * Emits a {IGovernor-ProposalCreated} event.
303
+ */
304
+ function _propose(
305
+ address[] memory targets,
306
+ uint256[] memory values,
307
+ bytes[] memory calldatas,
308
+ string memory description,
309
+ address proposer
310
+ ) internal virtual returns (uint256 proposalId) {
311
+ proposalId = getProposalId(targets, values, calldatas, keccak256(bytes(description)));
264
312
 
265
- uint64 snapshot = block.number.toUint64() + votingDelay().toUint64();
266
- uint64 deadline = snapshot + votingPeriod().toUint64();
313
+ if (targets.length != values.length || targets.length != calldatas.length || targets.length == 0) {
314
+ revert GovernorInvalidProposalLength(targets.length, calldatas.length, values.length);
315
+ }
316
+ if (_proposals[proposalId].voteStart != 0) {
317
+ revert GovernorUnexpectedProposalState(proposalId, state(proposalId), bytes32(0));
318
+ }
267
319
 
268
- proposal.voteStart.setDeadline(snapshot);
269
- proposal.voteEnd.setDeadline(deadline);
320
+ uint256 snapshot = clock() + votingDelay();
321
+ uint256 duration = votingPeriod();
322
+
323
+ ProposalCore storage proposal = _proposals[proposalId];
324
+ proposal.proposer = proposer;
325
+ proposal.voteStart = SafeCast.toUint48(snapshot);
326
+ proposal.voteDuration = SafeCast.toUint32(duration);
270
327
 
271
328
  emit ProposalCreated(
272
329
  proposalId,
273
- _msgSender(),
330
+ proposer,
274
331
  targets,
275
332
  values,
276
333
  new string[](targets.length),
277
334
  calldatas,
278
335
  snapshot,
279
- deadline,
336
+ snapshot + duration,
280
337
  description
281
338
  );
282
339
 
283
- return proposalId;
340
+ // Using a named return variable to avoid stack too deep errors
284
341
  }
285
342
 
286
- /**
287
- * @dev See {IGovernor-execute}.
288
- */
289
- function execute(
343
+ /// @inheritdoc IGovernor
344
+ function queue(
290
345
  address[] memory targets,
291
346
  uint256[] memory values,
292
347
  bytes[] memory calldatas,
293
348
  bytes32 descriptionHash
294
- ) public payable virtual override returns (uint256) {
295
- uint256 proposalId = hashProposal(targets, values, calldatas, descriptionHash);
349
+ ) public virtual returns (uint256) {
350
+ uint256 proposalId = getProposalId(targets, values, calldatas, descriptionHash);
296
351
 
297
- ProposalState status = state(proposalId);
298
- require(
299
- status == ProposalState.Succeeded || status == ProposalState.Queued,
300
- "Governor: proposal not successful"
301
- );
302
- _proposals[proposalId].executed = true;
352
+ _validateStateBitmap(proposalId, _encodeStateBitmap(ProposalState.Succeeded));
303
353
 
304
- emit ProposalExecuted(proposalId);
354
+ uint48 etaSeconds = _queueOperations(proposalId, targets, values, calldatas, descriptionHash);
305
355
 
306
- _beforeExecute(proposalId, targets, values, calldatas, descriptionHash);
307
- _execute(proposalId, targets, values, calldatas, descriptionHash);
308
- _afterExecute(proposalId, targets, values, calldatas, descriptionHash);
356
+ if (etaSeconds != 0) {
357
+ _proposals[proposalId].etaSeconds = etaSeconds;
358
+ emit ProposalQueued(proposalId, etaSeconds);
359
+ } else {
360
+ revert GovernorQueueNotImplemented();
361
+ }
309
362
 
310
363
  return proposalId;
311
364
  }
312
365
 
313
366
  /**
314
- * @dev Internal execution mechanism. Can be overridden to implement different execution mechanism
315
- */
316
- function _execute(
317
- uint256, /* proposalId */
318
- address[] memory targets,
319
- uint256[] memory values,
320
- bytes[] memory calldatas,
367
+ * @dev Internal queuing mechanism. Can be overridden (without a super call) to modify the way queuing is
368
+ * performed (for example adding a vault/timelock).
369
+ *
370
+ * This is empty by default, and must be overridden to implement queuing.
371
+ *
372
+ * This function returns a timestamp that describes the expected ETA for execution. If the returned value is 0
373
+ * (which is the default value), the core will consider queueing did not succeed, and the public {queue} function
374
+ * will revert.
375
+ *
376
+ * NOTE: Calling this function directly will NOT check the current state of the proposal, or emit the
377
+ * `ProposalQueued` event. Queuing a proposal should be done using {queue}.
378
+ */
379
+ function _queueOperations(
380
+ uint256 /*proposalId*/,
381
+ address[] memory /*targets*/,
382
+ uint256[] memory /*values*/,
383
+ bytes[] memory /*calldatas*/,
321
384
  bytes32 /*descriptionHash*/
322
- ) internal virtual {
323
- string memory errorMessage = "Governor: call reverted without message";
324
- for (uint256 i = 0; i < targets.length; ++i) {
325
- (bool success, bytes memory returndata) = targets[i].call{value: values[i]}(calldatas[i]);
326
- Address.verifyCallResult(success, returndata, errorMessage);
327
- }
385
+ ) internal virtual returns (uint48) {
386
+ return 0;
328
387
  }
329
388
 
330
- /**
331
- * @dev Hook before execution is triggered.
332
- */
333
- function _beforeExecute(
334
- uint256, /* proposalId */
389
+ /// @inheritdoc IGovernor
390
+ function execute(
335
391
  address[] memory targets,
336
- uint256[] memory, /* values */
392
+ uint256[] memory values,
337
393
  bytes[] memory calldatas,
338
- bytes32 /*descriptionHash*/
339
- ) internal virtual {
394
+ bytes32 descriptionHash
395
+ ) public payable virtual returns (uint256) {
396
+ uint256 proposalId = getProposalId(targets, values, calldatas, descriptionHash);
397
+
398
+ _validateStateBitmap(
399
+ proposalId,
400
+ _encodeStateBitmap(ProposalState.Succeeded) | _encodeStateBitmap(ProposalState.Queued)
401
+ );
402
+
403
+ // mark as executed before calls to avoid reentrancy
404
+ _proposals[proposalId].executed = true;
405
+
406
+ // before execute: register governance call in queue.
340
407
  if (_executor() != address(this)) {
341
408
  for (uint256 i = 0; i < targets.length; ++i) {
342
409
  if (targets[i] == address(this)) {
@@ -344,28 +411,60 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
344
411
  }
345
412
  }
346
413
  }
414
+
415
+ _executeOperations(proposalId, targets, values, calldatas, descriptionHash);
416
+
417
+ // after execute: cleanup governance call queue.
418
+ if (_executor() != address(this) && !_governanceCall.empty()) {
419
+ _governanceCall.clear();
420
+ }
421
+
422
+ emit ProposalExecuted(proposalId);
423
+
424
+ return proposalId;
347
425
  }
348
426
 
349
427
  /**
350
- * @dev Hook after execution is triggered.
428
+ * @dev Internal execution mechanism. Can be overridden (without a super call) to modify the way execution is
429
+ * performed (for example adding a vault/timelock).
430
+ *
431
+ * NOTE: Calling this function directly will NOT check the current state of the proposal, set the executed flag to
432
+ * true or emit the `ProposalExecuted` event. Executing a proposal should be done using {execute}.
351
433
  */
352
- function _afterExecute(
353
- uint256, /* proposalId */
354
- address[] memory, /* targets */
355
- uint256[] memory, /* values */
356
- bytes[] memory, /* calldatas */
434
+ function _executeOperations(
435
+ uint256 /* proposalId */,
436
+ address[] memory targets,
437
+ uint256[] memory values,
438
+ bytes[] memory calldatas,
357
439
  bytes32 /*descriptionHash*/
358
440
  ) internal virtual {
359
- if (_executor() != address(this)) {
360
- if (!_governanceCall.empty()) {
361
- _governanceCall.clear();
362
- }
441
+ for (uint256 i = 0; i < targets.length; ++i) {
442
+ (bool success, bytes memory returndata) = targets[i].call{value: values[i]}(calldatas[i]);
443
+ Address.verifyCallResult(success, returndata);
363
444
  }
364
445
  }
365
446
 
447
+ /// @inheritdoc IGovernor
448
+ function cancel(
449
+ address[] memory targets,
450
+ uint256[] memory values,
451
+ bytes[] memory calldatas,
452
+ bytes32 descriptionHash
453
+ ) public virtual returns (uint256) {
454
+ // The proposalId will be recomputed in the `_cancel` call further down. However we need the value before we
455
+ // do the internal call, because we need to check the proposal state BEFORE the internal `_cancel` call
456
+ // changes it. The `getProposalId` duplication has a cost that is limited, and that we accept.
457
+ uint256 proposalId = getProposalId(targets, values, calldatas, descriptionHash);
458
+
459
+ address caller = _msgSender();
460
+ if (!_validateCancel(proposalId, caller)) revert GovernorUnableToCancel(proposalId, caller);
461
+
462
+ return _cancel(targets, values, calldatas, descriptionHash);
463
+ }
464
+
366
465
  /**
367
- * @dev Internal cancel mechanism: locks up the proposal timer, preventing it from being re-submitted. Marks it as
368
- * canceled to allow distinguishing it from executed proposals.
466
+ * @dev Internal cancel mechanism with minimal restrictions. A proposal can be cancelled in any state other than
467
+ * Canceled, Expired, or Executed. Once cancelled a proposal can't be re-submitted.
369
468
  *
370
469
  * Emits a {IGovernor-ProposalCanceled} event.
371
470
  */
@@ -375,122 +474,135 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
375
474
  bytes[] memory calldatas,
376
475
  bytes32 descriptionHash
377
476
  ) internal virtual returns (uint256) {
378
- uint256 proposalId = hashProposal(targets, values, calldatas, descriptionHash);
379
- ProposalState status = state(proposalId);
477
+ uint256 proposalId = getProposalId(targets, values, calldatas, descriptionHash);
380
478
 
381
- require(
382
- status != ProposalState.Canceled && status != ProposalState.Expired && status != ProposalState.Executed,
383
- "Governor: proposal not active"
479
+ _validateStateBitmap(
480
+ proposalId,
481
+ ALL_PROPOSAL_STATES_BITMAP ^
482
+ _encodeStateBitmap(ProposalState.Canceled) ^
483
+ _encodeStateBitmap(ProposalState.Expired) ^
484
+ _encodeStateBitmap(ProposalState.Executed)
384
485
  );
385
- _proposals[proposalId].canceled = true;
386
486
 
487
+ _proposals[proposalId].canceled = true;
387
488
  emit ProposalCanceled(proposalId);
388
489
 
389
490
  return proposalId;
390
491
  }
391
492
 
392
- /**
393
- * @dev See {IGovernor-getVotes}.
394
- */
395
- function getVotes(address account, uint256 blockNumber) public view virtual override returns (uint256) {
396
- return _getVotes(account, blockNumber, _defaultParams());
493
+ /// @inheritdoc IGovernor
494
+ function getVotes(address account, uint256 timepoint) public view virtual returns (uint256) {
495
+ return _getVotes(account, timepoint, _defaultParams());
397
496
  }
398
497
 
399
- /**
400
- * @dev See {IGovernor-getVotesWithParams}.
401
- */
498
+ /// @inheritdoc IGovernor
402
499
  function getVotesWithParams(
403
500
  address account,
404
- uint256 blockNumber,
501
+ uint256 timepoint,
405
502
  bytes memory params
406
- ) public view virtual override returns (uint256) {
407
- return _getVotes(account, blockNumber, params);
503
+ ) public view virtual returns (uint256) {
504
+ return _getVotes(account, timepoint, params);
408
505
  }
409
506
 
410
- /**
411
- * @dev See {IGovernor-castVote}.
412
- */
413
- function castVote(uint256 proposalId, uint8 support) public virtual override returns (uint256) {
507
+ /// @inheritdoc IGovernor
508
+ function castVote(uint256 proposalId, uint8 support) public virtual returns (uint256) {
414
509
  address voter = _msgSender();
415
510
  return _castVote(proposalId, voter, support, "");
416
511
  }
417
512
 
418
- /**
419
- * @dev See {IGovernor-castVoteWithReason}.
420
- */
513
+ /// @inheritdoc IGovernor
421
514
  function castVoteWithReason(
422
515
  uint256 proposalId,
423
516
  uint8 support,
424
517
  string calldata reason
425
- ) public virtual override returns (uint256) {
518
+ ) public virtual returns (uint256) {
426
519
  address voter = _msgSender();
427
520
  return _castVote(proposalId, voter, support, reason);
428
521
  }
429
522
 
430
- /**
431
- * @dev See {IGovernor-castVoteWithReasonAndParams}.
432
- */
523
+ /// @inheritdoc IGovernor
433
524
  function castVoteWithReasonAndParams(
434
525
  uint256 proposalId,
435
526
  uint8 support,
436
527
  string calldata reason,
437
528
  bytes memory params
438
- ) public virtual override returns (uint256) {
529
+ ) public virtual returns (uint256) {
439
530
  address voter = _msgSender();
440
531
  return _castVote(proposalId, voter, support, reason, params);
441
532
  }
442
533
 
443
- /**
444
- * @dev See {IGovernor-castVoteBySig}.
445
- */
534
+ /// @inheritdoc IGovernor
446
535
  function castVoteBySig(
447
536
  uint256 proposalId,
448
537
  uint8 support,
449
- uint8 v,
450
- bytes32 r,
451
- bytes32 s
452
- ) public virtual override returns (uint256) {
453
- address voter = ECDSA.recover(
454
- _hashTypedDataV4(keccak256(abi.encode(BALLOT_TYPEHASH, proposalId, support))),
455
- v,
456
- r,
457
- s
458
- );
538
+ address voter,
539
+ bytes memory signature
540
+ ) public virtual returns (uint256) {
541
+ if (!_validateVoteSig(proposalId, support, voter, signature)) {
542
+ revert GovernorInvalidSignature(voter);
543
+ }
459
544
  return _castVote(proposalId, voter, support, "");
460
545
  }
461
546
 
462
- /**
463
- * @dev See {IGovernor-castVoteWithReasonAndParamsBySig}.
464
- */
547
+ /// @inheritdoc IGovernor
465
548
  function castVoteWithReasonAndParamsBySig(
466
549
  uint256 proposalId,
467
550
  uint8 support,
551
+ address voter,
468
552
  string calldata reason,
469
553
  bytes memory params,
470
- uint8 v,
471
- bytes32 r,
472
- bytes32 s
473
- ) public virtual override returns (uint256) {
474
- address voter = ECDSA.recover(
475
- _hashTypedDataV4(
476
- keccak256(
477
- abi.encode(
478
- EXTENDED_BALLOT_TYPEHASH,
479
- proposalId,
480
- support,
481
- keccak256(bytes(reason)),
482
- keccak256(params)
483
- )
484
- )
485
- ),
486
- v,
487
- r,
488
- s
489
- );
490
-
554
+ bytes memory signature
555
+ ) public virtual returns (uint256) {
556
+ if (!_validateExtendedVoteSig(proposalId, support, voter, reason, params, signature)) {
557
+ revert GovernorInvalidSignature(voter);
558
+ }
491
559
  return _castVote(proposalId, voter, support, reason, params);
492
560
  }
493
561
 
562
+ /// @dev Validate the `signature` used in {castVoteBySig} function.
563
+ function _validateVoteSig(
564
+ uint256 proposalId,
565
+ uint8 support,
566
+ address voter,
567
+ bytes memory signature
568
+ ) internal virtual returns (bool) {
569
+ return
570
+ SignatureChecker.isValidSignatureNow(
571
+ voter,
572
+ _hashTypedDataV4(keccak256(abi.encode(BALLOT_TYPEHASH, proposalId, support, voter, _useNonce(voter)))),
573
+ signature
574
+ );
575
+ }
576
+
577
+ /// @dev Validate the `signature` used in {castVoteWithReasonAndParamsBySig} function.
578
+ function _validateExtendedVoteSig(
579
+ uint256 proposalId,
580
+ uint8 support,
581
+ address voter,
582
+ string memory reason,
583
+ bytes memory params,
584
+ bytes memory signature
585
+ ) internal virtual returns (bool) {
586
+ return
587
+ SignatureChecker.isValidSignatureNow(
588
+ voter,
589
+ _hashTypedDataV4(
590
+ keccak256(
591
+ abi.encode(
592
+ EXTENDED_BALLOT_TYPEHASH,
593
+ proposalId,
594
+ support,
595
+ voter,
596
+ _useNonce(voter),
597
+ keccak256(bytes(reason)),
598
+ keccak256(params)
599
+ )
600
+ )
601
+ ),
602
+ signature
603
+ );
604
+ }
605
+
494
606
  /**
495
607
  * @dev Internal vote casting mechanism: Check that the vote is pending, that it has not been cast yet, retrieve
496
608
  * voting weight using {IGovernor-getVotes} and call the {_countVote} internal function. Uses the _defaultParams().
@@ -519,19 +631,20 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
519
631
  string memory reason,
520
632
  bytes memory params
521
633
  ) internal virtual returns (uint256) {
522
- ProposalCore storage proposal = _proposals[proposalId];
523
- require(state(proposalId) == ProposalState.Active, "Governor: vote not currently active");
634
+ _validateStateBitmap(proposalId, _encodeStateBitmap(ProposalState.Active));
524
635
 
525
- uint256 weight = _getVotes(account, proposal.voteStart.getDeadline(), params);
526
- _countVote(proposalId, account, support, weight, params);
636
+ uint256 totalWeight = _getVotes(account, proposalSnapshot(proposalId), params);
637
+ uint256 votedWeight = _countVote(proposalId, account, support, totalWeight, params);
527
638
 
528
639
  if (params.length == 0) {
529
- emit VoteCast(account, proposalId, support, weight, reason);
640
+ emit VoteCast(account, proposalId, support, votedWeight, reason);
530
641
  } else {
531
- emit VoteCastWithParams(account, proposalId, support, weight, reason, params);
642
+ emit VoteCastWithParams(account, proposalId, support, votedWeight, reason, params);
532
643
  }
533
644
 
534
- return weight;
645
+ _tallyUpdated(proposalId);
646
+
647
+ return votedWeight;
535
648
  }
536
649
 
537
650
  /**
@@ -540,13 +653,9 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
540
653
  * in a governance proposal to recover tokens or Ether that was sent to the governor contract by mistake.
541
654
  * Note that if the executor is simply the governor itself, use of `relay` is redundant.
542
655
  */
543
- function relay(
544
- address target,
545
- uint256 value,
546
- bytes calldata data
547
- ) external payable virtual onlyGovernance {
656
+ function relay(address target, uint256 value, bytes calldata data) external payable virtual onlyGovernance {
548
657
  (bool success, bytes memory returndata) = target.call{value: value}(data);
549
- Address.verifyCallResult(success, returndata, "Governor: relay reverted without message");
658
+ Address.verifyCallResult(success, returndata);
550
659
  }
551
660
 
552
661
  /**
@@ -559,31 +668,29 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
559
668
 
560
669
  /**
561
670
  * @dev See {IERC721Receiver-onERC721Received}.
671
+ * Receiving tokens is disabled if the governance executor is other than the governor itself (eg. when using with a timelock).
562
672
  */
563
- function onERC721Received(
564
- address,
565
- address,
566
- uint256,
567
- bytes memory
568
- ) public virtual override returns (bytes4) {
673
+ function onERC721Received(address, address, uint256, bytes memory) public virtual returns (bytes4) {
674
+ if (_executor() != address(this)) {
675
+ revert GovernorDisabledDeposit();
676
+ }
569
677
  return this.onERC721Received.selector;
570
678
  }
571
679
 
572
680
  /**
573
681
  * @dev See {IERC1155Receiver-onERC1155Received}.
682
+ * Receiving tokens is disabled if the governance executor is other than the governor itself (eg. when using with a timelock).
574
683
  */
575
- function onERC1155Received(
576
- address,
577
- address,
578
- uint256,
579
- uint256,
580
- bytes memory
581
- ) public virtual override returns (bytes4) {
684
+ function onERC1155Received(address, address, uint256, uint256, bytes memory) public virtual returns (bytes4) {
685
+ if (_executor() != address(this)) {
686
+ revert GovernorDisabledDeposit();
687
+ }
582
688
  return this.onERC1155Received.selector;
583
689
  }
584
690
 
585
691
  /**
586
692
  * @dev See {IERC1155Receiver-onERC1155BatchReceived}.
693
+ * Receiving tokens is disabled if the governance executor is other than the governor itself (eg. when using with a timelock).
587
694
  */
588
695
  function onERC1155BatchReceived(
589
696
  address,
@@ -591,7 +698,121 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive
591
698
  uint256[] memory,
592
699
  uint256[] memory,
593
700
  bytes memory
594
- ) public virtual override returns (bytes4) {
701
+ ) public virtual returns (bytes4) {
702
+ if (_executor() != address(this)) {
703
+ revert GovernorDisabledDeposit();
704
+ }
595
705
  return this.onERC1155BatchReceived.selector;
596
706
  }
707
+
708
+ /**
709
+ * @dev Encodes a `ProposalState` into a `bytes32` representation where each bit enabled corresponds to
710
+ * the underlying position in the `ProposalState` enum. For example:
711
+ *
712
+ * 0x000...10000
713
+ * ^^^^^^------ ...
714
+ * ^----- Succeeded
715
+ * ^---- Defeated
716
+ * ^--- Canceled
717
+ * ^-- Active
718
+ * ^- Pending
719
+ */
720
+ function _encodeStateBitmap(ProposalState proposalState) internal pure returns (bytes32) {
721
+ return bytes32(1 << uint8(proposalState));
722
+ }
723
+
724
+ /**
725
+ * @dev Check that the current state of a proposal matches the requirements described by the `allowedStates` bitmap.
726
+ * This bitmap should be built using `_encodeStateBitmap`.
727
+ *
728
+ * If requirements are not met, reverts with a {GovernorUnexpectedProposalState} error.
729
+ */
730
+ function _validateStateBitmap(uint256 proposalId, bytes32 allowedStates) internal view returns (ProposalState) {
731
+ ProposalState currentState = state(proposalId);
732
+ if (_encodeStateBitmap(currentState) & allowedStates == bytes32(0)) {
733
+ revert GovernorUnexpectedProposalState(proposalId, currentState, allowedStates);
734
+ }
735
+ return currentState;
736
+ }
737
+
738
+ /*
739
+ * @dev Check if the proposer is authorized to submit a proposal with the given description.
740
+ *
741
+ * If the proposal description ends with `#proposer=0x???`, where `0x???` is an address written as a hex string
742
+ * (case insensitive), then the submission of this proposal will only be authorized to said address.
743
+ *
744
+ * This is used for frontrunning protection. By adding this pattern at the end of their proposal, one can ensure
745
+ * that no other address can submit the same proposal. An attacker would have to either remove or change that part,
746
+ * which would result in a different proposal id.
747
+ *
748
+ * If the description does not match this pattern, it is unrestricted and anyone can submit it. This includes:
749
+ * - If the `0x???` part is not a valid hex string.
750
+ * - If the `0x???` part is a valid hex string, but does not contain exactly 40 hex digits.
751
+ * - If it ends with the expected suffix followed by newlines or other whitespace.
752
+ * - If it ends with some other similar suffix, e.g. `#other=abc`.
753
+ * - If it does not end with any such suffix.
754
+ */
755
+ function _isValidDescriptionForProposer(
756
+ address proposer,
757
+ string memory description
758
+ ) internal view virtual returns (bool) {
759
+ unchecked {
760
+ uint256 length = bytes(description).length;
761
+
762
+ // Length is too short to contain a valid proposer suffix
763
+ if (length < 52) {
764
+ return true;
765
+ }
766
+
767
+ // Extract what would be the `#proposer=` marker beginning the suffix
768
+ bytes10 marker = bytes10(_unsafeReadBytesOffset(bytes(description), length - 52));
769
+
770
+ // If the marker is not found, there is no proposer suffix to check
771
+ if (marker != bytes10("#proposer=")) {
772
+ return true;
773
+ }
774
+
775
+ // Check that the last 42 characters (after the marker) are a properly formatted address.
776
+ (bool success, address recovered) = Strings.tryParseAddress(description, length - 42, length);
777
+ return !success || recovered == proposer;
778
+ }
779
+ }
780
+
781
+ /**
782
+ * @dev Check if the `caller` can cancel the proposal with the given `proposalId`.
783
+ *
784
+ * The default implementation allows the proposal proposer to cancel the proposal during the pending state.
785
+ */
786
+ function _validateCancel(uint256 proposalId, address caller) internal view virtual returns (bool) {
787
+ return (state(proposalId) == ProposalState.Pending) && caller == proposalProposer(proposalId);
788
+ }
789
+
790
+ /// @inheritdoc IERC6372
791
+ function clock() public view virtual returns (uint48);
792
+
793
+ /// @inheritdoc IERC6372
794
+ // solhint-disable-next-line func-name-mixedcase
795
+ function CLOCK_MODE() public view virtual returns (string memory);
796
+
797
+ /// @inheritdoc IGovernor
798
+ function votingDelay() public view virtual returns (uint256);
799
+
800
+ /// @inheritdoc IGovernor
801
+ function votingPeriod() public view virtual returns (uint256);
802
+
803
+ /// @inheritdoc IGovernor
804
+ function quorum(uint256 timepoint) public view virtual returns (uint256);
805
+
806
+ /**
807
+ * @dev Reads a bytes32 from a bytes array without bounds checking.
808
+ *
809
+ * NOTE: making this function internal would mean it could be used with memory unsafe offset, and marking the
810
+ * assembly block as such would prevent some optimizations.
811
+ */
812
+ function _unsafeReadBytesOffset(bytes memory buffer, uint256 offset) private pure returns (bytes32 value) {
813
+ // This is not memory safe in the general case, but all calls to this private function are within bounds.
814
+ assembly ("memory-safe") {
815
+ value := mload(add(add(buffer, 0x20), offset))
816
+ }
817
+ }
597
818
  }