polkamarkets-js 3.1.11 → 3.3.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 (3306) hide show
  1. package/.gitmodules +18 -0
  2. package/README.md +356 -53
  3. package/abis/AccessControl.json +1 -0
  4. package/abis/AddAdminToLand.json +1 -0
  5. package/abis/Address.json +1 -0
  6. package/abis/BalanceHolder_ERC20.json +1 -0
  7. package/abis/CeilDiv.json +1 -0
  8. package/abis/CeilDivBad.json +1 -0
  9. package/abis/CeilDivGood.json +1 -0
  10. package/abis/ClaimMerkleRoot.json +1 -0
  11. package/abis/Clones.json +1 -0
  12. package/abis/CommonBase.json +1 -0
  13. package/abis/Context.json +1 -0
  14. package/abis/ContextUpgradeable.json +1 -0
  15. package/abis/Create2.json +1 -0
  16. package/abis/CreateLand.json +1 -0
  17. package/abis/CreateMarketLib.json +1 -0
  18. package/abis/CreateMarkets.json +1 -0
  19. package/abis/DeployContracts.json +1 -0
  20. package/abis/DeployMerkleRewardsDistributor.json +1 -0
  21. package/abis/DeployProxy.json +1 -0
  22. package/abis/DeployToken.json +1 -0
  23. package/abis/DeployUSDT.json +1 -0
  24. package/abis/DeployUpgradeablePM.json +1 -0
  25. package/abis/ERC165.json +1 -0
  26. package/abis/ERC1967Proxy.json +1 -0
  27. package/abis/ERC1967Utils.json +1 -0
  28. package/abis/ERC20.json +1 -0
  29. package/abis/ERC20Burnable.json +1 -0
  30. package/abis/ERC20MinterPauser.json +1 -0
  31. package/abis/ERC20Pausable.json +1 -0
  32. package/abis/Errors.json +1 -0
  33. package/abis/FantasyERC20.json +1 -0
  34. package/abis/IAccessControl.json +1 -0
  35. package/abis/IBalanceHolder_ERC20.json +1 -0
  36. package/abis/IBeacon.json +1 -0
  37. package/abis/IERC1155Errors.json +1 -0
  38. package/abis/IERC1363.json +1 -0
  39. package/abis/IERC165.json +1 -0
  40. package/abis/IERC1822Proxiable.json +1 -0
  41. package/abis/IERC1967.json +1 -0
  42. package/abis/IERC20.json +1 -0
  43. package/abis/IERC20Errors.json +1 -0
  44. package/abis/IERC20Metadata.json +1 -0
  45. package/abis/IERC721.json +1 -0
  46. package/abis/IERC721Enumerable.json +1 -0
  47. package/abis/IERC721Errors.json +1 -0
  48. package/abis/IERC721Metadata.json +1 -0
  49. package/abis/IERC721TokenReceiver.json +1 -0
  50. package/abis/IFantasyERC20.json +1 -0
  51. package/abis/IMulticall3.json +1 -0
  52. package/abis/IPredictionMarketV3Factory.json +1 -0
  53. package/abis/IPredictionMarketV3Manager.json +1 -0
  54. package/abis/IPredictionMarketV3_2.json +1 -0
  55. package/abis/IPredictionMarketV3_4.json +1 -0
  56. package/abis/IRealityETH_ERC20.json +1 -0
  57. package/abis/IRealityETH_IERC20.json +1 -0
  58. package/abis/IWETH.json +1 -0
  59. package/abis/Initializable.json +1 -0
  60. package/abis/LandFactory.json +1 -0
  61. package/abis/MintTokens.json +1 -0
  62. package/abis/MockERC20.json +1 -0
  63. package/abis/MockERC721.json +1 -0
  64. package/abis/Ownable.json +1 -0
  65. package/abis/Ownable2StepUpgradeable.json +1 -0
  66. package/abis/OwnableUpgradeable.json +1 -0
  67. package/abis/Pausable.json +1 -0
  68. package/abis/PredictionMarketManagerTest.json +1 -0
  69. package/abis/PredictionMarketTest.json +1 -0
  70. package/abis/PredictionMarketV33Flow.json +1 -0
  71. package/abis/PredictionMarketV3Controller.json +1 -0
  72. package/abis/PredictionMarketV3Factory.json +1 -0
  73. package/abis/PredictionMarketV3Manager.json +1 -0
  74. package/abis/PredictionMarketV3Querier.json +1 -0
  75. package/abis/PredictionMarketV3_2.json +1 -0
  76. package/abis/PredictionMarketV3_4.json +1 -0
  77. package/abis/PredictionMarketV3_4Bad.json +1 -0
  78. package/abis/PredictionMarketV3_4Good.json +1 -0
  79. package/abis/Proxy.json +1 -0
  80. package/abis/PublishMerkleRoot.json +1 -0
  81. package/abis/RealityETH_ERC20_Factory.json +1 -0
  82. package/abis/RealityETH_ERC20_v3_0.json +1 -0
  83. package/abis/ReentrancyGuard.json +1 -0
  84. package/abis/ReentrancyGuardUpgradeable.json +1 -0
  85. package/abis/ResolveMarket.json +1 -0
  86. package/abis/SafeERC20.json +1 -0
  87. package/abis/Script.json +1 -0
  88. package/abis/ScriptBase.json +1 -0
  89. package/abis/StdAssertions.json +1 -0
  90. package/abis/StdChains.json +1 -0
  91. package/abis/StdCheats.json +1 -0
  92. package/abis/StdCheatsSafe.json +1 -0
  93. package/abis/StdInvariant.json +1 -0
  94. package/abis/StdStyle.json +1 -0
  95. package/abis/StdUtils.json +1 -0
  96. package/abis/StorageSlot.json +1 -0
  97. package/abis/TestBase.json +1 -0
  98. package/abis/TradeMarket.json +1 -0
  99. package/abis/USDT.json +1 -0
  100. package/abis/UUPSUpgradeable.json +1 -0
  101. package/abis/Vm.json +1 -0
  102. package/abis/VmSafe.json +1 -0
  103. package/abis/Voting.json +1 -0
  104. package/abis/WETH.json +1 -0
  105. package/abis/console.json +1 -0
  106. package/abis/safeconsole.json +1 -0
  107. package/abis/stdError.json +1 -0
  108. package/abis/stdJson.json +1 -0
  109. package/abis/stdMath.json +1 -0
  110. package/abis/stdStorage.json +1 -0
  111. package/abis/stdStorageSafe.json +1 -0
  112. package/abis/stdToml.json +1 -0
  113. package/abis/test.json +1 -0
  114. package/contracts/ERC20MinterPauser.sol +100 -0
  115. package/contracts/FantasyERC20.sol +12 -10
  116. package/contracts/IFantasyERC20.sol +1 -1
  117. package/contracts/IPredictionMarketV3Factory.sol +1 -1
  118. package/contracts/IPredictionMarketV3Manager.sol +5 -1
  119. package/contracts/IPredictionMarketV3_4.sol +219 -0
  120. package/contracts/IRealityETH_ERC20.sol +1 -1
  121. package/contracts/IWETH.sol +12 -0
  122. package/contracts/LandFactory.sol +71 -27
  123. package/contracts/PredictionMarketV3Controller.sol +7 -7
  124. package/contracts/PredictionMarketV3Factory.sol +7 -5
  125. package/contracts/PredictionMarketV3Manager.sol +7 -7
  126. package/contracts/PredictionMarketV3Querier.sol +14 -4
  127. package/contracts/PredictionMarketV3_4.sol +1492 -0
  128. package/contracts/Proxy.sol +35 -0
  129. package/contracts/RealityETH_ERC20_Factory.sol +4 -11
  130. package/contracts/Voting.sol +4 -7
  131. package/contracts/WETH.sol +58 -0
  132. package/foundry.toml +11 -0
  133. package/lib/openzeppelin-contracts/.changeset/all-geese-stand.md +5 -0
  134. package/lib/openzeppelin-contracts/.changeset/clean-ways-push.md +5 -0
  135. package/lib/openzeppelin-contracts/.changeset/config.json +12 -0
  136. package/lib/openzeppelin-contracts/.changeset/dull-students-eat.md +5 -0
  137. package/lib/openzeppelin-contracts/.changeset/eight-radios-check.md +5 -0
  138. package/lib/openzeppelin-contracts/.changeset/fine-frogs-bake.md +5 -0
  139. package/lib/openzeppelin-contracts/.changeset/full-ways-help.md +5 -0
  140. package/lib/openzeppelin-contracts/.changeset/funny-years-yawn.md +5 -0
  141. package/lib/openzeppelin-contracts/.changeset/hot-grapes-lie.md +5 -0
  142. package/lib/openzeppelin-contracts/.changeset/lazy-poets-cheer.md +5 -0
  143. package/lib/openzeppelin-contracts/.changeset/long-hornets-mate.md +5 -0
  144. package/lib/openzeppelin-contracts/.changeset/lucky-donuts-scream.md +5 -0
  145. package/lib/openzeppelin-contracts/.changeset/major-feet-write.md +5 -0
  146. package/lib/openzeppelin-contracts/.changeset/new-days-tease.md +5 -0
  147. package/lib/openzeppelin-contracts/.changeset/nice-rings-wish.md +5 -0
  148. package/lib/openzeppelin-contracts/.changeset/pink-dolls-shop.md +5 -0
  149. package/lib/openzeppelin-contracts/.changeset/popular-geese-tan.md +5 -0
  150. package/lib/openzeppelin-contracts/.changeset/proud-tables-sip.md +5 -0
  151. package/lib/openzeppelin-contracts/.changeset/public-crabs-heal.md +5 -0
  152. package/lib/openzeppelin-contracts/.changeset/quiet-kiwis-feel.md +5 -0
  153. package/lib/openzeppelin-contracts/.changeset/rare-shirts-unite.md +5 -0
  154. package/lib/openzeppelin-contracts/.changeset/rich-cows-repair.md +5 -0
  155. package/lib/openzeppelin-contracts/.changeset/ripe-bears-hide.md +5 -0
  156. package/lib/openzeppelin-contracts/.changeset/rotten-apes-lie.md +5 -0
  157. package/lib/openzeppelin-contracts/.changeset/social-walls-obey.md +5 -0
  158. package/lib/openzeppelin-contracts/.changeset/sour-pens-shake.md +5 -0
  159. package/lib/openzeppelin-contracts/.changeset/strong-points-change.md +5 -0
  160. package/lib/openzeppelin-contracts/.changeset/tame-bears-mix.md +5 -0
  161. package/lib/openzeppelin-contracts/.changeset/violet-turtles-like.md +5 -0
  162. package/lib/openzeppelin-contracts/.changeset/wet-dodos-reply.md +5 -0
  163. package/lib/openzeppelin-contracts/.changeset/whole-plums-speak.md +5 -0
  164. package/lib/openzeppelin-contracts/.changeset/wild-baths-buy.md +5 -0
  165. package/lib/openzeppelin-contracts/.codecov.yml +4 -0
  166. package/lib/openzeppelin-contracts/.github/CODEOWNERS +10 -0
  167. package/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +1 -1
  168. package/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  169. package/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +7 -5
  170. package/lib/openzeppelin-contracts/.github/actions/setup/action.yml +9 -7
  171. package/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +57 -0
  172. package/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
  173. package/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
  174. package/lib/openzeppelin-contracts/.github/workflows/checks.yml +67 -25
  175. package/lib/openzeppelin-contracts/.github/workflows/docs.yml +1 -1
  176. package/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +86 -0
  177. package/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
  178. package/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +23 -12
  179. package/lib/openzeppelin-contracts/.gitmodules +7 -0
  180. package/lib/openzeppelin-contracts/.husky/pre-commit +2 -0
  181. package/lib/openzeppelin-contracts/.prettierrc +5 -4
  182. package/lib/openzeppelin-contracts/.solcover.js +19 -13
  183. package/lib/openzeppelin-contracts/CHANGELOG.md +918 -325
  184. package/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +2 -2
  185. package/lib/openzeppelin-contracts/CONTRIBUTING.md +19 -47
  186. package/lib/openzeppelin-contracts/FUNDING.json +10 -0
  187. package/lib/openzeppelin-contracts/GUIDELINES.md +115 -65
  188. package/lib/openzeppelin-contracts/LICENSE +1 -1
  189. package/lib/openzeppelin-contracts/README.md +40 -16
  190. package/lib/openzeppelin-contracts/RELEASING.md +32 -23
  191. package/lib/openzeppelin-contracts/SECURITY.md +34 -11
  192. package/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
  193. package/lib/openzeppelin-contracts/audits/2018-10.pdf +0 -0
  194. package/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
  195. package/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
  196. package/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
  197. package/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
  198. package/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf +0 -0
  199. package/lib/openzeppelin-contracts/audits/2024-12-v5.2.pdf +0 -0
  200. package/lib/openzeppelin-contracts/audits/2025-04-v5.3.pdf +0 -0
  201. package/lib/openzeppelin-contracts/audits/README.md +20 -0
  202. package/lib/openzeppelin-contracts/certora/Makefile +44 -14
  203. package/lib/openzeppelin-contracts/certora/README.md +43 -39
  204. package/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
  205. package/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
  206. package/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol +6 -0
  207. package/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol +36 -0
  208. package/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol +116 -0
  209. package/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
  210. package/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
  211. package/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol +16 -0
  212. package/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol +34 -0
  213. package/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
  214. package/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol +33 -0
  215. package/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
  216. package/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol +55 -0
  217. package/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol +35 -0
  218. package/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol +23 -0
  219. package/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol +14 -0
  220. package/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol +10 -0
  221. package/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol +10 -0
  222. package/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol +18 -0
  223. package/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol +13 -0
  224. package/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
  225. package/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
  226. package/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
  227. package/lib/openzeppelin-contracts/certora/run.js +168 -0
  228. package/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
  229. package/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
  230. package/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec +34 -0
  231. package/lib/openzeppelin-contracts/certora/specs/AccessManager.spec +826 -0
  232. package/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
  233. package/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
  234. package/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
  235. package/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
  236. package/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
  237. package/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
  238. package/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
  239. package/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
  240. package/lib/openzeppelin-contracts/certora/specs/Nonces.spec +92 -0
  241. package/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
  242. package/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
  243. package/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
  244. package/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
  245. package/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +12 -0
  246. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
  247. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
  248. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec +5 -0
  249. package/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec +33 -0
  250. package/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
  251. package/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
  252. package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
  253. package/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
  254. package/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
  255. package/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
  256. package/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
  257. package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
  258. package/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
  259. package/lib/openzeppelin-contracts/certora/specs.json +110 -0
  260. package/lib/openzeppelin-contracts/contracts/access/AccessControl.sol +41 -81
  261. package/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol +20 -10
  262. package/lib/openzeppelin-contracts/contracts/access/Ownable.sol +29 -12
  263. package/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol +16 -6
  264. package/lib/openzeppelin-contracts/contracts/access/README.adoc +23 -3
  265. package/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol +372 -0
  266. package/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol +81 -0
  267. package/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol +192 -0
  268. package/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol +31 -0
  269. package/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol +112 -0
  270. package/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol +740 -0
  271. package/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol +36 -0
  272. package/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol +32 -0
  273. package/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol +399 -0
  274. package/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol +14 -0
  275. package/lib/openzeppelin-contracts/contracts/account/Account.sol +144 -0
  276. package/lib/openzeppelin-contracts/contracts/account/README.adoc +30 -0
  277. package/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579.sol +413 -0
  278. package/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579Hooked.sol +106 -0
  279. package/lib/openzeppelin-contracts/contracts/account/extensions/draft-ERC7821.sol +69 -0
  280. package/lib/openzeppelin-contracts/contracts/account/utils/EIP7702Utils.sol +20 -0
  281. package/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol +159 -0
  282. package/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol +280 -0
  283. package/lib/openzeppelin-contracts/contracts/finance/README.adoc +1 -7
  284. package/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol +42 -32
  285. package/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol +54 -0
  286. package/lib/openzeppelin-contracts/contracts/governance/Governor.sol +474 -253
  287. package/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol +236 -58
  288. package/lib/openzeppelin-contracts/contracts/governance/README.adoc +37 -16
  289. package/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol +153 -108
  290. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol +190 -0
  291. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol +222 -0
  292. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol +22 -33
  293. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorNoncesKeyed.sol +90 -0
  294. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol +24 -40
  295. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalGuardian.sol +58 -0
  296. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSequentialProposalId.sol +75 -0
  297. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol +19 -27
  298. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol +125 -0
  299. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSuperQuorum.sol +58 -0
  300. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol +346 -0
  301. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol +47 -75
  302. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol +57 -56
  303. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol +43 -11
  304. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol +38 -44
  305. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesSuperQuorumFraction.sol +134 -0
  306. package/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol +16 -18
  307. package/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol +116 -75
  308. package/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol +84 -0
  309. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol +3 -3
  310. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol +3 -3
  311. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol +3 -3
  312. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol +5 -7
  313. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol +54 -63
  314. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol +20 -20
  315. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol +19 -23
  316. package/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol +3 -3
  317. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol +17 -3
  318. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol +109 -3
  319. package/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol +24 -0
  320. package/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol +3 -3
  321. package/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol +3 -3
  322. package/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol +2 -4
  323. package/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol +8 -0
  324. package/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol +10 -9
  325. package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol +4 -4
  326. package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol +4 -6
  327. package/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol +4 -6
  328. package/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol +8 -18
  329. package/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol +20 -0
  330. package/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol +28 -0
  331. package/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol +16 -0
  332. package/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol +9 -0
  333. package/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol +17 -0
  334. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol +3 -3
  335. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol +3 -3
  336. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol +3 -3
  337. package/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol +3 -3
  338. package/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol +197 -3
  339. package/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol +32 -3
  340. package/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol +32 -3
  341. package/lib/openzeppelin-contracts/contracts/interfaces/IERC7913.sol +17 -0
  342. package/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +50 -1
  343. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol +3 -3
  344. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol +253 -0
  345. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol +161 -0
  346. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6909.sol +125 -0
  347. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol +226 -0
  348. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol +17 -0
  349. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7786.sol +64 -0
  350. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7802.sol +30 -0
  351. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7821.sol +43 -0
  352. package/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol +62 -15
  353. package/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol +372 -0
  354. package/lib/openzeppelin-contracts/contracts/metatx/README.adoc +6 -1
  355. package/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol +34 -0
  356. package/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol +20 -0
  357. package/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol +124 -4
  358. package/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol +69 -0
  359. package/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol +19 -0
  360. package/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol +20 -0
  361. package/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol +26 -5
  362. package/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol +34 -0
  363. package/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol +9 -7
  364. package/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol +10 -6
  365. package/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol +16 -0
  366. package/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol +7 -9
  367. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +4 -4
  368. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol +1 -1
  369. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol +1 -1
  370. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol +1 -1
  371. package/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol +2 -2
  372. package/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol +10 -4
  373. package/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol +6 -6
  374. package/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol +1 -1
  375. package/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol +6 -6
  376. package/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol +62 -0
  377. package/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol +52 -0
  378. package/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol +23 -0
  379. package/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol +7 -12
  380. package/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol +2 -2
  381. package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol +4 -4
  382. package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol +13 -6
  383. package/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol +50 -0
  384. package/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol +2 -2
  385. package/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol +2 -2
  386. package/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol +55 -0
  387. package/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol +61 -15
  388. package/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol +26 -0
  389. package/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol +61 -0
  390. package/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol +27 -0
  391. package/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol +42 -0
  392. package/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol +20 -18
  393. package/lib/openzeppelin-contracts/contracts/mocks/account/AccountMock.sol +169 -0
  394. package/lib/openzeppelin-contracts/contracts/mocks/account/modules/ERC7579Mock.sol +122 -0
  395. package/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol +23 -0
  396. package/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol +1 -1
  397. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +22 -0
  398. package/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +109 -0
  399. package/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +9 -0
  400. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +25 -0
  401. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +24 -0
  402. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +23 -0
  403. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +14 -0
  404. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +16 -0
  405. package/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +17 -0
  406. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +20 -0
  407. package/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +37 -0
  408. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +80 -0
  409. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +21 -0
  410. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +32 -0
  411. package/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +28 -0
  412. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +21 -0
  413. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +7 -0
  414. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +11 -0
  415. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +26 -0
  416. package/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +19 -0
  417. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +27 -0
  418. package/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +15 -0
  419. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol +18 -0
  420. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol +14 -0
  421. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol +14 -0
  422. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorNoncesKeyedMock.sol +45 -0
  423. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol +40 -0
  424. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorProposalGuardianMock.sol +27 -0
  425. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSequentialProposalIdMock.sol +39 -0
  426. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol +79 -0
  427. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSuperQuorumMock.sol +95 -0
  428. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol +70 -0
  429. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol +69 -0
  430. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol +69 -0
  431. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol +20 -0
  432. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMock.sol +37 -0
  433. package/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol +51 -0
  434. package/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol +11 -0
  435. package/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol +19 -0
  436. package/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol +35 -0
  437. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol +74 -0
  438. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol +13 -0
  439. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol +33 -0
  440. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol +52 -0
  441. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol +34 -0
  442. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol +47 -0
  443. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol +10 -0
  444. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol +26 -0
  445. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol +17 -0
  446. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol +9 -0
  447. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol +26 -0
  448. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol +13 -0
  449. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol +38 -0
  450. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol +16 -0
  451. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol +8 -0
  452. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol +28 -0
  453. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol +39 -0
  454. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol +19 -0
  455. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol +31 -0
  456. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol +253 -0
  457. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol +29 -0
  458. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol +23 -0
  459. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol +17 -0
  460. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol +17 -0
  461. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol +40 -0
  462. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol +42 -0
  463. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol +61 -0
  464. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol +47 -0
  465. package/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol +17 -0
  466. package/lib/openzeppelin-contracts/contracts/mocks/utils/cryptography/ERC7739Mock.sol +13 -0
  467. package/lib/openzeppelin-contracts/contracts/package.json +2 -2
  468. package/lib/openzeppelin-contracts/contracts/proxy/Clones.sol +197 -24
  469. package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol +21 -13
  470. package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol +177 -0
  471. package/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol +4 -21
  472. package/lib/openzeppelin-contracts/contracts/proxy/README.adoc +13 -11
  473. package/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol +23 -27
  474. package/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol +3 -3
  475. package/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol +16 -11
  476. package/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol +17 -53
  477. package/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +80 -86
  478. package/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol +108 -35
  479. package/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol +81 -30
  480. package/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol +197 -325
  481. package/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol +28 -30
  482. package/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol +7 -6
  483. package/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +6 -12
  484. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol +11 -23
  485. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol +11 -17
  486. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol +45 -21
  487. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol +9 -11
  488. package/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol +4 -6
  489. package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol +11 -7
  490. package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol +88 -0
  491. package/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol +137 -221
  492. package/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol +13 -16
  493. package/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +28 -36
  494. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol +135 -0
  495. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol +13 -13
  496. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol +27 -10
  497. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol +56 -31
  498. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol +9 -15
  499. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol +77 -0
  500. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol +43 -235
  501. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol +48 -22
  502. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol +130 -132
  503. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol +4 -6
  504. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol +90 -0
  505. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Bridgeable.sol +50 -0
  506. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol +119 -0
  507. package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol +95 -0
  508. package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol +241 -77
  509. package/lib/openzeppelin-contracts/contracts/token/ERC6909/README.adoc +27 -0
  510. package/lib/openzeppelin-contracts/contracts/token/ERC6909/draft-ERC6909.sol +224 -0
  511. package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909ContentURI.sol +53 -0
  512. package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909Metadata.sol +77 -0
  513. package/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupply.sol +35 -0
  514. package/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol +250 -326
  515. package/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol +17 -27
  516. package/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol +6 -5
  517. package/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +11 -12
  518. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol +9 -9
  519. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol +82 -54
  520. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol +61 -56
  521. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol +12 -15
  522. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol +10 -22
  523. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol +25 -29
  524. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol +22 -16
  525. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol +102 -0
  526. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol +3 -3
  527. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol +3 -3
  528. package/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol +7 -11
  529. package/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol +50 -0
  530. package/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol +56 -28
  531. package/lib/openzeppelin-contracts/contracts/token/common/README.adoc +2 -2
  532. package/lib/openzeppelin-contracts/contracts/utils/Address.sol +51 -146
  533. package/lib/openzeppelin-contracts/contracts/utils/Arrays.sol +481 -25
  534. package/lib/openzeppelin-contracts/contracts/utils/Base64.sol +65 -38
  535. package/lib/openzeppelin-contracts/contracts/utils/Blockhash.sol +52 -0
  536. package/lib/openzeppelin-contracts/contracts/utils/Bytes.sol +166 -0
  537. package/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol +54 -0
  538. package/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol +51 -0
  539. package/lib/openzeppelin-contracts/contracts/utils/Calldata.sol +25 -0
  540. package/lib/openzeppelin-contracts/contracts/utils/Comparators.sol +19 -0
  541. package/lib/openzeppelin-contracts/contracts/utils/Context.sol +6 -2
  542. package/lib/openzeppelin-contracts/contracts/utils/Create2.sol +29 -20
  543. package/lib/openzeppelin-contracts/contracts/utils/Errors.sol +34 -0
  544. package/lib/openzeppelin-contracts/contracts/utils/Memory.sol +44 -0
  545. package/lib/openzeppelin-contracts/contracts/utils/Multicall.sol +19 -6
  546. package/lib/openzeppelin-contracts/contracts/utils/Nonces.sol +46 -0
  547. package/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol +74 -0
  548. package/lib/openzeppelin-contracts/contracts/utils/Packing.sol +1656 -0
  549. package/lib/openzeppelin-contracts/contracts/utils/Panic.sol +57 -0
  550. package/lib/openzeppelin-contracts/contracts/utils/Pausable.sol +112 -0
  551. package/lib/openzeppelin-contracts/contracts/utils/README.adoc +79 -45
  552. package/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol +87 -0
  553. package/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol +61 -0
  554. package/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol +122 -0
  555. package/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol +155 -0
  556. package/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol +72 -17
  557. package/lib/openzeppelin-contracts/contracts/utils/Strings.sol +453 -16
  558. package/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol +183 -0
  559. package/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol +96 -96
  560. package/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol +96 -40
  561. package/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol +31 -0
  562. package/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol +362 -71
  563. package/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol +99 -0
  564. package/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol +408 -0
  565. package/lib/openzeppelin-contracts/contracts/utils/cryptography/README.adoc +67 -0
  566. package/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol +154 -0
  567. package/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol +143 -21
  568. package/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-ERC7739Utils.sol +206 -0
  569. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol +22 -0
  570. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913.sol +251 -0
  571. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913Weighted.sol +207 -0
  572. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerECDSA.sol +55 -0
  573. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7702.sol +24 -0
  574. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7913.sol +62 -0
  575. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerP256.sol +63 -0
  576. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerRSA.sol +64 -0
  577. package/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/draft-ERC7739.sol +98 -0
  578. package/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913P256Verifier.sol +28 -0
  579. package/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913RSAVerifier.sol +22 -0
  580. package/lib/openzeppelin-contracts/contracts/utils/draft-InteroperableAddress.sol +234 -0
  581. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol +6 -10
  582. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol +18 -21
  583. package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol +5 -5
  584. package/lib/openzeppelin-contracts/contracts/utils/math/Math.sol +580 -176
  585. package/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol +224 -198
  586. package/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol +31 -6
  587. package/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol +14 -9
  588. package/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol +833 -0
  589. package/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol +140 -0
  590. package/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol +46 -60
  591. package/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol +919 -130
  592. package/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol +441 -27
  593. package/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol +256 -0
  594. package/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol +267 -0
  595. package/lib/openzeppelin-contracts/contracts/utils/types/Time.sol +133 -0
  596. package/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol +3 -3
  597. package/lib/openzeppelin-contracts/docs/README.md +16 -0
  598. package/lib/openzeppelin-contracts/docs/antora.yml +2 -1
  599. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
  600. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
  601. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +99 -0
  602. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  603. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  604. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  605. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  606. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  607. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  608. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  609. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  610. package/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  611. package/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +13 -7
  612. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +168 -97
  613. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
  614. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +354 -0
  615. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
  616. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
  617. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +19 -54
  618. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +13 -55
  619. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +7 -25
  620. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
  621. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +47 -0
  622. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +10 -42
  623. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +4 -82
  624. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
  625. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +85 -167
  626. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +19 -12
  627. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +306 -0
  628. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +4 -5
  629. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +14 -10
  630. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +482 -81
  631. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +1 -1
  632. package/lib/openzeppelin-contracts/docs/templates/contract.hbs +57 -1
  633. package/lib/openzeppelin-contracts/docs/templates/helpers.js +8 -8
  634. package/lib/openzeppelin-contracts/docs/templates/properties.js +47 -8
  635. package/lib/openzeppelin-contracts/eslint.config.mjs +26 -0
  636. package/lib/openzeppelin-contracts/foundry.toml +15 -0
  637. package/lib/openzeppelin-contracts/fv-requirements.txt +4 -0
  638. package/lib/openzeppelin-contracts/hardhat/async-test-sanity.js +10 -0
  639. package/lib/openzeppelin-contracts/hardhat/common-contracts.js +69 -0
  640. package/lib/openzeppelin-contracts/hardhat/env-artifacts.js +29 -0
  641. package/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +2 -4
  642. package/lib/openzeppelin-contracts/hardhat/remappings.js +18 -0
  643. package/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +3 -4
  644. package/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
  645. package/lib/openzeppelin-contracts/hardhat.config.js +67 -49
  646. package/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol +404 -0
  647. package/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol +356 -0
  648. package/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
  649. package/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
  650. package/lib/openzeppelin-contracts/lib/forge-std/.gitattributes +1 -0
  651. package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +48 -12
  652. package/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml +31 -0
  653. package/lib/openzeppelin-contracts/lib/forge-std/CONTRIBUTING.md +193 -0
  654. package/lib/openzeppelin-contracts/lib/forge-std/README.md +19 -3
  655. package/lib/openzeppelin-contracts/lib/forge-std/foundry.toml +5 -3
  656. package/lib/openzeppelin-contracts/lib/forge-std/package.json +2 -2
  657. package/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py +646 -0
  658. package/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol +7 -3
  659. package/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol +4 -3
  660. package/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol +595 -135
  661. package/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol +146 -48
  662. package/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol +303 -39
  663. package/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol +122 -0
  664. package/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol +129 -25
  665. package/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol +245 -99
  666. package/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol +333 -0
  667. package/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol +283 -0
  668. package/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol +125 -39
  669. package/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol +10 -5
  670. package/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol +2182 -304
  671. package/lib/openzeppelin-contracts/lib/forge-std/src/console.sol +635 -608
  672. package/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol +1 -1543
  673. package/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol +2 -2
  674. package/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
  675. package/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol +13937 -0
  676. package/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol +126 -572
  677. package/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol +166 -62
  678. package/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol +348 -35
  679. package/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol +15 -13
  680. package/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol +49 -0
  681. package/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol +31 -26
  682. package/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol +251 -46
  683. package/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol +110 -0
  684. package/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol +49 -0
  685. package/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol +186 -35
  686. package/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol +18 -0
  687. package/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json +8 -0
  688. package/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml +6 -0
  689. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE +661 -0
  690. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md +97 -0
  691. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol +49 -0
  692. package/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
  693. package/lib/openzeppelin-contracts/package.json +59 -45
  694. package/lib/openzeppelin-contracts/remappings.txt +1 -0
  695. package/lib/openzeppelin-contracts/renovate.json +2 -9
  696. package/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +28 -0
  697. package/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +130 -92
  698. package/lib/openzeppelin-contracts/scripts/checks/coverage.sh +24 -0
  699. package/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +39 -0
  700. package/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +28 -23
  701. package/lib/openzeppelin-contracts/scripts/checks/pragma-validity.js +45 -0
  702. package/lib/openzeppelin-contracts/scripts/fetch-common-contracts.js +50 -0
  703. package/lib/openzeppelin-contracts/scripts/gen-nav.js +62 -22
  704. package/lib/openzeppelin-contracts/scripts/generate/format-lines.js +4 -4
  705. package/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js +5 -0
  706. package/lib/openzeppelin-contracts/scripts/generate/run.js +38 -23
  707. package/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js +386 -0
  708. package/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js +9 -0
  709. package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +67 -128
  710. package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +18 -0
  711. package/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +141 -0
  712. package/lib/openzeppelin-contracts/scripts/generate/templates/Enumerable.opts.js +53 -0
  713. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +269 -84
  714. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +252 -36
  715. package/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js +187 -0
  716. package/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js +11 -0
  717. package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js +92 -0
  718. package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js +3 -0
  719. package/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js +48 -0
  720. package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +50 -82
  721. package/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js +15 -0
  722. package/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js +119 -0
  723. package/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js +127 -0
  724. package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +77 -0
  725. package/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js +57 -0
  726. package/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js +80 -0
  727. package/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js +35 -0
  728. package/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +18 -18
  729. package/lib/openzeppelin-contracts/scripts/get-contracts-metadata.js +55 -0
  730. package/lib/openzeppelin-contracts/scripts/helpers.js +4 -20
  731. package/lib/openzeppelin-contracts/scripts/minimize-pragma.js +138 -0
  732. package/lib/openzeppelin-contracts/scripts/prepack.sh +14 -3
  733. package/lib/openzeppelin-contracts/scripts/prepare-docs.sh +12 -1
  734. package/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
  735. package/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +6 -7
  736. package/lib/openzeppelin-contracts/scripts/release/update-comment.js +2 -4
  737. package/lib/openzeppelin-contracts/scripts/release/version.sh +4 -2
  738. package/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
  739. package/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
  740. package/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
  741. package/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
  742. package/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
  743. package/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
  744. package/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
  745. package/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
  746. package/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
  747. package/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +4 -4
  748. package/lib/openzeppelin-contracts/scripts/set-max-old-space-size.sh +10 -0
  749. package/lib/openzeppelin-contracts/scripts/solc-versions.js +15 -0
  750. package/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
  751. package/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +8 -0
  752. package/lib/openzeppelin-contracts/scripts/update-docs-branch.js +15 -5
  753. package/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
  754. package/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
  755. package/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
  756. package/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
  757. package/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +50 -0
  758. package/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +398 -0
  759. package/lib/openzeppelin-contracts/slither.config.json +3 -4
  760. package/lib/openzeppelin-contracts/solhint.config.js +29 -0
  761. package/lib/openzeppelin-contracts/test/TESTING.md +1 -1
  762. package/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js +756 -98
  763. package/lib/openzeppelin-contracts/test/access/AccessControl.test.js +13 -7
  764. package/lib/openzeppelin-contracts/test/access/Ownable.test.js +50 -28
  765. package/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js +77 -32
  766. package/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
  767. package/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js +24 -0
  768. package/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js +146 -0
  769. package/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js +257 -0
  770. package/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js +456 -0
  771. package/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js +2489 -0
  772. package/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js +112 -0
  773. package/lib/openzeppelin-contracts/test/account/Account.behavior.js +144 -0
  774. package/lib/openzeppelin-contracts/test/account/Account.test.js +48 -0
  775. package/lib/openzeppelin-contracts/test/account/AccountECDSA.test.js +52 -0
  776. package/lib/openzeppelin-contracts/test/account/AccountERC7702.t.sol +103 -0
  777. package/lib/openzeppelin-contracts/test/account/AccountERC7702.test.js +52 -0
  778. package/lib/openzeppelin-contracts/test/account/AccountERC7913.test.js +116 -0
  779. package/lib/openzeppelin-contracts/test/account/AccountMultiSigner.test.js +326 -0
  780. package/lib/openzeppelin-contracts/test/account/AccountMultiSignerWeighted.test.js +312 -0
  781. package/lib/openzeppelin-contracts/test/account/AccountP256.test.js +58 -0
  782. package/lib/openzeppelin-contracts/test/account/AccountRSA.test.js +58 -0
  783. package/lib/openzeppelin-contracts/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
  784. package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.behavior.js +563 -0
  785. package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.test.js +60 -0
  786. package/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
  787. package/lib/openzeppelin-contracts/test/account/extensions/ERC7821.behavior.js +145 -0
  788. package/lib/openzeppelin-contracts/test/account/utils/EIP7702Utils.test.js +53 -0
  789. package/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js +289 -0
  790. package/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
  791. package/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js +399 -0
  792. package/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi +1 -0
  793. package/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode +0 -0
  794. package/lib/openzeppelin-contracts/test/bin/EntryPoint080.abi +1 -0
  795. package/lib/openzeppelin-contracts/test/bin/EntryPoint080.bytecode +0 -0
  796. package/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi +1 -0
  797. package/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode +0 -0
  798. package/lib/openzeppelin-contracts/test/bin/SenderCreator080.abi +1 -0
  799. package/lib/openzeppelin-contracts/test/bin/SenderCreator080.bytecode +0 -0
  800. package/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js +59 -46
  801. package/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js +35 -37
  802. package/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js +70 -0
  803. package/lib/openzeppelin-contracts/test/governance/Governor.t.sol +59 -0
  804. package/lib/openzeppelin-contracts/test/governance/Governor.test.js +938 -590
  805. package/lib/openzeppelin-contracts/test/governance/TimelockController.test.js +910 -765
  806. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
  807. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
  808. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js +127 -100
  809. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
  810. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js +181 -173
  811. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
  812. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
  813. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js +155 -0
  814. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
  815. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
  816. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
  817. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js +419 -339
  818. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js +468 -384
  819. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js +161 -133
  820. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
  821. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js +234 -155
  822. package/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js +28 -0
  823. package/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js +254 -273
  824. package/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js +89 -48
  825. package/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js +152 -0
  826. package/lib/openzeppelin-contracts/test/helpers/access-manager.js +85 -0
  827. package/lib/openzeppelin-contracts/test/helpers/account.js +14 -0
  828. package/lib/openzeppelin-contracts/test/helpers/chains.js +56 -0
  829. package/lib/openzeppelin-contracts/test/helpers/constants.js +7 -0
  830. package/lib/openzeppelin-contracts/test/helpers/deploy.js +14 -0
  831. package/lib/openzeppelin-contracts/test/helpers/eip712-types.js +61 -0
  832. package/lib/openzeppelin-contracts/test/helpers/eip712.js +41 -26
  833. package/lib/openzeppelin-contracts/test/helpers/enums.js +9 -24
  834. package/lib/openzeppelin-contracts/test/helpers/erc4337.js +217 -0
  835. package/lib/openzeppelin-contracts/test/helpers/erc7579.js +58 -0
  836. package/lib/openzeppelin-contracts/test/helpers/erc7739.js +118 -0
  837. package/lib/openzeppelin-contracts/test/helpers/governance.js +194 -188
  838. package/lib/openzeppelin-contracts/test/helpers/iterate.js +41 -0
  839. package/lib/openzeppelin-contracts/test/helpers/math.js +33 -0
  840. package/lib/openzeppelin-contracts/test/helpers/methods.js +14 -0
  841. package/lib/openzeppelin-contracts/test/helpers/precompiles.js +12 -0
  842. package/lib/openzeppelin-contracts/test/helpers/random.js +24 -0
  843. package/lib/openzeppelin-contracts/test/helpers/signers.js +184 -0
  844. package/lib/openzeppelin-contracts/test/helpers/storage.js +48 -0
  845. package/lib/openzeppelin-contracts/test/helpers/strings.js +5 -0
  846. package/lib/openzeppelin-contracts/test/helpers/time.js +33 -0
  847. package/lib/openzeppelin-contracts/test/helpers/txpool.js +9 -20
  848. package/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js +95 -71
  849. package/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol +279 -0
  850. package/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js +384 -0
  851. package/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js +60 -50
  852. package/lib/openzeppelin-contracts/test/proxy/Clones.t.sol +91 -0
  853. package/lib/openzeppelin-contracts/test/proxy/Clones.test.js +164 -56
  854. package/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js +17 -7
  855. package/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
  856. package/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js +59 -98
  857. package/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js +98 -113
  858. package/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js +34 -29
  859. package/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js +45 -88
  860. package/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +209 -283
  861. package/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js +20 -7
  862. package/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js +94 -96
  863. package/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js +94 -59
  864. package/lib/openzeppelin-contracts/test/sanity.test.js +27 -0
  865. package/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js +530 -541
  866. package/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js +101 -152
  867. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js +35 -36
  868. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js +54 -57
  869. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js +59 -51
  870. package/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +37 -33
  871. package/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js +40 -46
  872. package/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
  873. package/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js +142 -206
  874. package/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js +133 -243
  875. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js +370 -0
  876. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js +96 -10
  877. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js +43 -15
  878. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js +102 -82
  879. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js +59 -64
  880. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
  881. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js +490 -462
  882. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js +133 -120
  883. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
  884. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js +802 -536
  885. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
  886. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
  887. package/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js +387 -179
  888. package/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.behavior.js +216 -0
  889. package/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.test.js +104 -0
  890. package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
  891. package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
  892. package/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
  893. package/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js +488 -479
  894. package/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js +16 -11
  895. package/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js +16 -8
  896. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js +43 -44
  897. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol +80 -19
  898. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js +179 -176
  899. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js +34 -51
  900. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js +41 -24
  901. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js +69 -44
  902. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js +187 -167
  903. package/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
  904. package/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js +12 -16
  905. package/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
  906. package/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js +80 -88
  907. package/lib/openzeppelin-contracts/test/utils/Address.test.js +159 -260
  908. package/lib/openzeppelin-contracts/test/utils/Arrays.t.sol +31 -0
  909. package/lib/openzeppelin-contracts/test/utils/Arrays.test.js +217 -95
  910. package/lib/openzeppelin-contracts/test/utils/Base64.t.sol +34 -0
  911. package/lib/openzeppelin-contracts/test/utils/Base64.test.js +48 -22
  912. package/lib/openzeppelin-contracts/test/utils/Blockhash.t.sol +101 -0
  913. package/lib/openzeppelin-contracts/test/utils/Blockhash.test.js +59 -0
  914. package/lib/openzeppelin-contracts/test/utils/Bytes.t.sol +74 -0
  915. package/lib/openzeppelin-contracts/test/utils/Bytes.test.js +212 -0
  916. package/lib/openzeppelin-contracts/test/utils/CAIP.test.js +56 -0
  917. package/lib/openzeppelin-contracts/test/utils/Calldata.test.js +22 -0
  918. package/lib/openzeppelin-contracts/test/utils/Context.behavior.js +26 -20
  919. package/lib/openzeppelin-contracts/test/utils/Context.test.js +10 -9
  920. package/lib/openzeppelin-contracts/test/utils/Create2.t.sol +17 -0
  921. package/lib/openzeppelin-contracts/test/utils/Create2.test.js +147 -49
  922. package/lib/openzeppelin-contracts/test/utils/Memory.t.sol +21 -0
  923. package/lib/openzeppelin-contracts/test/utils/Memory.test.js +39 -0
  924. package/lib/openzeppelin-contracts/test/utils/Multicall.test.js +50 -35
  925. package/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js +189 -0
  926. package/lib/openzeppelin-contracts/test/utils/Nonces.test.js +16 -0
  927. package/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js +17 -0
  928. package/lib/openzeppelin-contracts/test/utils/Packing.t.sol +993 -0
  929. package/lib/openzeppelin-contracts/test/utils/Packing.test.js +70 -0
  930. package/lib/openzeppelin-contracts/test/utils/Panic.test.js +37 -0
  931. package/lib/openzeppelin-contracts/test/utils/Pausable.test.js +90 -0
  932. package/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js +50 -0
  933. package/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol +109 -0
  934. package/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js +64 -0
  935. package/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol +248 -0
  936. package/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js +58 -0
  937. package/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js +55 -92
  938. package/lib/openzeppelin-contracts/test/utils/Strings.t.sol +50 -0
  939. package/lib/openzeppelin-contracts/test/utils/Strings.test.js +323 -49
  940. package/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js +59 -0
  941. package/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js +167 -132
  942. package/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js +100 -52
  943. package/lib/openzeppelin-contracts/test/utils/cryptography/ERC1271.behavior.js +111 -0
  944. package/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739.test.js +42 -0
  945. package/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739Utils.test.js +203 -0
  946. package/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js +210 -176
  947. package/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
  948. package/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js +97 -0
  949. package/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol +65 -0
  950. package/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js +182 -0
  951. package/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js +17 -0
  952. package/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js +102 -0
  953. package/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
  954. package/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js +397 -56
  955. package/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
  956. package/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.t.sol +99 -0
  957. package/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.test.js +170 -0
  958. package/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js +11 -6
  959. package/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js +84 -142
  960. package/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js +109 -90
  961. package/lib/openzeppelin-contracts/test/utils/math/Math.t.sol +255 -24
  962. package/lib/openzeppelin-contracts/test/utils/math/Math.test.js +616 -215
  963. package/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js +84 -89
  964. package/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol +80 -0
  965. package/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js +25 -65
  966. package/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js +83 -79
  967. package/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol +440 -0
  968. package/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js +147 -0
  969. package/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js +83 -0
  970. package/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js +47 -41
  971. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js +122 -89
  972. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js +70 -73
  973. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js +105 -61
  974. package/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js +53 -33
  975. package/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol +74 -0
  976. package/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js +113 -0
  977. package/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js +180 -0
  978. package/lib/openzeppelin-contracts/test/utils/types/Time.test.js +135 -0
  979. package/lib/openzeppelin-contracts-upgradeable/.changeset/all-geese-stand.md +5 -0
  980. package/lib/openzeppelin-contracts-upgradeable/.changeset/clean-ways-push.md +5 -0
  981. package/lib/openzeppelin-contracts-upgradeable/.changeset/config.json +12 -0
  982. package/lib/openzeppelin-contracts-upgradeable/.changeset/dull-students-eat.md +5 -0
  983. package/lib/openzeppelin-contracts-upgradeable/.changeset/eight-radios-check.md +5 -0
  984. package/lib/openzeppelin-contracts-upgradeable/.changeset/fine-frogs-bake.md +5 -0
  985. package/lib/openzeppelin-contracts-upgradeable/.changeset/full-ways-help.md +5 -0
  986. package/lib/openzeppelin-contracts-upgradeable/.changeset/funny-years-yawn.md +5 -0
  987. package/lib/openzeppelin-contracts-upgradeable/.changeset/hot-grapes-lie.md +5 -0
  988. package/lib/openzeppelin-contracts-upgradeable/.changeset/lazy-poets-cheer.md +5 -0
  989. package/lib/openzeppelin-contracts-upgradeable/.changeset/long-hornets-mate.md +5 -0
  990. package/lib/openzeppelin-contracts-upgradeable/.changeset/lucky-donuts-scream.md +5 -0
  991. package/lib/openzeppelin-contracts-upgradeable/.changeset/major-feet-write.md +5 -0
  992. package/lib/openzeppelin-contracts-upgradeable/.changeset/new-days-tease.md +5 -0
  993. package/lib/openzeppelin-contracts-upgradeable/.changeset/nice-rings-wish.md +5 -0
  994. package/lib/openzeppelin-contracts-upgradeable/.changeset/pink-dolls-shop.md +5 -0
  995. package/lib/openzeppelin-contracts-upgradeable/.changeset/popular-geese-tan.md +5 -0
  996. package/lib/openzeppelin-contracts-upgradeable/.changeset/proud-tables-sip.md +5 -0
  997. package/lib/openzeppelin-contracts-upgradeable/.changeset/public-crabs-heal.md +5 -0
  998. package/lib/openzeppelin-contracts-upgradeable/.changeset/quiet-kiwis-feel.md +5 -0
  999. package/lib/openzeppelin-contracts-upgradeable/.changeset/rare-shirts-unite.md +5 -0
  1000. package/lib/openzeppelin-contracts-upgradeable/.changeset/rich-cows-repair.md +5 -0
  1001. package/lib/openzeppelin-contracts-upgradeable/.changeset/ripe-bears-hide.md +5 -0
  1002. package/lib/openzeppelin-contracts-upgradeable/.changeset/rotten-apes-lie.md +5 -0
  1003. package/lib/openzeppelin-contracts-upgradeable/.changeset/social-walls-obey.md +5 -0
  1004. package/lib/openzeppelin-contracts-upgradeable/.changeset/sour-pens-shake.md +5 -0
  1005. package/lib/openzeppelin-contracts-upgradeable/.changeset/strong-points-change.md +5 -0
  1006. package/lib/openzeppelin-contracts-upgradeable/.changeset/tame-bears-mix.md +5 -0
  1007. package/lib/openzeppelin-contracts-upgradeable/.changeset/violet-turtles-like.md +5 -0
  1008. package/lib/openzeppelin-contracts-upgradeable/.changeset/wet-dodos-reply.md +5 -0
  1009. package/lib/openzeppelin-contracts-upgradeable/.changeset/whole-plums-speak.md +5 -0
  1010. package/lib/openzeppelin-contracts-upgradeable/.changeset/wild-baths-buy.md +5 -0
  1011. package/lib/openzeppelin-contracts-upgradeable/.codecov.yml +4 -0
  1012. package/lib/openzeppelin-contracts-upgradeable/.github/CODEOWNERS +10 -0
  1013. package/lib/openzeppelin-contracts-upgradeable/.github/ISSUE_TEMPLATE/config.yml +4 -0
  1014. package/lib/openzeppelin-contracts-upgradeable/.github/PULL_REQUEST_TEMPLATE.md +1 -1
  1015. package/lib/openzeppelin-contracts-upgradeable/.github/actions/gas-compare/action.yml +7 -5
  1016. package/lib/openzeppelin-contracts-upgradeable/.github/actions/setup/action.yml +9 -7
  1017. package/lib/openzeppelin-contracts-upgradeable/.github/actions/storage-layout/action.yml +57 -0
  1018. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/actionlint.yml +18 -0
  1019. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/changeset.yml +28 -0
  1020. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/checks.yml +67 -36
  1021. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/docs.yml +1 -1
  1022. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/formal-verification.yml +86 -0
  1023. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/release-cycle.yml +214 -0
  1024. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/upgradeable.yml +34 -0
  1025. package/lib/openzeppelin-contracts-upgradeable/.gitmodules +11 -0
  1026. package/lib/openzeppelin-contracts-upgradeable/.husky/pre-commit +2 -0
  1027. package/lib/openzeppelin-contracts-upgradeable/.prettierrc +5 -4
  1028. package/lib/openzeppelin-contracts-upgradeable/.solcover.js +19 -13
  1029. package/lib/openzeppelin-contracts-upgradeable/CHANGELOG.md +918 -328
  1030. package/lib/openzeppelin-contracts-upgradeable/CODE_OF_CONDUCT.md +2 -2
  1031. package/lib/openzeppelin-contracts-upgradeable/CONTRIBUTING.md +19 -47
  1032. package/lib/openzeppelin-contracts-upgradeable/FUNDING.json +10 -0
  1033. package/lib/openzeppelin-contracts-upgradeable/GUIDELINES.md +115 -65
  1034. package/lib/openzeppelin-contracts-upgradeable/LICENSE +1 -1
  1035. package/lib/openzeppelin-contracts-upgradeable/README.md +55 -47
  1036. package/lib/openzeppelin-contracts-upgradeable/RELEASING.md +32 -23
  1037. package/lib/openzeppelin-contracts-upgradeable/SECURITY.md +34 -11
  1038. package/lib/openzeppelin-contracts-upgradeable/audits/2017-03.md +292 -0
  1039. package/lib/openzeppelin-contracts-upgradeable/audits/2022-10-Checkpoints.pdf +0 -0
  1040. package/lib/openzeppelin-contracts-upgradeable/audits/2022-10-ERC4626.pdf +0 -0
  1041. package/lib/openzeppelin-contracts-upgradeable/audits/2023-05-v4.9.pdf +0 -0
  1042. package/lib/openzeppelin-contracts-upgradeable/audits/2023-10-v5.0.pdf +0 -0
  1043. package/lib/openzeppelin-contracts-upgradeable/audits/2024-10-v5.1.pdf +0 -0
  1044. package/lib/openzeppelin-contracts-upgradeable/audits/2024-12-v5.2.pdf +0 -0
  1045. package/lib/openzeppelin-contracts-upgradeable/audits/2025-04-v5.3.pdf +0 -0
  1046. package/lib/openzeppelin-contracts-upgradeable/audits/README.md +20 -0
  1047. package/lib/openzeppelin-contracts-upgradeable/certora/Makefile +44 -14
  1048. package/lib/openzeppelin-contracts-upgradeable/certora/README.md +43 -39
  1049. package/lib/openzeppelin-contracts-upgradeable/certora/diff/access_manager_AccessManager.sol.patch +97 -0
  1050. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
  1051. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessControlHarness.sol +6 -0
  1052. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessManagedHarness.sol +36 -0
  1053. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/AccessManagerHarness.sol +116 -0
  1054. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
  1055. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
  1056. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20PermitHarness.sol +16 -0
  1057. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20WrapperHarness.sol +34 -0
  1058. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
  1059. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC721Harness.sol +33 -0
  1060. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
  1061. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/EnumerableMapHarness.sol +55 -0
  1062. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/EnumerableSetHarness.sol +35 -0
  1063. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/InitializableHarness.sol +23 -0
  1064. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/NoncesHarness.sol +14 -0
  1065. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/Ownable2StepHarness.sol +10 -0
  1066. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/OwnableHarness.sol +10 -0
  1067. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/PausableHarness.sol +18 -0
  1068. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/TimelockControllerHarness.sol +13 -0
  1069. package/lib/openzeppelin-contracts-upgradeable/certora/reports/2021-10.pdf +0 -0
  1070. package/lib/openzeppelin-contracts-upgradeable/certora/reports/2022-03.pdf +0 -0
  1071. package/lib/openzeppelin-contracts-upgradeable/certora/reports/2022-05.pdf +0 -0
  1072. package/lib/openzeppelin-contracts-upgradeable/certora/run.js +168 -0
  1073. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessControl.spec +119 -0
  1074. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
  1075. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessManaged.spec +34 -0
  1076. package/lib/openzeppelin-contracts-upgradeable/certora/specs/AccessManager.spec +826 -0
  1077. package/lib/openzeppelin-contracts-upgradeable/certora/specs/DoubleEndedQueue.spec +300 -0
  1078. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20.spec +352 -0
  1079. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20FlashMint.spec +55 -0
  1080. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC20Wrapper.spec +198 -0
  1081. package/lib/openzeppelin-contracts-upgradeable/certora/specs/ERC721.spec +679 -0
  1082. package/lib/openzeppelin-contracts-upgradeable/certora/specs/EnumerableMap.spec +333 -0
  1083. package/lib/openzeppelin-contracts-upgradeable/certora/specs/EnumerableSet.spec +246 -0
  1084. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Initializable.spec +165 -0
  1085. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Nonces.spec +92 -0
  1086. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Ownable.spec +77 -0
  1087. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Ownable2Step.spec +108 -0
  1088. package/lib/openzeppelin-contracts-upgradeable/certora/specs/Pausable.spec +96 -0
  1089. package/lib/openzeppelin-contracts-upgradeable/certora/specs/TimelockController.spec +274 -0
  1090. package/lib/openzeppelin-contracts-upgradeable/certora/specs/helpers/helpers.spec +12 -0
  1091. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessControl.spec +8 -0
  1092. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
  1093. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessManaged.spec +5 -0
  1094. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IAccessManager.spec +33 -0
  1095. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC20.spec +11 -0
  1096. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC2612.spec +5 -0
  1097. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
  1098. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC3156FlashLender.spec +5 -0
  1099. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC5313.spec +3 -0
  1100. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC721.spec +17 -0
  1101. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IERC721Receiver.spec +3 -0
  1102. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IOwnable.spec +5 -0
  1103. package/lib/openzeppelin-contracts-upgradeable/certora/specs/methods/IOwnable2Step.spec +7 -0
  1104. package/lib/openzeppelin-contracts-upgradeable/certora/specs.json +110 -0
  1105. package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol +71 -99
  1106. package/lib/openzeppelin-contracts-upgradeable/contracts/access/Ownable2StepUpgradeable.sol +38 -21
  1107. package/lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol +50 -26
  1108. package/lib/openzeppelin-contracts-upgradeable/contracts/access/README.adoc +23 -3
  1109. package/lib/openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlDefaultAdminRulesUpgradeable.sol +401 -0
  1110. package/lib/openzeppelin-contracts-upgradeable/contracts/access/extensions/AccessControlEnumerableUpgradeable.sol +104 -0
  1111. package/lib/openzeppelin-contracts-upgradeable/contracts/access/manager/AccessManagedUpgradeable.sol +133 -0
  1112. package/lib/openzeppelin-contracts-upgradeable/contracts/access/manager/AccessManagerUpgradeable.sol +783 -0
  1113. package/lib/openzeppelin-contracts-upgradeable/contracts/account/README.adoc +30 -0
  1114. package/lib/openzeppelin-contracts-upgradeable/contracts/account/extensions/draft-AccountERC7579HookedUpgradeable.sol +127 -0
  1115. package/lib/openzeppelin-contracts-upgradeable/contracts/account/extensions/draft-AccountERC7579Upgradeable.sol +426 -0
  1116. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/README.adoc +1 -7
  1117. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/VestingWalletCliffUpgradeable.sol +73 -0
  1118. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/VestingWalletUpgradeable.sol +79 -59
  1119. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/GovernorUpgradeable.sol +509 -269
  1120. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/README.adoc +37 -16
  1121. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/TimelockControllerUpgradeable.sol +186 -131
  1122. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingFractionalUpgradeable.sol +214 -0
  1123. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingOverridableUpgradeable.sol +248 -0
  1124. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorCountingSimpleUpgradeable.sol +51 -51
  1125. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorNoncesKeyedUpgradeable.sol +96 -0
  1126. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorPreventLateQuorumUpgradeable.sol +46 -53
  1127. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorProposalGuardianUpgradeable.sol +78 -0
  1128. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSequentialProposalIdUpgradeable.sol +98 -0
  1129. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSettingsUpgradeable.sol +50 -50
  1130. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorStorageUpgradeable.sol +150 -0
  1131. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorSuperQuorumUpgradeable.sol +64 -0
  1132. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockAccessUpgradeable.sol +376 -0
  1133. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockCompoundUpgradeable.sol +77 -91
  1134. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorTimelockControlUpgradeable.sol +84 -70
  1135. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesQuorumFractionUpgradeable.sol +51 -49
  1136. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesSuperQuorumFractionUpgradeable.sol +155 -0
  1137. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesUpgradeable.sol +60 -23
  1138. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/VotesExtendedUpgradeable.sol +106 -0
  1139. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/VotesUpgradeable.sol +143 -87
  1140. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/README.adoc +50 -1
  1141. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/ERC2771ContextUpgradeable.sol +60 -20
  1142. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/ERC2771ForwarderUpgradeable.sol +380 -0
  1143. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/README.adoc +6 -1
  1144. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessManagedTargetUpgradeable.sol +40 -0
  1145. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessManagerMockUpgradeable.sol +25 -0
  1146. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ArraysMockUpgradeable.sol +133 -26
  1147. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AuthorityMockUpgradeable.sol +95 -0
  1148. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Base64DirtyUpgradeable.sol +25 -0
  1149. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BatchCallerUpgradeable.sol +26 -0
  1150. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CallReceiverMockUpgradeable.sol +35 -17
  1151. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ConstructorMockUpgradeable.sol +39 -0
  1152. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ContextMockUpgradeable.sol +11 -23
  1153. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/DummyImplementationUpgradeable.sol +14 -31
  1154. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EIP712VerifierUpgradeable.sol +22 -0
  1155. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1271WalletMockUpgradeable.sol +12 -29
  1156. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165InterfacesSupportedUpgradeable.sol +6 -20
  1157. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165MaliciousDataUpgradeable.sol +2 -9
  1158. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165MissingDataUpgradeable.sol +2 -9
  1159. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165NotSupportedUpgradeable.sol +2 -9
  1160. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165/ERC165ReturnBombUpgradeable.sol +5 -12
  1161. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC2771ContextMockUpgradeable.sol +10 -11
  1162. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC3156FlashBorrowerMockUpgradeable.sol +12 -19
  1163. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EtherReceiverMockUpgradeable.sol +4 -11
  1164. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/InitializableMock.sol +6 -6
  1165. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleProofCustomHashMockUpgradeable.sol +68 -0
  1166. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleTreeMockUpgradeable.sol +58 -0
  1167. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallHelperUpgradeable.sol +29 -0
  1168. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MultipleInheritanceInitializableMocks.sol +7 -12
  1169. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/PausableMockUpgradeable.sol +3 -11
  1170. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyAttackUpgradeable.sol +5 -12
  1171. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyMockUpgradeable.sol +13 -13
  1172. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ReentrancyTransientMockUpgradeable.sol +55 -0
  1173. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/RegressionImplementation.sol +2 -2
  1174. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SingleInheritanceInitializableMocks.sol +2 -2
  1175. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StatelessUpgradeable.sol +61 -0
  1176. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StorageSlotMockUpgradeable.sol +62 -23
  1177. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimelockReentrantUpgradeable.sol +32 -0
  1178. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TransientSlotMockUpgradeable.sol +67 -0
  1179. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UpgradeableBeaconMockUpgradeable.sol +34 -0
  1180. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/VotesExtendedMockUpgradeable.sol +53 -0
  1181. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/VotesMockUpgradeable.sol +28 -27
  1182. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/WithInit.sol +849 -740
  1183. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/AccountMockUpgradeable.sol +223 -0
  1184. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/modules/ERC7579MockUpgradeable.sol +138 -0
  1185. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/account/utils/ERC7579UtilsMockUpgradeable.sol +29 -0
  1186. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/compound/CompTimelockUpgradeable.sol +2 -9
  1187. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC20WithAutoMinerRewardUpgradeable.sol +28 -0
  1188. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/ERC4626FeesUpgradeable.sol +115 -0
  1189. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/MyNFTUpgradeable.sol +14 -0
  1190. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintBaseUpgradeable.sol +31 -0
  1191. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintMissingUpgradeable.sol +30 -0
  1192. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRoleUpgradeable.sol +29 -0
  1193. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessControlModifiedUpgradeable.sol +20 -0
  1194. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/AccessManagedERC20MintBaseUpgradeable.sol +22 -0
  1195. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/access-control/MyContractOwnableUpgradeable.sol +22 -0
  1196. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyAccountERC7702Upgradeable.sol +26 -0
  1197. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/account/MyFactoryAccountUpgradeable.sol +42 -0
  1198. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyGovernorUpgradeable.sol +92 -0
  1199. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenTimestampBasedUpgradeable.sol +39 -0
  1200. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenUpgradeable.sol +28 -0
  1201. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/governance/MyTokenWrappedUpgradeable.sol +39 -0
  1202. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/GameItemsUpgradeable.sol +27 -0
  1203. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC1155/MyERC115HolderContractUpgradeable.sol +13 -0
  1204. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC20/GLDTokenUpgradeable.sol +17 -0
  1205. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC6909/ERC6909GameItemsUpgradeable.sol +31 -0
  1206. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/token/ERC721/GameItemUpgradeable.sol +24 -0
  1207. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/Base64NFTUpgradeable.sol +32 -0
  1208. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/docs/utilities/MulticallUpgradeable.sol +21 -0
  1209. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorCountingOverridableMockUpgradeable.sol +24 -0
  1210. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorFractionalMockUpgradeable.sol +20 -0
  1211. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorMockUpgradeable.sol +20 -0
  1212. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorNoncesKeyedMockUpgradeable.sol +51 -0
  1213. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorPreventLateQuorumMockUpgradeable.sol +45 -0
  1214. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorProposalGuardianMockUpgradeable.sol +33 -0
  1215. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorSequentialProposalIdMockUpgradeable.sol +45 -0
  1216. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorStorageMockUpgradeable.sol +85 -0
  1217. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorSuperQuorumMockUpgradeable.sol +100 -0
  1218. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockAccessMockUpgradeable.sol +76 -0
  1219. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockCompoundMockUpgradeable.sol +75 -0
  1220. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorTimelockControlMockUpgradeable.sol +75 -0
  1221. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorVoteMockUpgradeable.sol +26 -0
  1222. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMockUpgradeable.sol +43 -0
  1223. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/governance/GovernorWithParamsMockUpgradeable.sol +57 -0
  1224. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/BadBeaconUpgradeable.sol +22 -0
  1225. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/ClashingImplementationUpgradeable.sol +25 -0
  1226. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/proxy/UUPSUpgradeableMockUpgradeable.sol +56 -0
  1227. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1155ReceiverMockUpgradeable.sol +79 -0
  1228. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ForceApproveMockUpgradeable.sol +19 -0
  1229. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363NoReturnMockUpgradeable.sol +39 -0
  1230. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ReceiverMockUpgradeable.sol +57 -0
  1231. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363ReturnFalseMockUpgradeable.sol +46 -0
  1232. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC1363SpenderMockUpgradeable.sol +52 -0
  1233. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ApprovalMockUpgradeable.sol +16 -0
  1234. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20BridgeableMockUpgradeable.sol +31 -0
  1235. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20DecimalsMockUpgradeable.sol +22 -0
  1236. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ExcessDecimalsMockUpgradeable.sol +15 -0
  1237. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20FlashMintMockUpgradeable.sol +32 -0
  1238. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ForceApproveMockUpgradeable.sol +19 -0
  1239. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20GetterHelperUpgradeable.sol +44 -0
  1240. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20MockUpgradeable.sol +21 -0
  1241. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20MulticallMockUpgradeable.sol +14 -0
  1242. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20NoReturnMockUpgradeable.sol +34 -0
  1243. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ReentrantUpgradeable.sol +46 -0
  1244. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20ReturnFalseMockUpgradeable.sol +25 -0
  1245. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMockUpgradeable.sol +42 -0
  1246. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesLegacyMockUpgradeable.sol +259 -0
  1247. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC20VotesTimestampMockUpgradeable.sol +40 -0
  1248. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626LimitsMockUpgradeable.sol +28 -0
  1249. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626MockUpgradeable.sol +24 -0
  1250. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4626OffsetMockUpgradeable.sol +22 -0
  1251. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC4646FeesMockUpgradeable.sol +50 -0
  1252. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ConsecutiveEnumerableMockUpgradeable.sol +53 -0
  1253. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ConsecutiveMockUpgradeable.sol +80 -0
  1254. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721ReceiverMockUpgradeable.sol +52 -0
  1255. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/token/ERC721URIStorageMockUpgradeable.sol +23 -0
  1256. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/utils/cryptography/ERC7739MockUpgradeable.sol +29 -0
  1257. package/lib/openzeppelin-contracts-upgradeable/contracts/package.json +7 -4
  1258. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/README.adoc +13 -11
  1259. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol +108 -35
  1260. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/UUPSUpgradeable.sol +84 -40
  1261. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/ERC1155Upgradeable.sol +227 -343
  1262. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/README.adoc +6 -12
  1263. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155BurnableUpgradeable.sol +12 -31
  1264. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155PausableUpgradeable.sol +12 -26
  1265. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155SupplyUpgradeable.sol +63 -31
  1266. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/ERC1155URIStorageUpgradeable.sol +37 -30
  1267. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/utils/ERC1155HolderUpgradeable.sol +13 -15
  1268. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/ERC20Upgradeable.sol +168 -239
  1269. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/README.adoc +28 -36
  1270. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC1363Upgradeable.sol +142 -0
  1271. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20BurnableUpgradeable.sol +14 -21
  1272. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20CappedUpgradeable.sol +45 -23
  1273. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20FlashMintUpgradeable.sol +60 -42
  1274. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20PausableUpgradeable.sol +10 -24
  1275. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20PermitUpgradeable.sol +82 -0
  1276. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20VotesUpgradeable.sol +46 -245
  1277. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20WrapperUpgradeable.sol +71 -34
  1278. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC4626Upgradeable.sol +156 -148
  1279. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20BridgeableUpgradeable.sol +57 -0
  1280. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20TemporaryApprovalUpgradeable.sol +126 -0
  1281. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/README.adoc +27 -0
  1282. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/draft-ERC6909Upgradeable.sol +250 -0
  1283. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909ContentURIUpgradeable.sol +75 -0
  1284. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909MetadataUpgradeable.sol +101 -0
  1285. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupplyUpgradeable.sol +55 -0
  1286. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/ERC721Upgradeable.sol +288 -347
  1287. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/README.adoc +11 -12
  1288. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721BurnableUpgradeable.sol +10 -17
  1289. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721ConsecutiveUpgradeable.sol +106 -69
  1290. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721EnumerableUpgradeable.sol +100 -83
  1291. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721PausableUpgradeable.sol +13 -24
  1292. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721RoyaltyUpgradeable.sol +11 -30
  1293. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721URIStorageUpgradeable.sol +45 -42
  1294. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721VotesUpgradeable.sol +20 -21
  1295. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/ERC721WrapperUpgradeable.sol +122 -0
  1296. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/utils/ERC721HolderUpgradeable.sol +8 -19
  1297. package/lib/openzeppelin-contracts-upgradeable/contracts/token/common/ERC2981Upgradeable.sol +86 -47
  1298. package/lib/openzeppelin-contracts-upgradeable/contracts/token/common/README.adoc +2 -2
  1299. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol +6 -9
  1300. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/MulticallUpgradeable.sol +20 -28
  1301. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/NoncesKeyedUpgradeable.sol +94 -0
  1302. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/NoncesUpgradeable.sol +66 -0
  1303. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/PausableUpgradeable.sol +133 -0
  1304. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/README.adoc +79 -45
  1305. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardTransientUpgradeable.sol +67 -0
  1306. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ReentrancyGuardUpgradeable.sol +108 -0
  1307. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/EIP712Upgradeable.sol +127 -41
  1308. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/README.adoc +67 -0
  1309. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/MultiSignerERC7913Upgradeable.sol +276 -0
  1310. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/MultiSignerERC7913WeightedUpgradeable.sol +229 -0
  1311. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerECDSAUpgradeable.sol +74 -0
  1312. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerERC7913Upgradeable.sol +81 -0
  1313. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerP256Upgradeable.sol +82 -0
  1314. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/SignerRSAUpgradeable.sol +83 -0
  1315. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/signers/draft-ERC7739Upgradeable.sol +104 -0
  1316. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol +9 -20
  1317. package/lib/openzeppelin-contracts-upgradeable/docs/antora.yml +2 -1
  1318. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
  1319. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
  1320. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/access-manager.svg +99 -0
  1321. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  1322. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  1323. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  1324. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  1325. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  1326. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  1327. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  1328. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  1329. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  1330. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/nav.adoc +13 -7
  1331. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/access-control.adoc +168 -97
  1332. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
  1333. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/accounts.adoc +354 -0
  1334. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
  1335. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
  1336. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc1155.adoc +19 -54
  1337. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20-supply.adoc +13 -55
  1338. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc20.adoc +7 -25
  1339. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc4626.adoc +214 -0
  1340. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc6909.adoc +47 -0
  1341. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc721.adoc +10 -42
  1342. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/extending-contracts.adoc +4 -82
  1343. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/faq.adoc +13 -0
  1344. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/governance.adoc +85 -167
  1345. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/index.adoc +19 -12
  1346. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/multisig.adoc +306 -0
  1347. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/tokens.adoc +4 -5
  1348. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/upgradeable.adoc +14 -10
  1349. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/utilities.adoc +482 -81
  1350. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/wizard.adoc +1 -1
  1351. package/lib/openzeppelin-contracts-upgradeable/docs/templates/contract.hbs +57 -1
  1352. package/lib/openzeppelin-contracts-upgradeable/docs/templates/helpers.js +8 -8
  1353. package/lib/openzeppelin-contracts-upgradeable/docs/templates/properties.js +47 -8
  1354. package/lib/openzeppelin-contracts-upgradeable/eslint.config.mjs +26 -0
  1355. package/lib/openzeppelin-contracts-upgradeable/foundry.toml +15 -0
  1356. package/lib/openzeppelin-contracts-upgradeable/fv-requirements.txt +4 -0
  1357. package/lib/openzeppelin-contracts-upgradeable/hardhat/async-test-sanity.js +10 -0
  1358. package/lib/openzeppelin-contracts-upgradeable/hardhat/common-contracts.js +69 -0
  1359. package/lib/openzeppelin-contracts-upgradeable/hardhat/env-artifacts.js +15 -6
  1360. package/lib/openzeppelin-contracts-upgradeable/hardhat/ignore-unreachable-warnings.js +2 -4
  1361. package/lib/openzeppelin-contracts-upgradeable/hardhat/remappings.js +18 -0
  1362. package/lib/openzeppelin-contracts-upgradeable/hardhat/skip-foundry-tests.js +3 -4
  1363. package/lib/openzeppelin-contracts-upgradeable/hardhat/task-test-get-files.js +22 -16
  1364. package/lib/openzeppelin-contracts-upgradeable/hardhat.config.js +67 -49
  1365. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ERC4626.prop.sol +404 -0
  1366. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/ERC4626.test.sol +356 -0
  1367. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/LICENSE +661 -0
  1368. package/lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/README.md +116 -0
  1369. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.gitattributes +1 -0
  1370. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.github/workflows/ci.yml +48 -12
  1371. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.github/workflows/sync.yml +31 -0
  1372. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/CONTRIBUTING.md +193 -0
  1373. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/README.md +19 -3
  1374. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/foundry.toml +5 -3
  1375. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/package.json +2 -2
  1376. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/scripts/vm.py +646 -0
  1377. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Base.sol +7 -3
  1378. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Script.sol +4 -3
  1379. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdAssertions.sol +595 -135
  1380. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdChains.sol +146 -48
  1381. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdCheats.sol +303 -39
  1382. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdInvariant.sol +122 -0
  1383. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdJson.sol +129 -25
  1384. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdStorage.sol +245 -99
  1385. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdStyle.sol +333 -0
  1386. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdToml.sol +283 -0
  1387. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/StdUtils.sol +125 -39
  1388. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Test.sol +10 -5
  1389. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/Vm.sol +2182 -304
  1390. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/console.sol +635 -608
  1391. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/console2.sol +1 -1543
  1392. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/interfaces/IERC4626.sol +2 -2
  1393. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
  1394. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/src/safeconsole.sol +13937 -0
  1395. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdAssertions.t.sol +126 -572
  1396. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdChains.t.sol +166 -62
  1397. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdCheats.t.sol +348 -35
  1398. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdError.t.sol +15 -13
  1399. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdJson.t.sol +49 -0
  1400. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdMath.t.sol +31 -26
  1401. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdStorage.t.sol +251 -46
  1402. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdStyle.t.sol +110 -0
  1403. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdToml.t.sol +49 -0
  1404. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/StdUtils.t.sol +186 -35
  1405. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/Vm.t.sol +18 -0
  1406. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/fixtures/test.json +8 -0
  1407. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/test/fixtures/test.toml +6 -0
  1408. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/LICENSE +661 -0
  1409. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/README.md +97 -0
  1410. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/SVM.sol +49 -0
  1411. package/lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
  1412. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/all-geese-stand.md +5 -0
  1413. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/clean-ways-push.md +5 -0
  1414. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/config.json +12 -0
  1415. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/dull-students-eat.md +5 -0
  1416. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/eight-radios-check.md +5 -0
  1417. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/fine-frogs-bake.md +5 -0
  1418. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/full-ways-help.md +5 -0
  1419. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/funny-years-yawn.md +5 -0
  1420. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/hot-grapes-lie.md +5 -0
  1421. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/lazy-poets-cheer.md +5 -0
  1422. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/long-hornets-mate.md +5 -0
  1423. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/lucky-donuts-scream.md +5 -0
  1424. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/major-feet-write.md +5 -0
  1425. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/new-days-tease.md +5 -0
  1426. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/nice-rings-wish.md +5 -0
  1427. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/pink-dolls-shop.md +5 -0
  1428. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/popular-geese-tan.md +5 -0
  1429. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/proud-tables-sip.md +5 -0
  1430. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/public-crabs-heal.md +5 -0
  1431. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/quiet-kiwis-feel.md +5 -0
  1432. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rare-shirts-unite.md +5 -0
  1433. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rich-cows-repair.md +5 -0
  1434. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/ripe-bears-hide.md +5 -0
  1435. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/rotten-apes-lie.md +5 -0
  1436. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/social-walls-obey.md +5 -0
  1437. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/sour-pens-shake.md +5 -0
  1438. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/strong-points-change.md +5 -0
  1439. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/tame-bears-mix.md +5 -0
  1440. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/violet-turtles-like.md +5 -0
  1441. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/wet-dodos-reply.md +5 -0
  1442. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/whole-plums-speak.md +5 -0
  1443. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.changeset/wild-baths-buy.md +5 -0
  1444. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.codecov.yml +16 -0
  1445. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.editorconfig +21 -0
  1446. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/CODEOWNERS +10 -0
  1447. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md +21 -0
  1448. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml +4 -0
  1449. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md +20 -0
  1450. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml +51 -0
  1451. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/setup/action.yml +22 -0
  1452. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml +57 -0
  1453. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/actionlint.yml +18 -0
  1454. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/changeset.yml +28 -0
  1455. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/checks.yml +132 -0
  1456. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/docs.yml +19 -0
  1457. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml +86 -0
  1458. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml +214 -0
  1459. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml +34 -0
  1460. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.gitmodules +10 -0
  1461. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.husky/pre-commit +2 -0
  1462. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.mocharc.js +4 -0
  1463. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.prettierrc +15 -0
  1464. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/.solcover.js +21 -0
  1465. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CHANGELOG.md +1220 -0
  1466. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md +73 -0
  1467. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/CONTRIBUTING.md +36 -0
  1468. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/FUNDING.json +10 -0
  1469. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/GUIDELINES.md +155 -0
  1470. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/LICENSE +22 -0
  1471. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/README.md +108 -0
  1472. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/RELEASING.md +45 -0
  1473. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/SECURITY.md +43 -0
  1474. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2017-03.md +292 -0
  1475. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf +0 -0
  1476. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf +0 -0
  1477. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf +0 -0
  1478. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf +0 -0
  1479. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf +0 -0
  1480. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2024-12-v5.2.pdf +0 -0
  1481. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/2025-04-v5.3.pdf +0 -0
  1482. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits/README.md +20 -0
  1483. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/Makefile +54 -0
  1484. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/README.md +60 -0
  1485. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch +97 -0
  1486. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol +46 -0
  1487. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol +6 -0
  1488. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol +36 -0
  1489. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol +116 -0
  1490. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol +58 -0
  1491. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol +36 -0
  1492. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol +16 -0
  1493. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol +34 -0
  1494. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol +13 -0
  1495. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol +33 -0
  1496. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol +11 -0
  1497. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol +55 -0
  1498. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol +35 -0
  1499. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol +23 -0
  1500. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol +14 -0
  1501. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol +10 -0
  1502. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol +10 -0
  1503. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol +18 -0
  1504. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol +13 -0
  1505. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2021-10.pdf +0 -0
  1506. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2022-03.pdf +0 -0
  1507. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/reports/2022-05.pdf +0 -0
  1508. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/run.js +168 -0
  1509. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessControl.spec +119 -0
  1510. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec +464 -0
  1511. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec +34 -0
  1512. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/AccessManager.spec +826 -0
  1513. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec +300 -0
  1514. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20.spec +352 -0
  1515. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec +55 -0
  1516. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec +198 -0
  1517. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/ERC721.spec +679 -0
  1518. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec +333 -0
  1519. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec +246 -0
  1520. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Initializable.spec +165 -0
  1521. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Nonces.spec +92 -0
  1522. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Ownable.spec +77 -0
  1523. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec +108 -0
  1524. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/Pausable.spec +96 -0
  1525. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/TimelockController.spec +274 -0
  1526. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec +12 -0
  1527. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec +8 -0
  1528. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec +36 -0
  1529. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec +5 -0
  1530. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec +33 -0
  1531. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec +11 -0
  1532. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec +5 -0
  1533. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec +3 -0
  1534. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec +5 -0
  1535. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec +3 -0
  1536. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec +17 -0
  1537. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec +3 -0
  1538. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec +5 -0
  1539. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec +7 -0
  1540. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/certora/specs.json +110 -0
  1541. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/AccessControl.sol +207 -0
  1542. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol +98 -0
  1543. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/Ownable.sol +100 -0
  1544. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol +67 -0
  1545. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/README.adoc +45 -0
  1546. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol +372 -0
  1547. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol +81 -0
  1548. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol +192 -0
  1549. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol +31 -0
  1550. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol +112 -0
  1551. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol +740 -0
  1552. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol +36 -0
  1553. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol +32 -0
  1554. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol +399 -0
  1555. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol +14 -0
  1556. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/Account.sol +144 -0
  1557. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/README.adoc +30 -0
  1558. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579.sol +413 -0
  1559. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-AccountERC7579Hooked.sol +106 -0
  1560. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/extensions/draft-ERC7821.sol +69 -0
  1561. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/EIP7702Utils.sol +20 -0
  1562. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol +159 -0
  1563. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol +280 -0
  1564. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/README.adoc +14 -0
  1565. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol +159 -0
  1566. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol +54 -0
  1567. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/Governor.sol +818 -0
  1568. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol +454 -0
  1569. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/README.adoc +197 -0
  1570. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol +471 -0
  1571. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol +190 -0
  1572. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol +222 -0
  1573. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol +96 -0
  1574. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorNoncesKeyed.sol +90 -0
  1575. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol +92 -0
  1576. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalGuardian.sol +58 -0
  1577. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSequentialProposalId.sol +75 -0
  1578. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol +106 -0
  1579. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol +125 -0
  1580. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSuperQuorum.sol +58 -0
  1581. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol +346 -0
  1582. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol +165 -0
  1583. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol +167 -0
  1584. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol +63 -0
  1585. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol +113 -0
  1586. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesSuperQuorumFraction.sol +134 -0
  1587. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol +59 -0
  1588. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol +252 -0
  1589. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol +84 -0
  1590. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol +6 -0
  1591. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol +6 -0
  1592. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol +6 -0
  1593. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol +17 -0
  1594. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol +86 -0
  1595. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol +32 -0
  1596. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol +26 -0
  1597. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol +6 -0
  1598. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol +20 -0
  1599. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol +112 -0
  1600. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol +24 -0
  1601. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol +6 -0
  1602. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol +6 -0
  1603. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol +19 -0
  1604. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol +8 -0
  1605. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol +26 -0
  1606. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol +7 -0
  1607. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol +27 -0
  1608. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol +41 -0
  1609. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol +230 -0
  1610. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol +20 -0
  1611. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol +28 -0
  1612. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol +16 -0
  1613. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol +9 -0
  1614. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol +17 -0
  1615. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol +6 -0
  1616. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol +6 -0
  1617. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol +6 -0
  1618. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol +6 -0
  1619. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol +200 -0
  1620. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol +35 -0
  1621. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol +35 -0
  1622. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/IERC7913.sol +17 -0
  1623. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/README.adoc +105 -0
  1624. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol +20 -0
  1625. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol +253 -0
  1626. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol +161 -0
  1627. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6909.sol +125 -0
  1628. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol +226 -0
  1629. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol +17 -0
  1630. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7786.sol +64 -0
  1631. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7802.sol +30 -0
  1632. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7821.sol +43 -0
  1633. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol +90 -0
  1634. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol +372 -0
  1635. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/metatx/README.adoc +17 -0
  1636. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol +34 -0
  1637. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol +20 -0
  1638. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol +171 -0
  1639. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol +69 -0
  1640. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol +19 -0
  1641. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol +20 -0
  1642. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol +78 -0
  1643. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol +34 -0
  1644. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol +35 -0
  1645. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol +65 -0
  1646. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol +16 -0
  1647. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol +24 -0
  1648. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol +58 -0
  1649. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol +12 -0
  1650. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol +7 -0
  1651. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol +5 -0
  1652. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol +18 -0
  1653. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol +28 -0
  1654. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol +53 -0
  1655. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol +17 -0
  1656. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol +130 -0
  1657. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol +62 -0
  1658. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol +52 -0
  1659. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol +23 -0
  1660. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol +131 -0
  1661. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol +31 -0
  1662. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol +12 -0
  1663. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol +50 -0
  1664. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol +50 -0
  1665. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol +61 -0
  1666. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol +49 -0
  1667. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol +55 -0
  1668. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol +87 -0
  1669. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol +26 -0
  1670. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol +61 -0
  1671. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol +27 -0
  1672. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol +42 -0
  1673. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol +42 -0
  1674. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/AccountMock.sol +169 -0
  1675. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/modules/ERC7579Mock.sol +122 -0
  1676. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol +23 -0
  1677. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol +174 -0
  1678. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol +22 -0
  1679. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol +109 -0
  1680. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol +9 -0
  1681. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol +25 -0
  1682. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol +24 -0
  1683. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol +23 -0
  1684. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol +14 -0
  1685. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol +16 -0
  1686. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol +17 -0
  1687. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyAccountERC7702.sol +20 -0
  1688. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/account/MyFactoryAccount.sol +37 -0
  1689. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol +80 -0
  1690. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol +21 -0
  1691. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol +32 -0
  1692. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol +28 -0
  1693. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol +21 -0
  1694. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol +7 -0
  1695. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol +11 -0
  1696. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC6909/ERC6909GameItems.sol +26 -0
  1697. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol +19 -0
  1698. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol +27 -0
  1699. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol +15 -0
  1700. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol +18 -0
  1701. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol +14 -0
  1702. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol +14 -0
  1703. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorNoncesKeyedMock.sol +45 -0
  1704. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol +40 -0
  1705. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorProposalGuardianMock.sol +27 -0
  1706. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSequentialProposalIdMock.sol +39 -0
  1707. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol +79 -0
  1708. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorSuperQuorumMock.sol +95 -0
  1709. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol +70 -0
  1710. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol +69 -0
  1711. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol +69 -0
  1712. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol +20 -0
  1713. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVotesSuperQuorumFractionMock.sol +37 -0
  1714. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol +51 -0
  1715. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol +11 -0
  1716. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol +19 -0
  1717. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol +35 -0
  1718. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol +74 -0
  1719. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol +13 -0
  1720. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol +33 -0
  1721. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol +52 -0
  1722. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol +34 -0
  1723. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol +47 -0
  1724. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol +10 -0
  1725. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20BridgeableMock.sol +26 -0
  1726. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol +17 -0
  1727. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol +9 -0
  1728. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol +26 -0
  1729. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol +13 -0
  1730. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol +38 -0
  1731. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol +16 -0
  1732. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol +8 -0
  1733. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol +28 -0
  1734. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol +39 -0
  1735. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol +19 -0
  1736. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol +31 -0
  1737. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol +253 -0
  1738. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol +29 -0
  1739. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol +23 -0
  1740. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol +17 -0
  1741. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol +17 -0
  1742. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol +40 -0
  1743. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol +42 -0
  1744. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol +61 -0
  1745. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol +47 -0
  1746. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol +17 -0
  1747. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/mocks/utils/cryptography/ERC7739Mock.sol +13 -0
  1748. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/package.json +32 -0
  1749. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/Clones.sol +262 -0
  1750. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol +40 -0
  1751. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol +177 -0
  1752. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol +69 -0
  1753. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/README.adoc +87 -0
  1754. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol +57 -0
  1755. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol +16 -0
  1756. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol +70 -0
  1757. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol +45 -0
  1758. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +118 -0
  1759. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol +238 -0
  1760. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol +146 -0
  1761. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol +389 -0
  1762. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol +123 -0
  1763. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol +59 -0
  1764. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc +43 -0
  1765. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol +28 -0
  1766. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol +38 -0
  1767. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol +88 -0
  1768. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol +61 -0
  1769. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol +20 -0
  1770. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol +40 -0
  1771. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol +88 -0
  1772. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol +305 -0
  1773. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol +79 -0
  1774. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc +78 -0
  1775. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol +135 -0
  1776. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol +39 -0
  1777. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol +54 -0
  1778. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol +134 -0
  1779. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol +33 -0
  1780. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol +77 -0
  1781. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol +83 -0
  1782. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol +89 -0
  1783. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol +282 -0
  1784. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol +26 -0
  1785. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol +90 -0
  1786. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Bridgeable.sol +50 -0
  1787. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol +119 -0
  1788. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol +95 -0
  1789. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol +280 -0
  1790. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/README.adoc +27 -0
  1791. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/draft-ERC6909.sol +224 -0
  1792. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909ContentURI.sol +53 -0
  1793. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909Metadata.sol +77 -0
  1794. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC6909/extensions/draft-ERC6909TokenSupply.sol +35 -0
  1795. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol +430 -0
  1796. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol +135 -0
  1797. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol +28 -0
  1798. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc +69 -0
  1799. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol +26 -0
  1800. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol +176 -0
  1801. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol +164 -0
  1802. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol +37 -0
  1803. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol +26 -0
  1804. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol +58 -0
  1805. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol +47 -0
  1806. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol +102 -0
  1807. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol +29 -0
  1808. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol +27 -0
  1809. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol +24 -0
  1810. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol +50 -0
  1811. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol +139 -0
  1812. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/token/common/README.adoc +10 -0
  1813. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Address.sol +149 -0
  1814. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Arrays.sol +552 -0
  1815. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Base64.sol +119 -0
  1816. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Blockhash.sol +52 -0
  1817. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Bytes.sol +166 -0
  1818. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol +54 -0
  1819. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol +51 -0
  1820. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Calldata.sol +25 -0
  1821. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Comparators.sol +19 -0
  1822. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Context.sol +28 -0
  1823. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Create2.sol +92 -0
  1824. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Errors.sol +34 -0
  1825. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Memory.sol +44 -0
  1826. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Multicall.sol +37 -0
  1827. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Nonces.sol +46 -0
  1828. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol +74 -0
  1829. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Packing.sol +1656 -0
  1830. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Panic.sol +57 -0
  1831. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Pausable.sol +112 -0
  1832. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/README.adoc +145 -0
  1833. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol +87 -0
  1834. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol +61 -0
  1835. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol +122 -0
  1836. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol +155 -0
  1837. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol +143 -0
  1838. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/Strings.sol +507 -0
  1839. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol +183 -0
  1840. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol +213 -0
  1841. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol +160 -0
  1842. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol +31 -0
  1843. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol +514 -0
  1844. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol +99 -0
  1845. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol +408 -0
  1846. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/README.adoc +67 -0
  1847. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol +154 -0
  1848. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol +164 -0
  1849. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-ERC7739Utils.sol +206 -0
  1850. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/AbstractSigner.sol +22 -0
  1851. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913.sol +251 -0
  1852. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/MultiSignerERC7913Weighted.sol +207 -0
  1853. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerECDSA.sol +55 -0
  1854. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7702.sol +24 -0
  1855. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerERC7913.sol +62 -0
  1856. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerP256.sol +63 -0
  1857. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/SignerRSA.sol +64 -0
  1858. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/signers/draft-ERC7739.sol +98 -0
  1859. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913P256Verifier.sol +28 -0
  1860. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/cryptography/verifiers/ERC7913RSAVerifier.sol +22 -0
  1861. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/draft-InteroperableAddress.sol +234 -0
  1862. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol +25 -0
  1863. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol +124 -0
  1864. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol +25 -0
  1865. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/Math.sol +749 -0
  1866. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol +1162 -0
  1867. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol +68 -0
  1868. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol +60 -0
  1869. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol +833 -0
  1870. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol +140 -0
  1871. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol +156 -0
  1872. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol +1319 -0
  1873. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol +792 -0
  1874. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol +256 -0
  1875. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol +267 -0
  1876. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/types/Time.sol +133 -0
  1877. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol +86 -0
  1878. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/vendor/compound/LICENSE +11 -0
  1879. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/antora.yml +7 -0
  1880. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/config.js +21 -0
  1881. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg +97 -0
  1882. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg +47 -0
  1883. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg +99 -0
  1884. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png +0 -0
  1885. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png +0 -0
  1886. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png +0 -0
  1887. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png +0 -0
  1888. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png +0 -0
  1889. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png +0 -0
  1890. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png +0 -0
  1891. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png +0 -0
  1892. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png +0 -0
  1893. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png +0 -0
  1894. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png +0 -0
  1895. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc +29 -0
  1896. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc +288 -0
  1897. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/account-abstraction.adoc +100 -0
  1898. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/accounts.adoc +354 -0
  1899. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc +50 -0
  1900. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/eoa-delegation.adoc +143 -0
  1901. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc +118 -0
  1902. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc +71 -0
  1903. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc +67 -0
  1904. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc +214 -0
  1905. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc6909.adoc +47 -0
  1906. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc +58 -0
  1907. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc +51 -0
  1908. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc +13 -0
  1909. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc +239 -0
  1910. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc +70 -0
  1911. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/multisig.adoc +306 -0
  1912. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc +31 -0
  1913. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc +77 -0
  1914. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc +591 -0
  1915. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc +15 -0
  1916. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/contract.hbs +141 -0
  1917. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/helpers.js +46 -0
  1918. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/page.hbs +4 -0
  1919. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/templates/properties.js +88 -0
  1920. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/eslint.config.mjs +26 -0
  1921. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/foundry.toml +15 -0
  1922. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/fv-requirements.txt +4 -0
  1923. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/async-test-sanity.js +10 -0
  1924. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/common-contracts.js +69 -0
  1925. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/env-artifacts.js +29 -0
  1926. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js +45 -0
  1927. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/remappings.js +18 -0
  1928. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js +6 -0
  1929. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat/task-test-get-files.js +25 -0
  1930. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/hardhat.config.js +124 -0
  1931. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol +404 -0
  1932. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol +356 -0
  1933. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE +661 -0
  1934. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/erc4626-tests/README.md +116 -0
  1935. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.gitattributes +1 -0
  1936. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml +128 -0
  1937. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml +31 -0
  1938. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/CONTRIBUTING.md +193 -0
  1939. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/LICENSE-APACHE +203 -0
  1940. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/LICENSE-MIT +25 -0
  1941. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/README.md +266 -0
  1942. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/foundry.toml +23 -0
  1943. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/package.json +16 -0
  1944. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py +646 -0
  1945. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol +35 -0
  1946. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol +27 -0
  1947. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol +669 -0
  1948. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol +287 -0
  1949. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol +829 -0
  1950. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdError.sol +15 -0
  1951. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol +122 -0
  1952. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol +283 -0
  1953. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdMath.sol +43 -0
  1954. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol +473 -0
  1955. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol +333 -0
  1956. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol +283 -0
  1957. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol +209 -0
  1958. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol +33 -0
  1959. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol +2263 -0
  1960. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/console.sol +1560 -0
  1961. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol +4 -0
  1962. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC1155.sol +105 -0
  1963. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC165.sol +12 -0
  1964. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC20.sol +43 -0
  1965. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol +190 -0
  1966. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC721.sol +164 -0
  1967. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol +73 -0
  1968. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol +13937 -0
  1969. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol +141 -0
  1970. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol +227 -0
  1971. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol +618 -0
  1972. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol +120 -0
  1973. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol +49 -0
  1974. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol +202 -0
  1975. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol +488 -0
  1976. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol +110 -0
  1977. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol +49 -0
  1978. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol +342 -0
  1979. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol +18 -0
  1980. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScript.sol +10 -0
  1981. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScriptBase.sol +10 -0
  1982. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTest.sol +10 -0
  1983. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTestBase.sol +10 -0
  1984. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/broadcast.log.json +187 -0
  1985. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json +8 -0
  1986. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml +6 -0
  1987. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE +661 -0
  1988. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md +97 -0
  1989. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol +49 -0
  1990. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol +11 -0
  1991. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/logo.svg +15 -0
  1992. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/netlify.toml +3 -0
  1993. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/package.json +106 -0
  1994. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/remappings.txt +1 -0
  1995. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/renovate.json +4 -0
  1996. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/compare-layout.js +28 -0
  1997. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js +249 -0
  1998. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/coverage.sh +24 -0
  1999. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/extract-layout.js +39 -0
  2000. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/generation.sh +6 -0
  2001. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js +55 -0
  2002. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/checks/pragma-validity.js +45 -0
  2003. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/fetch-common-contracts.js +50 -0
  2004. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/gen-nav.js +81 -0
  2005. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/format-lines.js +16 -0
  2006. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js +5 -0
  2007. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/run.js +61 -0
  2008. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js +386 -0
  2009. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js +9 -0
  2010. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js +242 -0
  2011. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js +18 -0
  2012. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js +141 -0
  2013. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Enumerable.opts.js +53 -0
  2014. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js +463 -0
  2015. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js +469 -0
  2016. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js +187 -0
  2017. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js +11 -0
  2018. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js +92 -0
  2019. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js +3 -0
  2020. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js +48 -0
  2021. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js +136 -0
  2022. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js +15 -0
  2023. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js +119 -0
  2024. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js +127 -0
  2025. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js +77 -0
  2026. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js +57 -0
  2027. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js +80 -0
  2028. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js +35 -0
  2029. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js +30 -0
  2030. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/get-contracts-metadata.js +55 -0
  2031. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/helpers.js +7 -0
  2032. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/minimize-pragma.js +138 -0
  2033. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/prepack.sh +23 -0
  2034. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/prepare-docs.sh +26 -0
  2035. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/format-changelog.js +33 -0
  2036. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js +15 -0
  2037. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/update-comment.js +34 -0
  2038. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/version.sh +11 -0
  2039. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh +8 -0
  2040. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js +48 -0
  2041. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh +20 -0
  2042. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh +26 -0
  2043. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh +26 -0
  2044. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js +7 -0
  2045. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js +17 -0
  2046. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/start.sh +35 -0
  2047. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/release/workflow/state.js +112 -0
  2048. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js +45 -0
  2049. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/set-max-old-space-size.sh +10 -0
  2050. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solc-versions.js +15 -0
  2051. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solhint-custom/index.js +84 -0
  2052. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/solhint-custom/package.json +8 -0
  2053. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/update-docs-branch.js +65 -0
  2054. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/README.md +21 -0
  2055. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh +19 -0
  2056. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh +18 -0
  2057. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh +54 -0
  2058. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh +50 -0
  2059. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch +398 -0
  2060. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/slither.config.json +4 -0
  2061. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/solhint.config.js +29 -0
  2062. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/TESTING.md +3 -0
  2063. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js +874 -0
  2064. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/AccessControl.test.js +19 -0
  2065. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/Ownable.test.js +79 -0
  2066. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js +102 -0
  2067. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
  2068. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js +24 -0
  2069. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js +146 -0
  2070. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js +257 -0
  2071. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js +456 -0
  2072. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js +2489 -0
  2073. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js +112 -0
  2074. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/Account.behavior.js +144 -0
  2075. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/Account.test.js +48 -0
  2076. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountECDSA.test.js +52 -0
  2077. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7702.t.sol +103 -0
  2078. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7702.test.js +52 -0
  2079. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountERC7913.test.js +116 -0
  2080. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountMultiSigner.test.js +326 -0
  2081. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountMultiSignerWeighted.test.js +312 -0
  2082. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountP256.test.js +58 -0
  2083. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/AccountRSA.test.js +58 -0
  2084. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
  2085. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.behavior.js +563 -0
  2086. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579.test.js +60 -0
  2087. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
  2088. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/extensions/ERC7821.behavior.js +145 -0
  2089. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/EIP7702Utils.test.js +53 -0
  2090. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js +289 -0
  2091. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
  2092. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js +399 -0
  2093. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi +1 -0
  2094. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode +0 -0
  2095. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint080.abi +1 -0
  2096. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/EntryPoint080.bytecode +0 -0
  2097. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi +1 -0
  2098. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode +0 -0
  2099. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator080.abi +1 -0
  2100. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/bin/SenderCreator080.bytecode +0 -0
  2101. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js +87 -0
  2102. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js +65 -0
  2103. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js +70 -0
  2104. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/Governor.t.sol +59 -0
  2105. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/Governor.test.js +980 -0
  2106. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/TimelockController.test.js +1279 -0
  2107. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
  2108. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
  2109. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js +131 -0
  2110. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
  2111. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js +185 -0
  2112. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
  2113. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
  2114. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js +155 -0
  2115. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
  2116. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
  2117. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
  2118. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js +448 -0
  2119. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js +504 -0
  2120. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js +165 -0
  2121. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
  2122. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js +245 -0
  2123. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js +28 -0
  2124. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js +325 -0
  2125. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js +102 -0
  2126. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js +152 -0
  2127. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/access-manager.js +85 -0
  2128. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/account.js +14 -0
  2129. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/chains.js +56 -0
  2130. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/constants.js +7 -0
  2131. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/deploy.js +14 -0
  2132. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/eip712-types.js +61 -0
  2133. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/eip712.js +45 -0
  2134. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/enums.js +14 -0
  2135. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc4337.js +217 -0
  2136. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc7579.js +58 -0
  2137. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/erc7739.js +118 -0
  2138. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/governance.js +217 -0
  2139. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/iterate.js +41 -0
  2140. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/math.js +33 -0
  2141. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/methods.js +14 -0
  2142. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/precompiles.js +12 -0
  2143. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/random.js +24 -0
  2144. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/signers.js +184 -0
  2145. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/storage.js +48 -0
  2146. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/strings.js +5 -0
  2147. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/time.js +33 -0
  2148. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/helpers/txpool.js +29 -0
  2149. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js +133 -0
  2150. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol +279 -0
  2151. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js +384 -0
  2152. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js +160 -0
  2153. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.t.sol +91 -0
  2154. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Clones.test.js +177 -0
  2155. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js +23 -0
  2156. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
  2157. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js +185 -0
  2158. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js +141 -0
  2159. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js +55 -0
  2160. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js +82 -0
  2161. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +357 -0
  2162. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js +28 -0
  2163. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js +216 -0
  2164. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js +120 -0
  2165. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/sanity.test.js +27 -0
  2166. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js +763 -0
  2167. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js +213 -0
  2168. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js +66 -0
  2169. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js +105 -0
  2170. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js +119 -0
  2171. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +70 -0
  2172. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js +56 -0
  2173. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
  2174. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js +269 -0
  2175. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js +199 -0
  2176. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js +370 -0
  2177. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js +105 -0
  2178. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js +55 -0
  2179. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js +164 -0
  2180. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js +129 -0
  2181. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
  2182. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js +546 -0
  2183. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js +203 -0
  2184. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
  2185. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js +888 -0
  2186. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
  2187. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
  2188. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js +463 -0
  2189. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.behavior.js +216 -0
  2190. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/ERC6909.test.js +104 -0
  2191. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
  2192. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
  2193. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
  2194. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js +946 -0
  2195. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js +23 -0
  2196. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js +28 -0
  2197. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js +77 -0
  2198. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol +181 -0
  2199. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js +228 -0
  2200. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js +81 -0
  2201. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js +57 -0
  2202. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js +121 -0
  2203. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js +194 -0
  2204. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
  2205. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js +20 -0
  2206. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
  2207. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js +152 -0
  2208. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Address.test.js +281 -0
  2209. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Arrays.t.sol +31 -0
  2210. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Arrays.test.js +227 -0
  2211. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Base64.t.sol +34 -0
  2212. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Base64.test.js +59 -0
  2213. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Blockhash.t.sol +101 -0
  2214. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Blockhash.test.js +59 -0
  2215. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Bytes.t.sol +74 -0
  2216. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Bytes.test.js +212 -0
  2217. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/CAIP.test.js +56 -0
  2218. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Calldata.test.js +22 -0
  2219. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Context.behavior.js +48 -0
  2220. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Context.test.js +18 -0
  2221. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Create2.t.sol +17 -0
  2222. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Create2.test.js +190 -0
  2223. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Memory.t.sol +21 -0
  2224. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Memory.test.js +39 -0
  2225. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Multicall.test.js +72 -0
  2226. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js +189 -0
  2227. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Nonces.test.js +16 -0
  2228. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js +17 -0
  2229. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Packing.t.sol +993 -0
  2230. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Packing.test.js +70 -0
  2231. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Panic.test.js +37 -0
  2232. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Pausable.test.js +90 -0
  2233. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js +50 -0
  2234. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol +109 -0
  2235. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js +64 -0
  2236. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol +248 -0
  2237. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js +58 -0
  2238. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js +73 -0
  2239. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Strings.t.sol +50 -0
  2240. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/Strings.test.js +360 -0
  2241. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js +59 -0
  2242. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js +239 -0
  2243. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js +105 -0
  2244. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC1271.behavior.js +111 -0
  2245. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739.test.js +42 -0
  2246. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ERC7739Utils.test.js +203 -0
  2247. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js +213 -0
  2248. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
  2249. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js +97 -0
  2250. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol +65 -0
  2251. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js +182 -0
  2252. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js +17 -0
  2253. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js +102 -0
  2254. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
  2255. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js +422 -0
  2256. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
  2257. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.t.sol +99 -0
  2258. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/draft-InteroperableAddress.test.js +170 -0
  2259. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js +18 -0
  2260. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js +245 -0
  2261. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js +166 -0
  2262. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/Math.t.sol +349 -0
  2263. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/Math.test.js +713 -0
  2264. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js +159 -0
  2265. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol +80 -0
  2266. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js +53 -0
  2267. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js +149 -0
  2268. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol +440 -0
  2269. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js +147 -0
  2270. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js +83 -0
  2271. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js +102 -0
  2272. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js +214 -0
  2273. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js +83 -0
  2274. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js +175 -0
  2275. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js +66 -0
  2276. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol +74 -0
  2277. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js +113 -0
  2278. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js +180 -0
  2279. package/lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/test/utils/types/Time.test.js +135 -0
  2280. package/lib/openzeppelin-contracts-upgradeable/package.json +60 -47
  2281. package/lib/openzeppelin-contracts-upgradeable/remappings.txt +2 -0
  2282. package/lib/openzeppelin-contracts-upgradeable/renovate.json +2 -9
  2283. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/compare-layout.js +28 -0
  2284. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/compareGasReports.js +130 -92
  2285. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/coverage.sh +24 -0
  2286. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/extract-layout.js +39 -0
  2287. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/inheritance-ordering.js +28 -23
  2288. package/lib/openzeppelin-contracts-upgradeable/scripts/checks/pragma-validity.js +45 -0
  2289. package/lib/openzeppelin-contracts-upgradeable/scripts/fetch-common-contracts.js +50 -0
  2290. package/lib/openzeppelin-contracts-upgradeable/scripts/gen-nav.js +62 -22
  2291. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/format-lines.js +4 -4
  2292. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/helpers/sanitize.js +5 -0
  2293. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/run.js +38 -23
  2294. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Arrays.js +386 -0
  2295. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Arrays.opts.js +9 -0
  2296. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.js +67 -128
  2297. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.opts.js +18 -0
  2298. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Checkpoints.t.js +141 -0
  2299. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Enumerable.opts.js +53 -0
  2300. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableMap.js +269 -84
  2301. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableSet.js +252 -36
  2302. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/MerkleProof.js +187 -0
  2303. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/MerkleProof.opts.js +11 -0
  2304. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.js +92 -0
  2305. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.opts.js +3 -0
  2306. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Packing.t.js +48 -0
  2307. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SafeCast.js +50 -82
  2308. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/Slot.opts.js +15 -0
  2309. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SlotDerivation.js +119 -0
  2310. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SlotDerivation.t.js +127 -0
  2311. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/StorageSlot.js +77 -0
  2312. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/StorageSlotMock.js +57 -0
  2313. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/TransientSlot.js +80 -0
  2314. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/TransientSlotMock.js +35 -0
  2315. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/conversion.js +18 -18
  2316. package/lib/openzeppelin-contracts-upgradeable/scripts/get-contracts-metadata.js +55 -0
  2317. package/lib/openzeppelin-contracts-upgradeable/scripts/helpers.js +4 -20
  2318. package/lib/openzeppelin-contracts-upgradeable/scripts/minimize-pragma.js +138 -0
  2319. package/lib/openzeppelin-contracts-upgradeable/scripts/prepack.sh +14 -3
  2320. package/lib/openzeppelin-contracts-upgradeable/scripts/prepare-docs.sh +12 -1
  2321. package/lib/openzeppelin-contracts-upgradeable/scripts/release/format-changelog.js +33 -0
  2322. package/lib/openzeppelin-contracts-upgradeable/scripts/release/synchronize-versions.js +6 -7
  2323. package/lib/openzeppelin-contracts-upgradeable/scripts/release/update-comment.js +2 -4
  2324. package/lib/openzeppelin-contracts-upgradeable/scripts/release/version.sh +4 -2
  2325. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/exit-prerelease.sh +8 -0
  2326. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/github-release.js +48 -0
  2327. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/integrity-check.sh +20 -0
  2328. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/pack.sh +26 -0
  2329. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/publish.sh +26 -0
  2330. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/rerun.js +7 -0
  2331. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/set-changesets-pr-title.js +17 -0
  2332. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/start.sh +35 -0
  2333. package/lib/openzeppelin-contracts-upgradeable/scripts/release/workflow/state.js +112 -0
  2334. package/lib/openzeppelin-contracts-upgradeable/scripts/remove-ignored-artifacts.js +4 -4
  2335. package/lib/openzeppelin-contracts-upgradeable/scripts/set-max-old-space-size.sh +10 -0
  2336. package/lib/openzeppelin-contracts-upgradeable/scripts/solc-versions.js +15 -0
  2337. package/lib/openzeppelin-contracts-upgradeable/scripts/solhint-custom/index.js +84 -0
  2338. package/lib/openzeppelin-contracts-upgradeable/scripts/solhint-custom/package.json +8 -0
  2339. package/lib/openzeppelin-contracts-upgradeable/scripts/update-docs-branch.js +15 -5
  2340. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/README.md +21 -0
  2341. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch-apply.sh +19 -0
  2342. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch-save.sh +18 -0
  2343. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/transpile-onto.sh +21 -5
  2344. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/transpile.sh +24 -8
  2345. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/upgradeable.patch +398 -0
  2346. package/lib/openzeppelin-contracts-upgradeable/slither.config.json +3 -4
  2347. package/lib/openzeppelin-contracts-upgradeable/solhint.config.js +29 -0
  2348. package/lib/openzeppelin-contracts-upgradeable/test/TESTING.md +1 -1
  2349. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControl.behavior.js +756 -98
  2350. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControl.test.js +13 -7
  2351. package/lib/openzeppelin-contracts-upgradeable/test/access/Ownable.test.js +50 -28
  2352. package/lib/openzeppelin-contracts-upgradeable/test/access/Ownable2Step.test.js +77 -32
  2353. package/lib/openzeppelin-contracts-upgradeable/test/access/extensions/AccessControlDefaultAdminRules.test.js +32 -0
  2354. package/lib/openzeppelin-contracts-upgradeable/test/access/extensions/AccessControlEnumerable.test.js +24 -0
  2355. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManaged.test.js +146 -0
  2356. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.behavior.js +257 -0
  2357. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.predicate.js +456 -0
  2358. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AccessManager.test.js +2489 -0
  2359. package/lib/openzeppelin-contracts-upgradeable/test/access/manager/AuthorityUtils.test.js +112 -0
  2360. package/lib/openzeppelin-contracts-upgradeable/test/account/Account.behavior.js +144 -0
  2361. package/lib/openzeppelin-contracts-upgradeable/test/account/Account.test.js +48 -0
  2362. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountECDSA.test.js +52 -0
  2363. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7702.t.sol +103 -0
  2364. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7702.test.js +52 -0
  2365. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountERC7913.test.js +116 -0
  2366. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountMultiSigner.test.js +326 -0
  2367. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountMultiSignerWeighted.test.js +312 -0
  2368. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountP256.test.js +58 -0
  2369. package/lib/openzeppelin-contracts-upgradeable/test/account/AccountRSA.test.js +58 -0
  2370. package/lib/openzeppelin-contracts-upgradeable/test/account/examples/AccountERC7702WithModulesMock.test.js +99 -0
  2371. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579.behavior.js +563 -0
  2372. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579.test.js +60 -0
  2373. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/AccountERC7579Hooked.test.js +60 -0
  2374. package/lib/openzeppelin-contracts-upgradeable/test/account/extensions/ERC7821.behavior.js +145 -0
  2375. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/EIP7702Utils.test.js +53 -0
  2376. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC4337Utils.test.js +289 -0
  2377. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC7579Utils.t.sol +426 -0
  2378. package/lib/openzeppelin-contracts-upgradeable/test/account/utils/draft-ERC7579Utils.test.js +399 -0
  2379. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint070.abi +1 -0
  2380. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint070.bytecode +0 -0
  2381. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint080.abi +1 -0
  2382. package/lib/openzeppelin-contracts-upgradeable/test/bin/EntryPoint080.bytecode +0 -0
  2383. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator070.abi +1 -0
  2384. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator070.bytecode +0 -0
  2385. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator080.abi +1 -0
  2386. package/lib/openzeppelin-contracts-upgradeable/test/bin/SenderCreator080.bytecode +0 -0
  2387. package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWallet.behavior.js +59 -46
  2388. package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWallet.test.js +35 -37
  2389. package/lib/openzeppelin-contracts-upgradeable/test/finance/VestingWalletCliff.test.js +70 -0
  2390. package/lib/openzeppelin-contracts-upgradeable/test/governance/Governor.t.sol +59 -0
  2391. package/lib/openzeppelin-contracts-upgradeable/test/governance/Governor.test.js +938 -590
  2392. package/lib/openzeppelin-contracts-upgradeable/test/governance/TimelockController.test.js +910 -765
  2393. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorCountingFractional.test.js +248 -0
  2394. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorCountingOverridable.test.js +346 -0
  2395. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorERC721.test.js +127 -100
  2396. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorNoncesKeyed.test.js +244 -0
  2397. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorPreventLateQuorum.test.js +181 -173
  2398. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorProposalGuardian.test.js +132 -0
  2399. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSequentialProposalId.test.js +202 -0
  2400. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorStorage.test.js +155 -0
  2401. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSuperQuorum.test.js +168 -0
  2402. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorSuperQuorumGreaterThanQuorum.t.sol +83 -0
  2403. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockAccess.test.js +864 -0
  2404. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockCompound.test.js +419 -339
  2405. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorTimelockControl.test.js +468 -384
  2406. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorVotesQuorumFraction.test.js +161 -133
  2407. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorVotesSuperQuorumFraction.test.js +160 -0
  2408. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorWithParams.test.js +234 -155
  2409. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/ERC6372.behavior.js +28 -0
  2410. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/Votes.behavior.js +254 -273
  2411. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/Votes.test.js +89 -48
  2412. package/lib/openzeppelin-contracts-upgradeable/test/governance/utils/VotesExtended.test.js +152 -0
  2413. package/lib/openzeppelin-contracts-upgradeable/test/helpers/access-manager.js +85 -0
  2414. package/lib/openzeppelin-contracts-upgradeable/test/helpers/account.js +14 -0
  2415. package/lib/openzeppelin-contracts-upgradeable/test/helpers/chains.js +56 -0
  2416. package/lib/openzeppelin-contracts-upgradeable/test/helpers/constants.js +7 -0
  2417. package/lib/openzeppelin-contracts-upgradeable/test/helpers/deploy.js +14 -0
  2418. package/lib/openzeppelin-contracts-upgradeable/test/helpers/eip712-types.js +61 -0
  2419. package/lib/openzeppelin-contracts-upgradeable/test/helpers/eip712.js +41 -26
  2420. package/lib/openzeppelin-contracts-upgradeable/test/helpers/enums.js +9 -24
  2421. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc4337.js +217 -0
  2422. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc7579.js +58 -0
  2423. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc7739.js +118 -0
  2424. package/lib/openzeppelin-contracts-upgradeable/test/helpers/governance.js +194 -188
  2425. package/lib/openzeppelin-contracts-upgradeable/test/helpers/iterate.js +41 -0
  2426. package/lib/openzeppelin-contracts-upgradeable/test/helpers/math.js +33 -0
  2427. package/lib/openzeppelin-contracts-upgradeable/test/helpers/methods.js +14 -0
  2428. package/lib/openzeppelin-contracts-upgradeable/test/helpers/precompiles.js +12 -0
  2429. package/lib/openzeppelin-contracts-upgradeable/test/helpers/random.js +24 -0
  2430. package/lib/openzeppelin-contracts-upgradeable/test/helpers/signers.js +184 -0
  2431. package/lib/openzeppelin-contracts-upgradeable/test/helpers/storage.js +48 -0
  2432. package/lib/openzeppelin-contracts-upgradeable/test/helpers/strings.js +5 -0
  2433. package/lib/openzeppelin-contracts-upgradeable/test/helpers/time.js +33 -0
  2434. package/lib/openzeppelin-contracts-upgradeable/test/helpers/txpool.js +9 -20
  2435. package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Context.test.js +95 -71
  2436. package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Forwarder.t.sol +279 -0
  2437. package/lib/openzeppelin-contracts-upgradeable/test/metatx/ERC2771Forwarder.test.js +384 -0
  2438. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.behaviour.js +60 -50
  2439. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.t.sol +91 -0
  2440. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Clones.test.js +164 -56
  2441. package/lib/openzeppelin-contracts-upgradeable/test/proxy/ERC1967/ERC1967Proxy.test.js +17 -7
  2442. package/lib/openzeppelin-contracts-upgradeable/test/proxy/ERC1967/ERC1967Utils.test.js +162 -0
  2443. package/lib/openzeppelin-contracts-upgradeable/test/proxy/Proxy.behaviour.js +59 -98
  2444. package/lib/openzeppelin-contracts-upgradeable/test/proxy/beacon/BeaconProxy.test.js +98 -113
  2445. package/lib/openzeppelin-contracts-upgradeable/test/proxy/beacon/UpgradeableBeacon.test.js +34 -29
  2446. package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/ProxyAdmin.test.js +45 -88
  2447. package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js +209 -283
  2448. package/lib/openzeppelin-contracts-upgradeable/test/proxy/transparent/TransparentUpgradeableProxy.test.js +20 -7
  2449. package/lib/openzeppelin-contracts-upgradeable/test/proxy/utils/Initializable.test.js +94 -96
  2450. package/lib/openzeppelin-contracts-upgradeable/test/proxy/utils/UUPSUpgradeable.test.js +94 -59
  2451. package/lib/openzeppelin-contracts-upgradeable/test/sanity.test.js +27 -0
  2452. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/ERC1155.behavior.js +530 -541
  2453. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/ERC1155.test.js +101 -152
  2454. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Burnable.test.js +35 -36
  2455. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Pausable.test.js +54 -57
  2456. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155Supply.test.js +59 -51
  2457. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/extensions/ERC1155URIStorage.test.js +37 -33
  2458. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/utils/ERC1155Holder.test.js +40 -46
  2459. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/utils/ERC1155Utils.test.js +299 -0
  2460. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/ERC20.behavior.js +142 -206
  2461. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/ERC20.test.js +133 -243
  2462. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC1363.test.js +370 -0
  2463. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Burnable.test.js +96 -10
  2464. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Capped.test.js +43 -15
  2465. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20FlashMint.test.js +102 -82
  2466. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Pausable.test.js +59 -64
  2467. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Permit.test.js +109 -0
  2468. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Votes.test.js +490 -462
  2469. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Wrapper.test.js +133 -120
  2470. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC4626.t.sol +41 -0
  2471. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC4626.test.js +802 -536
  2472. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20Bridgeable.test.js +89 -0
  2473. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js +142 -0
  2474. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/utils/SafeERC20.test.js +387 -179
  2475. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/ERC6909.behavior.js +216 -0
  2476. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/ERC6909.test.js +104 -0
  2477. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909ContentURI.test.js +49 -0
  2478. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909Metadata.test.js +58 -0
  2479. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC6909/extensions/ERC6909TokenSupply.test.js +53 -0
  2480. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721.behavior.js +488 -479
  2481. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721.test.js +16 -11
  2482. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/ERC721Enumerable.test.js +16 -8
  2483. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Burnable.test.js +43 -44
  2484. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Consecutive.t.sol +80 -19
  2485. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Consecutive.test.js +181 -165
  2486. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Pausable.test.js +34 -51
  2487. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Royalty.test.js +41 -24
  2488. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721URIStorage.test.js +69 -44
  2489. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Votes.test.js +187 -167
  2490. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/extensions/ERC721Wrapper.test.js +201 -0
  2491. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/utils/ERC721Holder.test.js +12 -16
  2492. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/utils/ERC721Utils.test.js +94 -0
  2493. package/lib/openzeppelin-contracts-upgradeable/test/token/common/ERC2981.behavior.js +80 -88
  2494. package/lib/openzeppelin-contracts-upgradeable/test/utils/Address.test.js +160 -261
  2495. package/lib/openzeppelin-contracts-upgradeable/test/utils/Arrays.t.sol +31 -0
  2496. package/lib/openzeppelin-contracts-upgradeable/test/utils/Arrays.test.js +217 -95
  2497. package/lib/openzeppelin-contracts-upgradeable/test/utils/Base64.t.sol +34 -0
  2498. package/lib/openzeppelin-contracts-upgradeable/test/utils/Base64.test.js +48 -22
  2499. package/lib/openzeppelin-contracts-upgradeable/test/utils/Blockhash.t.sol +101 -0
  2500. package/lib/openzeppelin-contracts-upgradeable/test/utils/Blockhash.test.js +59 -0
  2501. package/lib/openzeppelin-contracts-upgradeable/test/utils/Bytes.t.sol +74 -0
  2502. package/lib/openzeppelin-contracts-upgradeable/test/utils/Bytes.test.js +212 -0
  2503. package/lib/openzeppelin-contracts-upgradeable/test/utils/CAIP.test.js +56 -0
  2504. package/lib/openzeppelin-contracts-upgradeable/test/utils/Calldata.test.js +22 -0
  2505. package/lib/openzeppelin-contracts-upgradeable/test/utils/Context.behavior.js +26 -20
  2506. package/lib/openzeppelin-contracts-upgradeable/test/utils/Context.test.js +10 -9
  2507. package/lib/openzeppelin-contracts-upgradeable/test/utils/Create2.t.sol +17 -0
  2508. package/lib/openzeppelin-contracts-upgradeable/test/utils/Create2.test.js +147 -49
  2509. package/lib/openzeppelin-contracts-upgradeable/test/utils/Memory.t.sol +21 -0
  2510. package/lib/openzeppelin-contracts-upgradeable/test/utils/Memory.test.js +39 -0
  2511. package/lib/openzeppelin-contracts-upgradeable/test/utils/Multicall.test.js +50 -35
  2512. package/lib/openzeppelin-contracts-upgradeable/test/utils/Nonces.behavior.js +189 -0
  2513. package/lib/openzeppelin-contracts-upgradeable/test/utils/Nonces.test.js +16 -0
  2514. package/lib/openzeppelin-contracts-upgradeable/test/utils/NoncesKeyed.test.js +17 -0
  2515. package/lib/openzeppelin-contracts-upgradeable/test/utils/Packing.t.sol +993 -0
  2516. package/lib/openzeppelin-contracts-upgradeable/test/utils/Packing.test.js +70 -0
  2517. package/lib/openzeppelin-contracts-upgradeable/test/utils/Panic.test.js +37 -0
  2518. package/lib/openzeppelin-contracts-upgradeable/test/utils/Pausable.test.js +90 -0
  2519. package/lib/openzeppelin-contracts-upgradeable/test/utils/ReentrancyGuard.test.js +50 -0
  2520. package/lib/openzeppelin-contracts-upgradeable/test/utils/ShortStrings.t.sol +109 -0
  2521. package/lib/openzeppelin-contracts-upgradeable/test/utils/ShortStrings.test.js +64 -0
  2522. package/lib/openzeppelin-contracts-upgradeable/test/utils/SlotDerivation.t.sol +248 -0
  2523. package/lib/openzeppelin-contracts-upgradeable/test/utils/SlotDerivation.test.js +58 -0
  2524. package/lib/openzeppelin-contracts-upgradeable/test/utils/StorageSlot.test.js +55 -92
  2525. package/lib/openzeppelin-contracts-upgradeable/test/utils/Strings.t.sol +50 -0
  2526. package/lib/openzeppelin-contracts-upgradeable/test/utils/Strings.test.js +323 -49
  2527. package/lib/openzeppelin-contracts-upgradeable/test/utils/TransientSlot.test.js +59 -0
  2528. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ECDSA.test.js +167 -132
  2529. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/EIP712.test.js +79 -52
  2530. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC1271.behavior.js +111 -0
  2531. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC7739.test.js +42 -0
  2532. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ERC7739Utils.test.js +203 -0
  2533. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MerkleProof.test.js +210 -176
  2534. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MessageHashUtils.t.sol +33 -0
  2535. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/MessageHashUtils.test.js +97 -0
  2536. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/P256.t.sol +65 -0
  2537. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/P256.test.js +182 -0
  2538. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/RSA.helper.js +17 -0
  2539. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/RSA.test.js +102 -0
  2540. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/SigVer15_186-3.rsp +3850 -0
  2541. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/SignatureChecker.test.js +397 -56
  2542. package/lib/openzeppelin-contracts-upgradeable/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json +3719 -0
  2543. package/lib/openzeppelin-contracts-upgradeable/test/utils/draft-InteroperableAddress.t.sol +99 -0
  2544. package/lib/openzeppelin-contracts-upgradeable/test/utils/draft-InteroperableAddress.test.js +170 -0
  2545. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165.test.js +11 -6
  2546. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165Checker.test.js +84 -142
  2547. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/SupportsInterface.behavior.js +109 -90
  2548. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/Math.t.sol +255 -24
  2549. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/Math.test.js +616 -215
  2550. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SafeCast.test.js +84 -89
  2551. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedMath.t.sol +80 -0
  2552. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedMath.test.js +25 -65
  2553. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/BitMap.test.js +83 -79
  2554. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Checkpoints.t.sol +440 -0
  2555. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Checkpoints.test.js +147 -0
  2556. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/CircularBuffer.test.js +83 -0
  2557. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/DoubleEndedQueue.test.js +47 -41
  2558. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableMap.behavior.js +122 -89
  2559. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableMap.test.js +70 -73
  2560. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableSet.behavior.js +105 -61
  2561. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/EnumerableSet.test.js +53 -33
  2562. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Heap.t.sol +74 -0
  2563. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/Heap.test.js +113 -0
  2564. package/lib/openzeppelin-contracts-upgradeable/test/utils/structs/MerkleTree.test.js +180 -0
  2565. package/lib/openzeppelin-contracts-upgradeable/test/utils/types/Time.test.js +135 -0
  2566. package/package.json +9 -23
  2567. package/remappings.txt +5 -0
  2568. package/script/UpdateMarket.s.sol +56 -0
  2569. package/scripts/AddAdminToLand.s.sol +29 -0
  2570. package/scripts/ClaimMerkleRoot.s.sol +34 -0
  2571. package/scripts/CreateLand.s.sol +28 -0
  2572. package/scripts/CreateMarkets.s.sol +71 -0
  2573. package/scripts/DeployContracts.s.sol +94 -0
  2574. package/scripts/DeployMerkleRewardsDistributor.s.sol +27 -0
  2575. package/scripts/DeployToken.s.sol +17 -0
  2576. package/scripts/DeployUSDT.s.sol +24 -0
  2577. package/scripts/MintTokens.s.sol +21 -0
  2578. package/scripts/PublishMerkleRoot.s.sol +50 -0
  2579. package/scripts/ResolveMarket.s.sol +23 -0
  2580. package/scripts/TradeMarket.s.sol +28 -0
  2581. package/scripts/UpdateMarket.s.sol +55 -0
  2582. package/scripts/copy-abis.js +57 -0
  2583. package/src/Application.js +18 -0
  2584. package/src/interfaces/index.js +16 -15
  2585. package/src/models/PredictionMarketV3Contract.js +5 -1
  2586. package/src/models/PredictionMarketV3ControllerContract.js +2 -2
  2587. package/src/models/PredictionMarketV3ManagerContract.js +4 -0
  2588. package/src/models/PredictionMarketV3PlusContract.js +210 -0
  2589. package/src/models/index.js +2 -0
  2590. package/test/PredictionMarket.t.sol +923 -0
  2591. package/test/PredictionMarketManager.t.sol +909 -0
  2592. package/test/UpdateTest.t.sol +55 -0
  2593. package/test/WhaleTest.t.sol +188 -0
  2594. package/build/contracts/AccessControl.json +0 -1
  2595. package/build/contracts/Address.json +0 -1
  2596. package/build/contracts/BalanceHolder_ERC20.json +0 -1
  2597. package/build/contracts/CeilDiv.json +0 -1
  2598. package/build/contracts/Clones.json +0 -1
  2599. package/build/contracts/Context.json +0 -1
  2600. package/build/contracts/ERC165.json +0 -1
  2601. package/build/contracts/ERC20.json +0 -1
  2602. package/build/contracts/ERC20Burnable.json +0 -1
  2603. package/build/contracts/ERC20Pausable.json +0 -1
  2604. package/build/contracts/FantasyERC20.json +0 -1
  2605. package/build/contracts/IAccessControl.json +0 -1
  2606. package/build/contracts/IBalanceHolder_ERC20.json +0 -1
  2607. package/build/contracts/IERC165.json +0 -1
  2608. package/build/contracts/IERC20.json +0 -1
  2609. package/build/contracts/IERC20Metadata.json +0 -1
  2610. package/build/contracts/IERC721.json +0 -1
  2611. package/build/contracts/IERC721Enumerable.json +0 -1
  2612. package/build/contracts/IERC721Metadata.json +0 -1
  2613. package/build/contracts/IFantasyERC20.json +0 -1
  2614. package/build/contracts/IPredictionMarketV3Factory.json +0 -1
  2615. package/build/contracts/IPredictionMarketV3Manager.json +0 -1
  2616. package/build/contracts/IRealityETH_ERC20.json +0 -1
  2617. package/build/contracts/IRealityETH_IERC20.json +0 -1
  2618. package/build/contracts/IWETH.json +0 -1
  2619. package/build/contracts/LandFactory.json +0 -1
  2620. package/build/contracts/Ownable.json +0 -1
  2621. package/build/contracts/Pausable.json +0 -1
  2622. package/build/contracts/PredictionMarketV3Claimer.json +0 -1
  2623. package/build/contracts/PredictionMarketV3Controller.json +0 -1
  2624. package/build/contracts/PredictionMarketV3Factory.json +0 -1
  2625. package/build/contracts/PredictionMarketV3Manager.json +0 -1
  2626. package/build/contracts/PredictionMarketV3Querier.json +0 -1
  2627. package/build/contracts/Proxy.json +0 -1
  2628. package/build/contracts/RealityETH_ERC20_Factory.json +0 -1
  2629. package/build/contracts/RealityETH_ERC20_v3_0.json +0 -1
  2630. package/build/contracts/RealityETH_ERC20_v3_0_.json +0 -1
  2631. package/build/contracts/ReentrancyGuard.json +0 -1
  2632. package/build/contracts/SafeERC20.json +0 -1
  2633. package/build/contracts/StorageSlot.json +0 -1
  2634. package/build/contracts/TWProxy.json +0 -1
  2635. package/build/contracts/USDCERC20.json +0 -1
  2636. package/build/contracts/Voting.json +0 -1
  2637. package/build/contracts/test.json +0 -1
  2638. package/cache/solidity-files-cache.json +0 -1
  2639. package/cache/zksync-solidity-files-cache.json +0 -1
  2640. package/cleanContracts.js +0 -22
  2641. package/contracts/IPredictionMarketV3.sol +0 -207
  2642. package/contracts/Migrations.sol +0 -24
  2643. package/contracts/PredictionMarketV3.sol +0 -1332
  2644. package/contracts/RealityETH_ERC20_v3_0.sol +0 -8
  2645. package/contracts/TWProxy.sol +0 -42
  2646. package/contracts/USDCERC20.sol +0 -12
  2647. package/contracts/WETH9.sol +0 -62
  2648. package/lib/openzeppelin-contracts/.changeset/new-ways-own.md +0 -5
  2649. package/lib/openzeppelin-contracts/.eslintrc +0 -62
  2650. package/lib/openzeppelin-contracts/.gitattributes +0 -1
  2651. package/lib/openzeppelin-contracts/.github/workflows/changelog.yml +0 -28
  2652. package/lib/openzeppelin-contracts/.solhint.json +0 -14
  2653. package/lib/openzeppelin-contracts/audit/2017-03.md +0 -292
  2654. package/lib/openzeppelin-contracts/certora/applyHarness.patch +0 -101
  2655. package/lib/openzeppelin-contracts/certora/harnesses/ERC20VotesHarness.sol +0 -28
  2656. package/lib/openzeppelin-contracts/certora/harnesses/WizardControlFirstPriority.sol +0 -150
  2657. package/lib/openzeppelin-contracts/certora/harnesses/WizardFirstTry.sol +0 -141
  2658. package/lib/openzeppelin-contracts/certora/munged/.gitignore +0 -2
  2659. package/lib/openzeppelin-contracts/certora/scripts/Governor.sh +0 -10
  2660. package/lib/openzeppelin-contracts/certora/scripts/GovernorCountingSimple-counting.sh +0 -10
  2661. package/lib/openzeppelin-contracts/certora/scripts/WizardControlFirstPriority.sh +0 -12
  2662. package/lib/openzeppelin-contracts/certora/scripts/WizardFirstTry.sh +0 -10
  2663. package/lib/openzeppelin-contracts/certora/scripts/sanity.sh +0 -14
  2664. package/lib/openzeppelin-contracts/certora/scripts/verifyAll.sh +0 -39
  2665. package/lib/openzeppelin-contracts/certora/specs/GovernorBase.spec +0 -333
  2666. package/lib/openzeppelin-contracts/certora/specs/GovernorCountingSimple.spec +0 -221
  2667. package/lib/openzeppelin-contracts/certora/specs/RulesInProgress.spec +0 -139
  2668. package/lib/openzeppelin-contracts/certora/specs/sanity.spec +0 -14
  2669. package/lib/openzeppelin-contracts/contracts/access/AccessControlCrossChain.sol +0 -45
  2670. package/lib/openzeppelin-contracts/contracts/access/AccessControlEnumerable.sol +0 -64
  2671. package/lib/openzeppelin-contracts/contracts/access/IAccessControlEnumerable.sol +0 -31
  2672. package/lib/openzeppelin-contracts/contracts/crosschain/CrossChainEnabled.sol +0 -54
  2673. package/lib/openzeppelin-contracts/contracts/crosschain/README.adoc +0 -34
  2674. package/lib/openzeppelin-contracts/contracts/crosschain/amb/CrossChainEnabledAMB.sol +0 -49
  2675. package/lib/openzeppelin-contracts/contracts/crosschain/amb/LibAMB.sol +0 -35
  2676. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1.sol +0 -44
  2677. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL2.sol +0 -40
  2678. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/LibArbitrumL1.sol +0 -42
  2679. package/lib/openzeppelin-contracts/contracts/crosschain/arbitrum/LibArbitrumL2.sol +0 -45
  2680. package/lib/openzeppelin-contracts/contracts/crosschain/errors.sol +0 -7
  2681. package/lib/openzeppelin-contracts/contracts/crosschain/optimism/CrossChainEnabledOptimism.sol +0 -41
  2682. package/lib/openzeppelin-contracts/contracts/crosschain/optimism/LibOptimism.sol +0 -36
  2683. package/lib/openzeppelin-contracts/contracts/crosschain/polygon/CrossChainEnabledPolygonChild.sol +0 -72
  2684. package/lib/openzeppelin-contracts/contracts/finance/PaymentSplitter.sol +0 -214
  2685. package/lib/openzeppelin-contracts/contracts/governance/compatibility/GovernorCompatibilityBravo.sol +0 -285
  2686. package/lib/openzeppelin-contracts/contracts/governance/compatibility/IGovernorCompatibilityBravo.sol +0 -114
  2687. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorProposalThreshold.sol +0 -23
  2688. package/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesComp.sol +0 -31
  2689. package/lib/openzeppelin-contracts/contracts/governance/extensions/IGovernorTimelock.sol +0 -26
  2690. package/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC2612.sol +0 -8
  2691. package/lib/openzeppelin-contracts/contracts/metatx/MinimalForwarder.sol +0 -73
  2692. package/lib/openzeppelin-contracts/contracts/mocks/AccessControlCrossChainMock.sol +0 -22
  2693. package/lib/openzeppelin-contracts/contracts/mocks/AccessControlEnumerableMock.sol +0 -17
  2694. package/lib/openzeppelin-contracts/contracts/mocks/AccessControlMock.sol +0 -17
  2695. package/lib/openzeppelin-contracts/contracts/mocks/AddressImpl.sol +0 -46
  2696. package/lib/openzeppelin-contracts/contracts/mocks/BadBeacon.sol +0 -11
  2697. package/lib/openzeppelin-contracts/contracts/mocks/Base64Mock.sol +0 -11
  2698. package/lib/openzeppelin-contracts/contracts/mocks/BitmapMock.sol +0 -27
  2699. package/lib/openzeppelin-contracts/contracts/mocks/CheckpointsMock.sol +0 -120
  2700. package/lib/openzeppelin-contracts/contracts/mocks/ClashingImplementation.sol +0 -18
  2701. package/lib/openzeppelin-contracts/contracts/mocks/ClonesMock.sol +0 -36
  2702. package/lib/openzeppelin-contracts/contracts/mocks/ConditionalEscrowMock.sol +0 -18
  2703. package/lib/openzeppelin-contracts/contracts/mocks/CountersImpl.sol +0 -27
  2704. package/lib/openzeppelin-contracts/contracts/mocks/Create2Impl.sol +0 -34
  2705. package/lib/openzeppelin-contracts/contracts/mocks/DoubleEndedQueueMock.sol +0 -58
  2706. package/lib/openzeppelin-contracts/contracts/mocks/ECDSAMock.sol +0 -41
  2707. package/lib/openzeppelin-contracts/contracts/mocks/EIP712External.sol +0 -31
  2708. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155BurnableMock.sol +0 -18
  2709. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155Mock.sol +0 -51
  2710. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155PausableMock.sol +0 -29
  2711. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155ReceiverMock.sol +0 -52
  2712. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155SupplyMock.sol +0 -21
  2713. package/lib/openzeppelin-contracts/contracts/mocks/ERC1155URIStorageMock.sol +0 -22
  2714. package/lib/openzeppelin-contracts/contracts/mocks/ERC165CheckerMock.sol +0 -29
  2715. package/lib/openzeppelin-contracts/contracts/mocks/ERC165Mock.sol +0 -7
  2716. package/lib/openzeppelin-contracts/contracts/mocks/ERC165StorageMock.sol +0 -11
  2717. package/lib/openzeppelin-contracts/contracts/mocks/ERC1820ImplementerMock.sol +0 -11
  2718. package/lib/openzeppelin-contracts/contracts/mocks/ERC20BurnableMock.sol +0 -16
  2719. package/lib/openzeppelin-contracts/contracts/mocks/ERC20CappedMock.sol +0 -17
  2720. package/lib/openzeppelin-contracts/contracts/mocks/ERC20DecimalsMock.sol +0 -29
  2721. package/lib/openzeppelin-contracts/contracts/mocks/ERC20FlashMintMock.sol +0 -43
  2722. package/lib/openzeppelin-contracts/contracts/mocks/ERC20Mock.sol +0 -41
  2723. package/lib/openzeppelin-contracts/contracts/mocks/ERC20PausableMock.sol +0 -33
  2724. package/lib/openzeppelin-contracts/contracts/mocks/ERC20PermitMock.sol +0 -20
  2725. package/lib/openzeppelin-contracts/contracts/mocks/ERC20SnapshotMock.sol +0 -28
  2726. package/lib/openzeppelin-contracts/contracts/mocks/ERC20VotesCompMock.sol +0 -21
  2727. package/lib/openzeppelin-contracts/contracts/mocks/ERC20VotesMock.sol +0 -21
  2728. package/lib/openzeppelin-contracts/contracts/mocks/ERC20WrapperMock.sol +0 -17
  2729. package/lib/openzeppelin-contracts/contracts/mocks/ERC4626Mock.sol +0 -60
  2730. package/lib/openzeppelin-contracts/contracts/mocks/ERC721BurnableMock.sol +0 -29
  2731. package/lib/openzeppelin-contracts/contracts/mocks/ERC721ConsecutiveEnumerableMock.sol +0 -55
  2732. package/lib/openzeppelin-contracts/contracts/mocks/ERC721ConsecutiveMock.sol +0 -86
  2733. package/lib/openzeppelin-contracts/contracts/mocks/ERC721EnumerableMock.sol +0 -51
  2734. package/lib/openzeppelin-contracts/contracts/mocks/ERC721Mock.sol +0 -41
  2735. package/lib/openzeppelin-contracts/contracts/mocks/ERC721PausableMock.sol +0 -45
  2736. package/lib/openzeppelin-contracts/contracts/mocks/ERC721ReceiverMock.sol +0 -42
  2737. package/lib/openzeppelin-contracts/contracts/mocks/ERC721RoyaltyMock.sol +0 -33
  2738. package/lib/openzeppelin-contracts/contracts/mocks/ERC721URIStorageMock.sol +0 -55
  2739. package/lib/openzeppelin-contracts/contracts/mocks/ERC721VotesMock.sol +0 -25
  2740. package/lib/openzeppelin-contracts/contracts/mocks/ERC777Mock.sol +0 -56
  2741. package/lib/openzeppelin-contracts/contracts/mocks/ERC777SenderRecipientMock.sol +0 -161
  2742. package/lib/openzeppelin-contracts/contracts/mocks/EnumerableMapMock.sol +0 -221
  2743. package/lib/openzeppelin-contracts/contracts/mocks/EnumerableSetMock.sol +0 -111
  2744. package/lib/openzeppelin-contracts/contracts/mocks/GovernorCompMock.sol +0 -31
  2745. package/lib/openzeppelin-contracts/contracts/mocks/GovernorCompatibilityBravoMock.sol +0 -127
  2746. package/lib/openzeppelin-contracts/contracts/mocks/GovernorMock.sol +0 -50
  2747. package/lib/openzeppelin-contracts/contracts/mocks/GovernorPreventLateQuorumMock.sol +0 -60
  2748. package/lib/openzeppelin-contracts/contracts/mocks/GovernorTimelockCompoundMock.sol +0 -96
  2749. package/lib/openzeppelin-contracts/contracts/mocks/GovernorTimelockControlMock.sol +0 -93
  2750. package/lib/openzeppelin-contracts/contracts/mocks/GovernorVoteMock.sol +0 -31
  2751. package/lib/openzeppelin-contracts/contracts/mocks/GovernorWithParamsMock.sol +0 -61
  2752. package/lib/openzeppelin-contracts/contracts/mocks/MathMock.sol +0 -48
  2753. package/lib/openzeppelin-contracts/contracts/mocks/MerkleProofWrapper.sol +0 -65
  2754. package/lib/openzeppelin-contracts/contracts/mocks/MulticallTest.sol +0 -23
  2755. package/lib/openzeppelin-contracts/contracts/mocks/MulticallTokenMock.sol +0 -10
  2756. package/lib/openzeppelin-contracts/contracts/mocks/Ownable2StepMock.sol +0 -7
  2757. package/lib/openzeppelin-contracts/contracts/mocks/OwnableMock.sol +0 -7
  2758. package/lib/openzeppelin-contracts/contracts/mocks/PullPaymentMock.sol +0 -15
  2759. package/lib/openzeppelin-contracts/contracts/mocks/SafeCastMock.sol +0 -267
  2760. package/lib/openzeppelin-contracts/contracts/mocks/SafeERC20Helper.sol +0 -194
  2761. package/lib/openzeppelin-contracts/contracts/mocks/SafeMathMock.sol +0 -138
  2762. package/lib/openzeppelin-contracts/contracts/mocks/SignatureCheckerMock.sol +0 -17
  2763. package/lib/openzeppelin-contracts/contracts/mocks/SignedMathMock.sol +0 -23
  2764. package/lib/openzeppelin-contracts/contracts/mocks/SignedSafeMathMock.sol +0 -23
  2765. package/lib/openzeppelin-contracts/contracts/mocks/StringsMock.sol +0 -23
  2766. package/lib/openzeppelin-contracts/contracts/mocks/TimersBlockNumberImpl.sol +0 -39
  2767. package/lib/openzeppelin-contracts/contracts/mocks/TimersTimestampImpl.sol +0 -39
  2768. package/lib/openzeppelin-contracts/contracts/mocks/UUPS/UUPSLegacy.sol +0 -58
  2769. package/lib/openzeppelin-contracts/contracts/mocks/UUPS/UUPSUpgradeableMock.sol +0 -21
  2770. package/lib/openzeppelin-contracts/contracts/mocks/crosschain/bridges.sol +0 -102
  2771. package/lib/openzeppelin-contracts/contracts/mocks/crosschain/receivers.sol +0 -54
  2772. package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor1.sol +0 -87
  2773. package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor2.sol +0 -93
  2774. package/lib/openzeppelin-contracts/contracts/mocks/wizard/MyGovernor3.sol +0 -96
  2775. package/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol +0 -185
  2776. package/lib/openzeppelin-contracts/contracts/security/Pausable.sol +0 -105
  2777. package/lib/openzeppelin-contracts/contracts/security/PullPayment.sol +0 -74
  2778. package/lib/openzeppelin-contracts/contracts/security/README.adoc +0 -20
  2779. package/lib/openzeppelin-contracts/contracts/security/ReentrancyGuard.sol +0 -69
  2780. package/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/ERC1155PresetMinterPauser.sol +0 -128
  2781. package/lib/openzeppelin-contracts/contracts/token/ERC1155/presets/README.md +0 -1
  2782. package/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol +0 -19
  2783. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Snapshot.sol +0 -195
  2784. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20VotesComp.sol +0 -46
  2785. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20Permit.sol +0 -95
  2786. package/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-IERC20Permit.sol +0 -60
  2787. package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/ERC20PresetFixedSupply.sol +0 -35
  2788. package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol +0 -94
  2789. package/lib/openzeppelin-contracts/contracts/token/ERC20/presets/README.md +0 -1
  2790. package/lib/openzeppelin-contracts/contracts/token/ERC20/utils/TokenTimelock.sol +0 -76
  2791. package/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/draft-ERC721Votes.sol +0 -9
  2792. package/lib/openzeppelin-contracts/contracts/token/ERC721/presets/ERC721PresetMinterPauserAutoId.sol +0 -140
  2793. package/lib/openzeppelin-contracts/contracts/token/ERC721/presets/README.md +0 -1
  2794. package/lib/openzeppelin-contracts/contracts/token/ERC777/ERC777.sol +0 -547
  2795. package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777.sol +0 -209
  2796. package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Recipient.sol +0 -35
  2797. package/lib/openzeppelin-contracts/contracts/token/ERC777/IERC777Sender.sol +0 -35
  2798. package/lib/openzeppelin-contracts/contracts/token/ERC777/README.adoc +0 -30
  2799. package/lib/openzeppelin-contracts/contracts/token/ERC777/presets/ERC777PresetFixedSupply.sol +0 -30
  2800. package/lib/openzeppelin-contracts/contracts/utils/Checkpoints.sol +0 -554
  2801. package/lib/openzeppelin-contracts/contracts/utils/Counters.sol +0 -43
  2802. package/lib/openzeppelin-contracts/contracts/utils/Timers.sol +0 -73
  2803. package/lib/openzeppelin-contracts/contracts/utils/cryptography/draft-EIP712.sol +0 -8
  2804. package/lib/openzeppelin-contracts/contracts/utils/escrow/ConditionalEscrow.sol +0 -25
  2805. package/lib/openzeppelin-contracts/contracts/utils/escrow/Escrow.sol +0 -67
  2806. package/lib/openzeppelin-contracts/contracts/utils/escrow/RefundEscrow.sol +0 -100
  2807. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Storage.sol +0 -42
  2808. package/lib/openzeppelin-contracts/contracts/utils/introspection/ERC1820Implementer.sol +0 -44
  2809. package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Implementer.sol +0 -20
  2810. package/lib/openzeppelin-contracts/contracts/utils/introspection/IERC1820Registry.sol +0 -116
  2811. package/lib/openzeppelin-contracts/contracts/utils/math/SafeMath.sol +0 -227
  2812. package/lib/openzeppelin-contracts/contracts/utils/math/SignedSafeMath.sol +0 -68
  2813. package/lib/openzeppelin-contracts/contracts/vendor/amb/IAMB.sol +0 -49
  2814. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IArbSys.sol +0 -141
  2815. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IBridge.sol +0 -109
  2816. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IDelayedMessageProvider.sol +0 -16
  2817. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IInbox.sol +0 -152
  2818. package/lib/openzeppelin-contracts/contracts/vendor/arbitrum/IOutbox.sol +0 -121
  2819. package/lib/openzeppelin-contracts/contracts/vendor/optimism/ICrossDomainMessenger.sol +0 -38
  2820. package/lib/openzeppelin-contracts/contracts/vendor/optimism/LICENSE +0 -22
  2821. package/lib/openzeppelin-contracts/contracts/vendor/polygon/IFxMessageProcessor.sol +0 -11
  2822. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  2823. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  2824. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/drafts.adoc +0 -19
  2825. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc777.adoc +0 -73
  2826. package/lib/openzeppelin-contracts/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  2827. package/lib/openzeppelin-contracts/hardhat/env-contract.js +0 -10
  2828. package/lib/openzeppelin-contracts/lib/forge-std/.gitmodules +0 -3
  2829. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/LICENSE +0 -674
  2830. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/Makefile +0 -14
  2831. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/default.nix +0 -4
  2832. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
  2833. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/package.json +0 -15
  2834. package/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/test.sol +0 -469
  2835. package/lib/openzeppelin-contracts/scripts/generate/templates/CheckpointsMock.js +0 -80
  2836. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMapMock.js +0 -66
  2837. package/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSetMock.js +0 -56
  2838. package/lib/openzeppelin-contracts/scripts/generate/templates/SafeCastMock.js +0 -50
  2839. package/lib/openzeppelin-contracts/scripts/migrate-imports.js +0 -177
  2840. package/lib/openzeppelin-contracts/scripts/prepare-contracts-package.sh +0 -15
  2841. package/lib/openzeppelin-contracts/scripts/prepare.sh +0 -10
  2842. package/lib/openzeppelin-contracts/scripts/release/release.sh +0 -145
  2843. package/lib/openzeppelin-contracts/scripts/release/update-changelog-release-date.js +0 -34
  2844. package/lib/openzeppelin-contracts/test/access/AccessControlCrossChain.test.js +0 -59
  2845. package/lib/openzeppelin-contracts/test/access/AccessControlEnumerable.test.js +0 -15
  2846. package/lib/openzeppelin-contracts/test/crosschain/CrossChainEnabled.test.js +0 -88
  2847. package/lib/openzeppelin-contracts/test/finance/PaymentSplitter.test.js +0 -217
  2848. package/lib/openzeppelin-contracts/test/governance/compatibility/GovernorCompatibilityBravo.test.js +0 -265
  2849. package/lib/openzeppelin-contracts/test/governance/extensions/GovernorComp.test.js +0 -78
  2850. package/lib/openzeppelin-contracts/test/helpers/create2.js +0 -12
  2851. package/lib/openzeppelin-contracts/test/helpers/crosschain.js +0 -63
  2852. package/lib/openzeppelin-contracts/test/helpers/customError.js +0 -24
  2853. package/lib/openzeppelin-contracts/test/helpers/erc1967.js +0 -24
  2854. package/lib/openzeppelin-contracts/test/helpers/sign.js +0 -47
  2855. package/lib/openzeppelin-contracts/test/metatx/MinimalForwarder.test.js +0 -184
  2856. package/lib/openzeppelin-contracts/test/migrate-imports.test.js +0 -29
  2857. package/lib/openzeppelin-contracts/test/security/Pausable.test.js +0 -89
  2858. package/lib/openzeppelin-contracts/test/security/PullPayment.test.js +0 -51
  2859. package/lib/openzeppelin-contracts/test/security/ReentrancyGuard.test.js +0 -40
  2860. package/lib/openzeppelin-contracts/test/token/ERC1155/presets/ERC1155PresetMinterPauser.test.js +0 -146
  2861. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.behavior.js +0 -109
  2862. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.behavior.js +0 -32
  2863. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Snapshot.test.js +0 -204
  2864. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20VotesComp.test.js +0 -496
  2865. package/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20Permit.test.js +0 -109
  2866. package/lib/openzeppelin-contracts/test/token/ERC20/presets/ERC20PresetFixedSupply.test.js +0 -42
  2867. package/lib/openzeppelin-contracts/test/token/ERC20/presets/ERC20PresetMinterPauser.test.js +0 -113
  2868. package/lib/openzeppelin-contracts/test/token/ERC20/utils/TokenTimelock.test.js +0 -71
  2869. package/lib/openzeppelin-contracts/test/token/ERC721/presets/ERC721PresetMinterPauserAutoId.test.js +0 -125
  2870. package/lib/openzeppelin-contracts/test/token/ERC777/ERC777.behavior.js +0 -555
  2871. package/lib/openzeppelin-contracts/test/token/ERC777/ERC777.test.js +0 -610
  2872. package/lib/openzeppelin-contracts/test/token/ERC777/presets/ERC777PresetFixedSupply.test.js +0 -49
  2873. package/lib/openzeppelin-contracts/test/utils/Checkpoints.test.js +0 -189
  2874. package/lib/openzeppelin-contracts/test/utils/Counters.test.js +0 -84
  2875. package/lib/openzeppelin-contracts/test/utils/TimersBlockNumberImpl.test.js +0 -55
  2876. package/lib/openzeppelin-contracts/test/utils/TimersTimestamp.test.js +0 -55
  2877. package/lib/openzeppelin-contracts/test/utils/escrow/ConditionalEscrow.test.js +0 -36
  2878. package/lib/openzeppelin-contracts/test/utils/escrow/Escrow.behavior.js +0 -94
  2879. package/lib/openzeppelin-contracts/test/utils/escrow/Escrow.test.js +0 -14
  2880. package/lib/openzeppelin-contracts/test/utils/escrow/RefundEscrow.test.js +0 -148
  2881. package/lib/openzeppelin-contracts/test/utils/introspection/ERC165Storage.test.js +0 -25
  2882. package/lib/openzeppelin-contracts/test/utils/introspection/ERC1820Implementer.test.js +0 -66
  2883. package/lib/openzeppelin-contracts/test/utils/math/SafeMath.test.js +0 -403
  2884. package/lib/openzeppelin-contracts/test/utils/math/SignedSafeMath.test.js +0 -152
  2885. package/lib/openzeppelin-contracts-upgradeable/.changeset/new-ways-own.md +0 -5
  2886. package/lib/openzeppelin-contracts-upgradeable/.eslintrc +0 -62
  2887. package/lib/openzeppelin-contracts-upgradeable/.gitattributes +0 -1
  2888. package/lib/openzeppelin-contracts-upgradeable/.github/ISSUE_TEMPLATE/bug_report.md +0 -21
  2889. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/changelog.yml +0 -28
  2890. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/merge-upstream.yml +0 -28
  2891. package/lib/openzeppelin-contracts-upgradeable/.github/workflows/transpile.yml +0 -27
  2892. package/lib/openzeppelin-contracts-upgradeable/.solhint.json +0 -14
  2893. package/lib/openzeppelin-contracts-upgradeable/UPGRADEABLE.md +0 -47
  2894. package/lib/openzeppelin-contracts-upgradeable/audit/2017-03.md +0 -292
  2895. package/lib/openzeppelin-contracts-upgradeable/certora/applyHarness.patch +0 -101
  2896. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/ERC20VotesHarness.sol +0 -28
  2897. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/WizardControlFirstPriority.sol +0 -150
  2898. package/lib/openzeppelin-contracts-upgradeable/certora/harnesses/WizardFirstTry.sol +0 -141
  2899. package/lib/openzeppelin-contracts-upgradeable/certora/munged/.gitignore +0 -2
  2900. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/Governor.sh +0 -10
  2901. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/GovernorCountingSimple-counting.sh +0 -10
  2902. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/WizardControlFirstPriority.sh +0 -12
  2903. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/WizardFirstTry.sh +0 -10
  2904. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/sanity.sh +0 -14
  2905. package/lib/openzeppelin-contracts-upgradeable/certora/scripts/verifyAll.sh +0 -39
  2906. package/lib/openzeppelin-contracts-upgradeable/certora/specs/GovernorBase.spec +0 -333
  2907. package/lib/openzeppelin-contracts-upgradeable/certora/specs/GovernorCountingSimple.spec +0 -221
  2908. package/lib/openzeppelin-contracts-upgradeable/certora/specs/RulesInProgress.spec +0 -139
  2909. package/lib/openzeppelin-contracts-upgradeable/certora/specs/sanity.spec +0 -14
  2910. package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlCrossChainUpgradeable.sol +0 -58
  2911. package/lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlEnumerableUpgradeable.sol +0 -77
  2912. package/lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlEnumerableUpgradeable.sol +0 -31
  2913. package/lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol +0 -88
  2914. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/CrossChainEnabledUpgradeable.sol +0 -67
  2915. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/README.adoc +0 -34
  2916. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/amb/CrossChainEnabledAMBUpgradeable.sol +0 -57
  2917. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/amb/LibAMBUpgradeable.sol +0 -35
  2918. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL1Upgradeable.sol +0 -52
  2919. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/CrossChainEnabledArbitrumL2Upgradeable.sol +0 -53
  2920. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/LibArbitrumL1Upgradeable.sol +0 -42
  2921. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/arbitrum/LibArbitrumL2Upgradeable.sol +0 -45
  2922. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/errorsUpgradeable.sol +0 -7
  2923. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/optimism/CrossChainEnabledOptimismUpgradeable.sol +0 -49
  2924. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/optimism/LibOptimismUpgradeable.sol +0 -36
  2925. package/lib/openzeppelin-contracts-upgradeable/contracts/crosschain/polygon/CrossChainEnabledPolygonChildUpgradeable.sol +0 -90
  2926. package/lib/openzeppelin-contracts-upgradeable/contracts/finance/PaymentSplitterUpgradeable.sol +0 -226
  2927. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/IGovernorUpgradeable.sol +0 -289
  2928. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/TimelockControllerWith46MigrationUpgradeable.sol +0 -56
  2929. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/compatibility/GovernorCompatibilityBravoUpgradeable.sol +0 -298
  2930. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/compatibility/IGovernorCompatibilityBravoUpgradeable.sol +0 -127
  2931. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorProposalThresholdUpgradeable.sol +0 -36
  2932. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/GovernorVotesCompUpgradeable.sol +0 -45
  2933. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/extensions/IGovernorTimelockUpgradeable.sol +0 -39
  2934. package/lib/openzeppelin-contracts-upgradeable/contracts/governance/utils/IVotesUpgradeable.sol +0 -61
  2935. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155MetadataURIUpgradeable.sol +0 -6
  2936. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155ReceiverUpgradeable.sol +0 -6
  2937. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1155Upgradeable.sol +0 -6
  2938. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1271Upgradeable.sol +0 -19
  2939. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363ReceiverUpgradeable.sol +0 -32
  2940. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363SpenderUpgradeable.sol +0 -30
  2941. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1363Upgradeable.sol +0 -95
  2942. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC165Upgradeable.sol +0 -6
  2943. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1820ImplementerUpgradeable.sol +0 -6
  2944. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC1820RegistryUpgradeable.sol +0 -6
  2945. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC20MetadataUpgradeable.sol +0 -6
  2946. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC20Upgradeable.sol +0 -6
  2947. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC2309Upgradeable.sol +0 -21
  2948. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC2981Upgradeable.sol +0 -25
  2949. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156FlashBorrowerUpgradeable.sol +0 -29
  2950. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156FlashLenderUpgradeable.sol +0 -43
  2951. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC3156Upgradeable.sol +0 -7
  2952. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC4626Upgradeable.sol +0 -240
  2953. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721EnumerableUpgradeable.sol +0 -6
  2954. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721MetadataUpgradeable.sol +0 -6
  2955. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721ReceiverUpgradeable.sol +0 -6
  2956. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC721Upgradeable.sol +0 -6
  2957. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777RecipientUpgradeable.sol +0 -6
  2958. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777SenderUpgradeable.sol +0 -6
  2959. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/IERC777Upgradeable.sol +0 -6
  2960. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC1822Upgradeable.sol +0 -20
  2961. package/lib/openzeppelin-contracts-upgradeable/contracts/interfaces/draft-IERC2612Upgradeable.sol +0 -8
  2962. package/lib/openzeppelin-contracts-upgradeable/contracts/metatx/MinimalForwarderUpgradeable.sol +0 -85
  2963. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlCrossChainMockUpgradeable.sol +0 -34
  2964. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlEnumerableMockUpgradeable.sol +0 -29
  2965. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AccessControlMockUpgradeable.sol +0 -29
  2966. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/AddressImplUpgradeable.sol +0 -54
  2967. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BadBeaconUpgradeable.sol +0 -36
  2968. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Base64MockUpgradeable.sol +0 -24
  2969. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/BitmapMockUpgradeable.sol +0 -40
  2970. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CheckpointsMockUpgradeable.sol +0 -157
  2971. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ClashingImplementationUpgradeable.sol +0 -31
  2972. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ClonesMockUpgradeable.sol +0 -49
  2973. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ConditionalEscrowMockUpgradeable.sol +0 -32
  2974. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/CountersImplUpgradeable.sol +0 -40
  2975. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Create2ImplUpgradeable.sol +0 -47
  2976. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/DoubleEndedQueueMockUpgradeable.sol +0 -71
  2977. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ECDSAMockUpgradeable.sol +0 -54
  2978. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EIP712ExternalUpgradeable.sol +0 -43
  2979. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155BurnableMockUpgradeable.sol +0 -30
  2980. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155MockUpgradeable.sol +0 -63
  2981. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155PausableMockUpgradeable.sol +0 -43
  2982. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155ReceiverMockUpgradeable.sol +0 -69
  2983. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155SupplyMockUpgradeable.sol +0 -34
  2984. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1155URIStorageMockUpgradeable.sol +0 -36
  2985. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165CheckerMockUpgradeable.sol +0 -42
  2986. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165MockUpgradeable.sol +0 -20
  2987. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC165StorageMockUpgradeable.sol +0 -24
  2988. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC1820ImplementerMockUpgradeable.sol +0 -24
  2989. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20BurnableMockUpgradeable.sol +0 -34
  2990. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20CappedMockUpgradeable.sol +0 -34
  2991. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20DecimalsMockUpgradeable.sol +0 -46
  2992. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20FlashMintMockUpgradeable.sol +0 -61
  2993. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20MockUpgradeable.sol +0 -59
  2994. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20PausableMockUpgradeable.sol +0 -52
  2995. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20PermitMockUpgradeable.sol +0 -40
  2996. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20SnapshotMockUpgradeable.sol +0 -46
  2997. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20VotesCompMockUpgradeable.sol +0 -35
  2998. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20VotesMockUpgradeable.sol +0 -35
  2999. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC20WrapperMockUpgradeable.sol +0 -34
  3000. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC4626MockUpgradeable.sol +0 -96
  3001. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721BurnableMockUpgradeable.sol +0 -41
  3002. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ConsecutiveEnumerableMockUpgradeable.sol +0 -73
  3003. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ConsecutiveMockUpgradeable.sol +0 -119
  3004. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721EnumerableMockUpgradeable.sol +0 -63
  3005. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721MockUpgradeable.sol +0 -53
  3006. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721PausableMockUpgradeable.sol +0 -58
  3007. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721ReceiverMockUpgradeable.sol +0 -54
  3008. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721RoyaltyMockUpgradeable.sol +0 -45
  3009. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721URIStorageMockUpgradeable.sol +0 -67
  3010. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC721VotesMockUpgradeable.sol +0 -38
  3011. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC777MockUpgradeable.sol +0 -75
  3012. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/ERC777SenderRecipientMockUpgradeable.sol +0 -176
  3013. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EnumerableMapMockUpgradeable.sol +0 -282
  3014. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/EnumerableSetMockUpgradeable.sol +0 -148
  3015. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorCompMockUpgradeable.sol +0 -45
  3016. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorCompatibilityBravoMockUpgradeable.sol +0 -145
  3017. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorMockUpgradeable.sol +0 -67
  3018. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorPreventLateQuorumMockUpgradeable.sol +0 -79
  3019. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorTimelockCompoundMockUpgradeable.sol +0 -114
  3020. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorTimelockControlMockUpgradeable.sol +0 -111
  3021. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorVoteMockUpgradeable.sol +0 -45
  3022. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/GovernorWithParamsMockUpgradeable.sol +0 -75
  3023. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MathMockUpgradeable.sol +0 -61
  3024. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MerkleProofWrapperUpgradeable.sol +0 -78
  3025. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallTestUpgradeable.sol +0 -36
  3026. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/MulticallTokenMockUpgradeable.sol +0 -23
  3027. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/Ownable2StepMockUpgradeable.sol +0 -21
  3028. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/OwnableMockUpgradeable.sol +0 -21
  3029. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/PullPaymentMockUpgradeable.sol +0 -27
  3030. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeCastMockUpgradeable.sol +0 -280
  3031. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeERC20HelperUpgradeable.sol +0 -257
  3032. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SafeMathMockUpgradeable.sol +0 -151
  3033. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignatureCheckerMockUpgradeable.sol +0 -30
  3034. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignedMathMockUpgradeable.sol +0 -36
  3035. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/SignedSafeMathMockUpgradeable.sol +0 -36
  3036. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/StringsMockUpgradeable.sol +0 -36
  3037. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimersBlockNumberImplUpgradeable.sol +0 -52
  3038. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/TimersTimestampImplUpgradeable.sol +0 -52
  3039. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UUPS/UUPSLegacyUpgradeable.sol +0 -81
  3040. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/UUPS/UUPSUpgradeableMockUpgradeable.sol +0 -46
  3041. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/crosschain/bridgesUpgradeable.sol +0 -199
  3042. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/crosschain/receiversUpgradeable.sol +0 -107
  3043. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor1Upgradeable.sol +0 -98
  3044. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor2Upgradeable.sol +0 -104
  3045. package/lib/openzeppelin-contracts-upgradeable/contracts/mocks/wizard/MyGovernor3Upgradeable.sol +0 -107
  3046. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol +0 -89
  3047. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/ERC1967/ERC1967UpgradeUpgradeable.sol +0 -212
  3048. package/lib/openzeppelin-contracts-upgradeable/contracts/proxy/beacon/IBeaconUpgradeable.sol +0 -16
  3049. package/lib/openzeppelin-contracts-upgradeable/contracts/security/PausableUpgradeable.sol +0 -117
  3050. package/lib/openzeppelin-contracts-upgradeable/contracts/security/PullPaymentUpgradeable.sol +0 -89
  3051. package/lib/openzeppelin-contracts-upgradeable/contracts/security/README.adoc +0 -20
  3052. package/lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol +0 -81
  3053. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155ReceiverUpgradeable.sol +0 -58
  3054. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/IERC1155Upgradeable.sol +0 -125
  3055. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/extensions/IERC1155MetadataURIUpgradeable.sol +0 -22
  3056. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/presets/ERC1155PresetMinterPauserUpgradeable.sol +0 -145
  3057. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/presets/README.md +0 -1
  3058. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC1155/utils/ERC1155ReceiverUpgradeable.sol +0 -32
  3059. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol +0 -82
  3060. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20SnapshotUpgradeable.sol +0 -208
  3061. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/ERC20VotesCompUpgradeable.sol +0 -59
  3062. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/IERC20MetadataUpgradeable.sol +0 -28
  3063. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol +0 -109
  3064. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol +0 -60
  3065. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/ERC20PresetFixedSupplyUpgradeable.sol +0 -61
  3066. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/ERC20PresetMinterPauserUpgradeable.sol +0 -111
  3067. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/presets/README.md +0 -1
  3068. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/utils/SafeERC20Upgradeable.sol +0 -116
  3069. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/utils/TokenTimelockUpgradeable.sol +0 -94
  3070. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/IERC721ReceiverUpgradeable.sol +0 -27
  3071. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/IERC721Upgradeable.sol +0 -145
  3072. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/IERC721EnumerableUpgradeable.sol +0 -29
  3073. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/IERC721MetadataUpgradeable.sol +0 -27
  3074. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/extensions/draft-ERC721VotesUpgradeable.sol +0 -9
  3075. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/presets/ERC721PresetMinterPauserAutoIdUpgradeable.sol +0 -165
  3076. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC721/presets/README.md +0 -1
  3077. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/ERC777Upgradeable.sol +0 -563
  3078. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777RecipientUpgradeable.sol +0 -35
  3079. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777SenderUpgradeable.sol +0 -35
  3080. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/IERC777Upgradeable.sol +0 -209
  3081. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/README.adoc +0 -30
  3082. package/lib/openzeppelin-contracts-upgradeable/contracts/token/ERC777/presets/ERC777PresetFixedSupplyUpgradeable.sol +0 -58
  3083. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol +0 -219
  3084. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/ArraysUpgradeable.sol +0 -96
  3085. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/Base64Upgradeable.sol +0 -92
  3086. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/CheckpointsUpgradeable.sol +0 -554
  3087. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/CountersUpgradeable.sol +0 -43
  3088. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/Create2Upgradeable.sol +0 -83
  3089. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/StorageSlotUpgradeable.sol +0 -88
  3090. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol +0 -70
  3091. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/TimersUpgradeable.sol +0 -73
  3092. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/ECDSAUpgradeable.sol +0 -213
  3093. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/MerkleProofUpgradeable.sol +0 -223
  3094. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/SignatureCheckerUpgradeable.sol +0 -42
  3095. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/cryptography/draft-EIP712Upgradeable.sol +0 -8
  3096. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/ConditionalEscrowUpgradeable.sol +0 -39
  3097. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/EscrowUpgradeable.sol +0 -84
  3098. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/escrow/RefundEscrowUpgradeable.sol +0 -113
  3099. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165CheckerUpgradeable.sol +0 -127
  3100. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165StorageUpgradeable.sol +0 -55
  3101. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC1820ImplementerUpgradeable.sol +0 -57
  3102. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol +0 -25
  3103. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC1820ImplementerUpgradeable.sol +0 -20
  3104. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC1820RegistryUpgradeable.sol +0 -116
  3105. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol +0 -345
  3106. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SafeCastUpgradeable.sol +0 -1136
  3107. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SafeMathUpgradeable.sol +0 -227
  3108. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol +0 -43
  3109. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedSafeMathUpgradeable.sol +0 -68
  3110. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/BitMapsUpgradeable.sol +0 -55
  3111. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/DoubleEndedQueueUpgradeable.sol +0 -170
  3112. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/EnumerableMapUpgradeable.sol +0 -530
  3113. package/lib/openzeppelin-contracts-upgradeable/contracts/utils/structs/EnumerableSetUpgradeable.sol +0 -378
  3114. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/amb/IAMBUpgradeable.sol +0 -49
  3115. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IArbSysUpgradeable.sol +0 -141
  3116. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IBridgeUpgradeable.sol +0 -109
  3117. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IDelayedMessageProviderUpgradeable.sol +0 -16
  3118. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IInboxUpgradeable.sol +0 -152
  3119. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/arbitrum/IOutboxUpgradeable.sol +0 -121
  3120. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/compound/ICompoundTimelockUpgradeable.sol +0 -86
  3121. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/optimism/ICrossDomainMessengerUpgradeable.sol +0 -38
  3122. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/optimism/LICENSE +0 -22
  3123. package/lib/openzeppelin-contracts-upgradeable/contracts/vendor/polygon/IFxMessageProcessorUpgradeable.sol +0 -11
  3124. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/crosschain.adoc +0 -210
  3125. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/crowdsales.adoc +0 -11
  3126. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/drafts.adoc +0 -19
  3127. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/erc777.adoc +0 -73
  3128. package/lib/openzeppelin-contracts-upgradeable/docs/modules/ROOT/pages/releases-stability.adoc +0 -85
  3129. package/lib/openzeppelin-contracts-upgradeable/hardhat/env-contract.js +0 -10
  3130. package/lib/openzeppelin-contracts-upgradeable/hardhat/task-get-compiler-input.js +0 -10
  3131. package/lib/openzeppelin-contracts-upgradeable/icon.svg +0 -13
  3132. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/.gitmodules +0 -3
  3133. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/LICENSE +0 -674
  3134. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/Makefile +0 -14
  3135. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/default.nix +0 -4
  3136. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
  3137. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/package.json +0 -15
  3138. package/lib/openzeppelin-contracts-upgradeable/lib/forge-std/lib/ds-test/src/test.sol +0 -469
  3139. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/CheckpointsMock.js +0 -80
  3140. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableMapMock.js +0 -66
  3141. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/EnumerableSetMock.js +0 -56
  3142. package/lib/openzeppelin-contracts-upgradeable/scripts/generate/templates/SafeCastMock.js +0 -50
  3143. package/lib/openzeppelin-contracts-upgradeable/scripts/migrate-imports.js +0 -177
  3144. package/lib/openzeppelin-contracts-upgradeable/scripts/prepare-contracts-package.sh +0 -15
  3145. package/lib/openzeppelin-contracts-upgradeable/scripts/prepare.sh +0 -10
  3146. package/lib/openzeppelin-contracts-upgradeable/scripts/release/release.sh +0 -145
  3147. package/lib/openzeppelin-contracts-upgradeable/scripts/release/update-changelog-release-date.js +0 -34
  3148. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/merge-upstream.sh +0 -33
  3149. package/lib/openzeppelin-contracts-upgradeable/scripts/upgradeable/patch/.gitkeep +0 -0
  3150. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControlCrossChain.test.js +0 -59
  3151. package/lib/openzeppelin-contracts-upgradeable/test/access/AccessControlEnumerable.test.js +0 -15
  3152. package/lib/openzeppelin-contracts-upgradeable/test/crosschain/CrossChainEnabled.test.js +0 -88
  3153. package/lib/openzeppelin-contracts-upgradeable/test/finance/PaymentSplitter.test.js +0 -217
  3154. package/lib/openzeppelin-contracts-upgradeable/test/governance/compatibility/GovernorCompatibilityBravo.test.js +0 -265
  3155. package/lib/openzeppelin-contracts-upgradeable/test/governance/extensions/GovernorComp.test.js +0 -78
  3156. package/lib/openzeppelin-contracts-upgradeable/test/helpers/create2.js +0 -12
  3157. package/lib/openzeppelin-contracts-upgradeable/test/helpers/crosschain.js +0 -63
  3158. package/lib/openzeppelin-contracts-upgradeable/test/helpers/customError.js +0 -24
  3159. package/lib/openzeppelin-contracts-upgradeable/test/helpers/erc1967.js +0 -24
  3160. package/lib/openzeppelin-contracts-upgradeable/test/helpers/sign.js +0 -47
  3161. package/lib/openzeppelin-contracts-upgradeable/test/metatx/MinimalForwarder.test.js +0 -184
  3162. package/lib/openzeppelin-contracts-upgradeable/test/migrate-imports.test.js +0 -29
  3163. package/lib/openzeppelin-contracts-upgradeable/test/security/Pausable.test.js +0 -89
  3164. package/lib/openzeppelin-contracts-upgradeable/test/security/PullPayment.test.js +0 -51
  3165. package/lib/openzeppelin-contracts-upgradeable/test/security/ReentrancyGuard.test.js +0 -40
  3166. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC1155/presets/ERC1155PresetMinterPauser.test.js +0 -146
  3167. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Burnable.behavior.js +0 -109
  3168. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Capped.behavior.js +0 -32
  3169. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20Snapshot.test.js +0 -204
  3170. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/ERC20VotesComp.test.js +0 -496
  3171. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/extensions/draft-ERC20Permit.test.js +0 -109
  3172. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/presets/ERC20PresetFixedSupply.test.js +0 -42
  3173. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/presets/ERC20PresetMinterPauser.test.js +0 -113
  3174. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC20/utils/TokenTimelock.test.js +0 -71
  3175. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC721/presets/ERC721PresetMinterPauserAutoId.test.js +0 -125
  3176. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/ERC777.behavior.js +0 -555
  3177. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/ERC777.test.js +0 -610
  3178. package/lib/openzeppelin-contracts-upgradeable/test/token/ERC777/presets/ERC777PresetFixedSupply.test.js +0 -49
  3179. package/lib/openzeppelin-contracts-upgradeable/test/utils/Checkpoints.test.js +0 -189
  3180. package/lib/openzeppelin-contracts-upgradeable/test/utils/Counters.test.js +0 -84
  3181. package/lib/openzeppelin-contracts-upgradeable/test/utils/TimersBlockNumberImpl.test.js +0 -55
  3182. package/lib/openzeppelin-contracts-upgradeable/test/utils/TimersTimestamp.test.js +0 -55
  3183. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/ConditionalEscrow.test.js +0 -36
  3184. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/Escrow.behavior.js +0 -94
  3185. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/Escrow.test.js +0 -14
  3186. package/lib/openzeppelin-contracts-upgradeable/test/utils/escrow/RefundEscrow.test.js +0 -148
  3187. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC165Storage.test.js +0 -25
  3188. package/lib/openzeppelin-contracts-upgradeable/test/utils/introspection/ERC1820Implementer.test.js +0 -66
  3189. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SafeMath.test.js +0 -403
  3190. package/lib/openzeppelin-contracts-upgradeable/test/utils/math/SignedSafeMath.test.js +0 -152
  3191. package/migrations/10_deploy_weth.js +0 -5
  3192. package/migrations/11_deploy_full_flow.js +0 -99
  3193. package/migrations/12_deploy_pm_v3_querier.js +0 -7
  3194. package/migrations/13_deploy_pm_v3_factory.js +0 -14
  3195. package/migrations/15_deploy_ppmm.js +0 -10
  3196. package/migrations/16_deploy_raffle.js +0 -5
  3197. package/migrations/1_initial_migration.js +0 -5
  3198. package/migrations/2_deploy_erc20.js +0 -10
  3199. package/migrations/3_deploy_realitio.js +0 -11
  3200. package/migrations/4_deploy_pm.js +0 -20
  3201. package/migrations/5_seed_markets.js +0 -51
  3202. package/migrations/6_deploy_achievements.js +0 -5
  3203. package/migrations/7_deploy_voting.js +0 -14
  3204. package/migrations/8_deploy_pm_v2.js +0 -20
  3205. package/migrations/9_seed_markets_v2.js +0 -68
  3206. package/tests/PPMMarketContract.js +0 -340
  3207. package/tests/fantasyERC20Contract.js +0 -225
  3208. package/tests/getAverageOutcomeBuyPrice.test.ts +0 -179
  3209. package/tests/index.js +0 -10
  3210. package/tests/predictionMarketContract.js +0 -466
  3211. package/tests/predictionMarketV2Contract.js +0 -1042
  3212. package/tests/predictionMarketV3Contract.js +0 -1079
  3213. package/tests/predictionMarketV3ControllerContract.js +0 -613
  3214. package/tests/predictionMarketV3FactoryContract.js +0 -469
  3215. package/tests/predictionMarketV3ManagerContract.js +0 -610
  3216. package/tests/utils.js +0 -16
  3217. package/tests/votingContract.js +0 -490
  3218. package/truffle-config.js +0 -134
  3219. package/zkout/AccessControl.sol/AccessControl.json +0 -1
  3220. package/zkout/AccessControlEnumerable.sol/AccessControlEnumerable.json +0 -1
  3221. package/zkout/Address.sol/Address.json +0 -1
  3222. package/zkout/Clones.sol/Clones.json +0 -1
  3223. package/zkout/Context.sol/Context.json +0 -1
  3224. package/zkout/ERC165.sol/ERC165.json +0 -1
  3225. package/zkout/ERC20.sol/ERC20.json +0 -1
  3226. package/zkout/ERC20Burnable.sol/ERC20Burnable.json +0 -1
  3227. package/zkout/ERC20Pausable.sol/ERC20Pausable.json +0 -1
  3228. package/zkout/ERC20PresetMinterPauser.sol/ERC20PresetMinterPauser.json +0 -1
  3229. package/zkout/EnumerableSet.sol/EnumerableSet.json +0 -1
  3230. package/zkout/FantasyERC20.sol/FantasyERC20.json +0 -1
  3231. package/zkout/IAccessControl.sol/IAccessControl.json +0 -1
  3232. package/zkout/IAccessControlEnumerable.sol/IAccessControlEnumerable.json +0 -1
  3233. package/zkout/IERC165.sol/IERC165.json +0 -1
  3234. package/zkout/IERC20.sol/IERC20.json +0 -1
  3235. package/zkout/IERC20Metadata.sol/IERC20Metadata.json +0 -1
  3236. package/zkout/IFantasyERC20.sol/IFantasyERC20.json +0 -1
  3237. package/zkout/IPredictionMarketV3.sol/IPredictionMarketV3.json +0 -1
  3238. package/zkout/IPredictionMarketV3Factory.sol/IPredictionMarketV3Factory.json +0 -1
  3239. package/zkout/IPredictionMarketV3Manager.sol/IPredictionMarketV3Manager.json +0 -1
  3240. package/zkout/IRealityETH_ERC20.sol/IRealityETH_ERC20.json +0 -1
  3241. package/zkout/LandFactory.sol/LandFactory.json +0 -1
  3242. package/zkout/Math.sol/Math.json +0 -1
  3243. package/zkout/Migrations.sol/Migrations.json +0 -1
  3244. package/zkout/Ownable.sol/Ownable.json +0 -1
  3245. package/zkout/Pausable.sol/Pausable.json +0 -1
  3246. package/zkout/PredictionMarketV3.sol/CeilDiv.json +0 -1
  3247. package/zkout/PredictionMarketV3.sol/IWETH.json +0 -1
  3248. package/zkout/PredictionMarketV3.sol/PredictionMarketV3.json +0 -1
  3249. package/zkout/PredictionMarketV3Controller.sol/PredictionMarketV3Controller.json +0 -1
  3250. package/zkout/PredictionMarketV3Factory.sol/PredictionMarketV3Factory.json +0 -1
  3251. package/zkout/PredictionMarketV3Manager.sol/PredictionMarketV3Manager.json +0 -1
  3252. package/zkout/PredictionMarketV3Querier.sol/PredictionMarketV3Querier.json +0 -1
  3253. package/zkout/Proxy.sol/Proxy.json +0 -1
  3254. package/zkout/RealityETH_ERC20_Factory.sol/IRealityETH_IERC20.json +0 -1
  3255. package/zkout/RealityETH_ERC20_Factory.sol/RealityETH_ERC20_Factory.json +0 -1
  3256. package/zkout/RealityETH_ERC20_v3_0.sol/RealityETH_ERC20_v3_0_.json +0 -1
  3257. package/zkout/ReentrancyGuard.sol/ReentrancyGuard.json +0 -1
  3258. package/zkout/SafeERC20.sol/SafeERC20.json +0 -1
  3259. package/zkout/SafeMath.sol/SafeMath.json +0 -1
  3260. package/zkout/Strings.sol/Strings.json +0 -1
  3261. package/zkout/USDCERC20.sol/USDCERC20.json +0 -1
  3262. package/zkout/Voting.sol/Voting.json +0 -1
  3263. package/zkout/build-info/0fa499f04838f8c1f593bcbafd0fd1a5.json +0 -1
  3264. package/zkout/build-info/39c03363a71a9805ec8ec63c81a8aaaf.json +0 -1
  3265. package/zkout/build-info/637aa7b0942c0ead878e36bd5d598008.json +0 -1
  3266. package/zkout/build-info/810ab68b6fb1e3386ce5a111c7eb136f.json +0 -1
  3267. package/zkout/build-info/aec05d9534229710b5b5f567c42384a1.json +0 -1
  3268. package/zkout/build-info/cdd531656c4131c11667647afa1b2cca.json +0 -1
  3269. package/zkout/build-info/e702288987d16a0b64efe75b321dfb8a.json +0 -1
  3270. package/zkout/build-info/eccbfbbf7a8a18e02ebf05d3b7c6eea8.json +0 -1
  3271. package/zkout/contracts/BalanceHolder_ERC20.sol/BalanceHolder_ERC20.json +0 -1
  3272. package/zkout/contracts/IBalanceHolder_ERC20.sol/IBalanceHolder_ERC20.json +0 -1
  3273. package/zkout/contracts/RealityETH_ERC20-3.0.sol/RealityETH_ERC20_v3_0.json +0 -1
  3274. package/zkout/development/contracts/IERC20.sol/IERC20.json +0 -1
  3275. package/zkout/draft-IERC20Permit.sol/IERC20Permit.json +0 -1
  3276. /package/{build/contracts → abis}/AccessControlEnumerable.json +0 -0
  3277. /package/{build/contracts → abis}/Achievements.json +0 -0
  3278. /package/{build/contracts → abis}/BalanceHolder.json +0 -0
  3279. /package/{build/contracts → abis}/Counters.json +0 -0
  3280. /package/{build/contracts → abis}/ERC20PresetMinterPauser.json +0 -0
  3281. /package/{build/contracts → abis}/ERC721.json +0 -0
  3282. /package/{build/contracts → abis}/EnumerableMap.json +0 -0
  3283. /package/{build/contracts → abis}/EnumerableSet.json +0 -0
  3284. /package/{build/contracts → abis}/IAccessControlEnumerable.json +0 -0
  3285. /package/{build/contracts → abis}/IERC20Permit.json +0 -0
  3286. /package/{build/contracts → abis}/IERC721Receiver.json +0 -0
  3287. /package/{build/contracts → abis}/IPredictionMarketV3.json +0 -0
  3288. /package/{build/contracts → abis}/Math.json +0 -0
  3289. /package/{build/contracts → abis}/Migrations.json +0 -0
  3290. /package/{build/contracts → abis}/PredictionMarket.json +0 -0
  3291. /package/{build/contracts → abis}/PredictionMarketV2.json +0 -0
  3292. /package/{build/contracts → abis}/PredictionMarketV3.json +0 -0
  3293. /package/{build/contracts → abis}/RealitioERC20.json +0 -0
  3294. /package/{build/contracts → abis}/RealitioForeignArbitrationProxyWithAppeals.json +0 -0
  3295. /package/{build/contracts → abis}/RealitioHomeArbitrationProxy.json +0 -0
  3296. /package/{build/contracts → abis}/RealitioSafeMath256.json +0 -0
  3297. /package/{build/contracts → abis}/RealitioSafeMath32.json +0 -0
  3298. /package/{build/contracts → abis}/SafeMath.json +0 -0
  3299. /package/{build/contracts → abis}/Strings.json +0 -0
  3300. /package/{build/contracts → abis}/WETH9.json +0 -0
  3301. /package/lib/openzeppelin-contracts-upgradeable/{audit → audits}/2018-10.pdf +0 -0
  3302. /package/lib/openzeppelin-contracts-upgradeable/{DOCUMENTATION.md → docs/README.md} +0 -0
  3303. /package/lib/openzeppelin-contracts-upgradeable/{.github → lib/openzeppelin-contracts/.github}/ISSUE_TEMPLATE/feature_request.md +0 -0
  3304. /package/lib/{openzeppelin-contracts/audit → openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/audits}/2018-10.pdf +0 -0
  3305. /package/lib/{openzeppelin-contracts/DOCUMENTATION.md → openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/docs/README.md} +0 -0
  3306. /package/lib/openzeppelin-contracts-upgradeable/{scripts/upgradeable → lib/openzeppelin-contracts/scripts}/git-user-config.sh +0 -0
@@ -0,0 +1,3719 @@
1
+ {
2
+ "algorithm" : "ECDSA",
3
+ "generatorVersion" : "0.8r12",
4
+ "numberOfTests" : 219,
5
+ "header" : [
6
+ "Test vectors of type EcdsaVerify are meant for the verification",
7
+ "of IEEE P1363 encoded ECDSA signatures."
8
+ ],
9
+ "notes" : {
10
+ "EdgeCase" : "Edge case values such as r=1 and s=0 can lead to forgeries if the ECDSA implementation does not check boundaries and computes s^(-1)==0.",
11
+ "PointDuplication" : "Some implementations of ECDSA do not handle duplication and points at infinity correctly. This is a test vector that has been specially crafted to check for such an omission.",
12
+ "SigSize" : "The size of the signature should always be twice the number of bytes of the size of the order. But some libraries accept signatures with less bytes."
13
+ },
14
+ "schema" : "ecdsa_p1363_verify_schema.json",
15
+ "testGroups" : [
16
+ {
17
+ "jwk" : {
18
+ "crv" : "P-256",
19
+ "kid" : "none",
20
+ "kty" : "EC",
21
+ "x" : "KSexBRK64-3c_kZ4KBKLrSkDJpkZ9whgacjE32xzKDg",
22
+ "y" : "x3h5ZOqsAOWSH7FJimD0YGdms9loUAFVjRqXTnNBUT4"
23
+ },
24
+ "key" : {
25
+ "curve" : "secp256r1",
26
+ "keySize" : 256,
27
+ "type" : "EcPublicKey",
28
+ "uncompressed" : "042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e",
29
+ "wx" : "2927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838",
30
+ "wy" : "00c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e"
31
+ },
32
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042927b10512bae3eddcfe467828128bad2903269919f7086069c8c4df6c732838c7787964eaac00e5921fb1498a60f4606766b3d9685001558d1a974e7341513e",
33
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKSexBRK64+3c/kZ4KBKLrSkDJpkZ\n9whgacjE32xzKDjHeHlk6qwA5ZIfsUmKYPRgZ2az2WhQAVWNGpdOc0FRPg==\n-----END PUBLIC KEY-----",
34
+ "sha" : "SHA-256",
35
+ "type" : "EcdsaP1363Verify",
36
+ "tests" : [
37
+ {
38
+ "tcId" : 1,
39
+ "comment" : "signature malleability",
40
+ "msg" : "313233343030",
41
+ "sig" : "2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e184cd60b855d442f5b3c7b11eb6c4e0ae7525fe710fab9aa7c77a67f79e6fadd76",
42
+ "result" : "valid",
43
+ "flags" : []
44
+ },
45
+ {
46
+ "tcId" : 2,
47
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
48
+ "msg" : "313233343030",
49
+ "sig" : "012ba3a8bd6b94d5ed80a6d9d1190a436ebccc0833490686deac8635bcb9bf536900b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db",
50
+ "result" : "invalid",
51
+ "flags" : []
52
+ },
53
+ {
54
+ "tcId" : 3,
55
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
56
+ "msg" : "313233343030",
57
+ "sig" : "d45c5740946b2a147f59262ee6f5bc90bd01ed280528b62b3aed5fc93f06f739b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db",
58
+ "result" : "invalid",
59
+ "flags" : []
60
+ },
61
+ {
62
+ "tcId" : 4,
63
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
64
+ "msg" : "313233343030",
65
+ "sig" : "012ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1800b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db",
66
+ "result" : "invalid",
67
+ "flags" : []
68
+ },
69
+ {
70
+ "tcId" : 5,
71
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
72
+ "msg" : "313233343030",
73
+ "sig" : "d45c5741946b2a137f59262ee6f5bc91001af27a5e1117a64733950642a3d1e8b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db",
74
+ "result" : "invalid",
75
+ "flags" : []
76
+ },
77
+ {
78
+ "tcId" : 6,
79
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
80
+ "msg" : "313233343030",
81
+ "sig" : "002ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1801b329f478a2bbd0a6c384ee1493b1f518276e0e4a5375928d6fcd160c11cb6d2c",
82
+ "result" : "invalid",
83
+ "flags" : []
84
+ },
85
+ {
86
+ "tcId" : 7,
87
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
88
+ "msg" : "313233343030",
89
+ "sig" : "002ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e1801b329f479a2bbd0a5c384ee1493b1f5186a87139cac5df4087c134b49156847db",
90
+ "result" : "invalid",
91
+ "flags" : []
92
+ },
93
+ {
94
+ "tcId" : 8,
95
+ "comment" : "Modified r or s, e.g. by adding or subtracting the order of the group",
96
+ "msg" : "313233343030",
97
+ "sig" : "2ba3a8be6b94d5ec80a6d9d1190a436effe50d85a1eee859b8cc6af9bd5c2e184cd60b865d442f5a3c7b11eb6c4e0ae79578ec6353a20bf783ecb4b6ea97b825",
98
+ "result" : "invalid",
99
+ "flags" : []
100
+ },
101
+ {
102
+ "tcId" : 9,
103
+ "comment" : "Signature with special case values for r and s",
104
+ "msg" : "313233343030",
105
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
106
+ "result" : "invalid",
107
+ "flags" : [
108
+ "EdgeCase"
109
+ ]
110
+ },
111
+ {
112
+ "tcId" : 10,
113
+ "comment" : "Signature with special case values for r and s",
114
+ "msg" : "313233343030",
115
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001",
116
+ "result" : "invalid",
117
+ "flags" : [
118
+ "EdgeCase"
119
+ ]
120
+ },
121
+ {
122
+ "tcId" : 11,
123
+ "comment" : "Signature with special case values for r and s",
124
+ "msg" : "313233343030",
125
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000000ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
126
+ "result" : "invalid",
127
+ "flags" : [
128
+ "EdgeCase"
129
+ ]
130
+ },
131
+ {
132
+ "tcId" : 12,
133
+ "comment" : "Signature with special case values for r and s",
134
+ "msg" : "313233343030",
135
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000000ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
136
+ "result" : "invalid",
137
+ "flags" : [
138
+ "EdgeCase"
139
+ ]
140
+ },
141
+ {
142
+ "tcId" : 13,
143
+ "comment" : "Signature with special case values for r and s",
144
+ "msg" : "313233343030",
145
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000000ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
146
+ "result" : "invalid",
147
+ "flags" : [
148
+ "EdgeCase"
149
+ ]
150
+ },
151
+ {
152
+ "tcId" : 14,
153
+ "comment" : "Signature with special case values for r and s",
154
+ "msg" : "313233343030",
155
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
156
+ "result" : "invalid",
157
+ "flags" : [
158
+ "EdgeCase"
159
+ ]
160
+ },
161
+ {
162
+ "tcId" : 15,
163
+ "comment" : "Signature with special case values for r and s",
164
+ "msg" : "313233343030",
165
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000000ffffffff00000001000000000000000000000001000000000000000000000000",
166
+ "result" : "invalid",
167
+ "flags" : [
168
+ "EdgeCase"
169
+ ]
170
+ },
171
+ {
172
+ "tcId" : 16,
173
+ "comment" : "Signature with special case values for r and s",
174
+ "msg" : "313233343030",
175
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000",
176
+ "result" : "invalid",
177
+ "flags" : [
178
+ "EdgeCase"
179
+ ]
180
+ },
181
+ {
182
+ "tcId" : 17,
183
+ "comment" : "Signature with special case values for r and s",
184
+ "msg" : "313233343030",
185
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001",
186
+ "result" : "invalid",
187
+ "flags" : [
188
+ "EdgeCase"
189
+ ]
190
+ },
191
+ {
192
+ "tcId" : 18,
193
+ "comment" : "Signature with special case values for r and s",
194
+ "msg" : "313233343030",
195
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000001ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
196
+ "result" : "invalid",
197
+ "flags" : [
198
+ "EdgeCase"
199
+ ]
200
+ },
201
+ {
202
+ "tcId" : 19,
203
+ "comment" : "Signature with special case values for r and s",
204
+ "msg" : "313233343030",
205
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000001ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
206
+ "result" : "invalid",
207
+ "flags" : [
208
+ "EdgeCase"
209
+ ]
210
+ },
211
+ {
212
+ "tcId" : 20,
213
+ "comment" : "Signature with special case values for r and s",
214
+ "msg" : "313233343030",
215
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000001ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
216
+ "result" : "invalid",
217
+ "flags" : [
218
+ "EdgeCase"
219
+ ]
220
+ },
221
+ {
222
+ "tcId" : 21,
223
+ "comment" : "Signature with special case values for r and s",
224
+ "msg" : "313233343030",
225
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000001ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
226
+ "result" : "invalid",
227
+ "flags" : [
228
+ "EdgeCase"
229
+ ]
230
+ },
231
+ {
232
+ "tcId" : 22,
233
+ "comment" : "Signature with special case values for r and s",
234
+ "msg" : "313233343030",
235
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000001ffffffff00000001000000000000000000000001000000000000000000000000",
236
+ "result" : "invalid",
237
+ "flags" : [
238
+ "EdgeCase"
239
+ ]
240
+ },
241
+ {
242
+ "tcId" : 23,
243
+ "comment" : "Signature with special case values for r and s",
244
+ "msg" : "313233343030",
245
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510000000000000000000000000000000000000000000000000000000000000000",
246
+ "result" : "invalid",
247
+ "flags" : [
248
+ "EdgeCase"
249
+ ]
250
+ },
251
+ {
252
+ "tcId" : 24,
253
+ "comment" : "Signature with special case values for r and s",
254
+ "msg" : "313233343030",
255
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325510000000000000000000000000000000000000000000000000000000000000001",
256
+ "result" : "invalid",
257
+ "flags" : [
258
+ "EdgeCase"
259
+ ]
260
+ },
261
+ {
262
+ "tcId" : 25,
263
+ "comment" : "Signature with special case values for r and s",
264
+ "msg" : "313233343030",
265
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
266
+ "result" : "invalid",
267
+ "flags" : [
268
+ "EdgeCase"
269
+ ]
270
+ },
271
+ {
272
+ "tcId" : 26,
273
+ "comment" : "Signature with special case values for r and s",
274
+ "msg" : "313233343030",
275
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
276
+ "result" : "invalid",
277
+ "flags" : [
278
+ "EdgeCase"
279
+ ]
280
+ },
281
+ {
282
+ "tcId" : 27,
283
+ "comment" : "Signature with special case values for r and s",
284
+ "msg" : "313233343030",
285
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
286
+ "result" : "invalid",
287
+ "flags" : [
288
+ "EdgeCase"
289
+ ]
290
+ },
291
+ {
292
+ "tcId" : 28,
293
+ "comment" : "Signature with special case values for r and s",
294
+ "msg" : "313233343030",
295
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
296
+ "result" : "invalid",
297
+ "flags" : [
298
+ "EdgeCase"
299
+ ]
300
+ },
301
+ {
302
+ "tcId" : 29,
303
+ "comment" : "Signature with special case values for r and s",
304
+ "msg" : "313233343030",
305
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551ffffffff00000001000000000000000000000001000000000000000000000000",
306
+ "result" : "invalid",
307
+ "flags" : [
308
+ "EdgeCase"
309
+ ]
310
+ },
311
+ {
312
+ "tcId" : 30,
313
+ "comment" : "Signature with special case values for r and s",
314
+ "msg" : "313233343030",
315
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325500000000000000000000000000000000000000000000000000000000000000000",
316
+ "result" : "invalid",
317
+ "flags" : [
318
+ "EdgeCase"
319
+ ]
320
+ },
321
+ {
322
+ "tcId" : 31,
323
+ "comment" : "Signature with special case values for r and s",
324
+ "msg" : "313233343030",
325
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325500000000000000000000000000000000000000000000000000000000000000001",
326
+ "result" : "invalid",
327
+ "flags" : [
328
+ "EdgeCase"
329
+ ]
330
+ },
331
+ {
332
+ "tcId" : 32,
333
+ "comment" : "Signature with special case values for r and s",
334
+ "msg" : "313233343030",
335
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
336
+ "result" : "invalid",
337
+ "flags" : [
338
+ "EdgeCase"
339
+ ]
340
+ },
341
+ {
342
+ "tcId" : 33,
343
+ "comment" : "Signature with special case values for r and s",
344
+ "msg" : "313233343030",
345
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
346
+ "result" : "invalid",
347
+ "flags" : [
348
+ "EdgeCase"
349
+ ]
350
+ },
351
+ {
352
+ "tcId" : 34,
353
+ "comment" : "Signature with special case values for r and s",
354
+ "msg" : "313233343030",
355
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
356
+ "result" : "invalid",
357
+ "flags" : [
358
+ "EdgeCase"
359
+ ]
360
+ },
361
+ {
362
+ "tcId" : 35,
363
+ "comment" : "Signature with special case values for r and s",
364
+ "msg" : "313233343030",
365
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
366
+ "result" : "invalid",
367
+ "flags" : [
368
+ "EdgeCase"
369
+ ]
370
+ },
371
+ {
372
+ "tcId" : 36,
373
+ "comment" : "Signature with special case values for r and s",
374
+ "msg" : "313233343030",
375
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550ffffffff00000001000000000000000000000001000000000000000000000000",
376
+ "result" : "invalid",
377
+ "flags" : [
378
+ "EdgeCase"
379
+ ]
380
+ },
381
+ {
382
+ "tcId" : 37,
383
+ "comment" : "Signature with special case values for r and s",
384
+ "msg" : "313233343030",
385
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325520000000000000000000000000000000000000000000000000000000000000000",
386
+ "result" : "invalid",
387
+ "flags" : [
388
+ "EdgeCase"
389
+ ]
390
+ },
391
+ {
392
+ "tcId" : 38,
393
+ "comment" : "Signature with special case values for r and s",
394
+ "msg" : "313233343030",
395
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325520000000000000000000000000000000000000000000000000000000000000001",
396
+ "result" : "invalid",
397
+ "flags" : [
398
+ "EdgeCase"
399
+ ]
400
+ },
401
+ {
402
+ "tcId" : 39,
403
+ "comment" : "Signature with special case values for r and s",
404
+ "msg" : "313233343030",
405
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
406
+ "result" : "invalid",
407
+ "flags" : [
408
+ "EdgeCase"
409
+ ]
410
+ },
411
+ {
412
+ "tcId" : 40,
413
+ "comment" : "Signature with special case values for r and s",
414
+ "msg" : "313233343030",
415
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
416
+ "result" : "invalid",
417
+ "flags" : [
418
+ "EdgeCase"
419
+ ]
420
+ },
421
+ {
422
+ "tcId" : 41,
423
+ "comment" : "Signature with special case values for r and s",
424
+ "msg" : "313233343030",
425
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
426
+ "result" : "invalid",
427
+ "flags" : [
428
+ "EdgeCase"
429
+ ]
430
+ },
431
+ {
432
+ "tcId" : 42,
433
+ "comment" : "Signature with special case values for r and s",
434
+ "msg" : "313233343030",
435
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
436
+ "result" : "invalid",
437
+ "flags" : [
438
+ "EdgeCase"
439
+ ]
440
+ },
441
+ {
442
+ "tcId" : 43,
443
+ "comment" : "Signature with special case values for r and s",
444
+ "msg" : "313233343030",
445
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552ffffffff00000001000000000000000000000001000000000000000000000000",
446
+ "result" : "invalid",
447
+ "flags" : [
448
+ "EdgeCase"
449
+ ]
450
+ },
451
+ {
452
+ "tcId" : 44,
453
+ "comment" : "Signature with special case values for r and s",
454
+ "msg" : "313233343030",
455
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000000",
456
+ "result" : "invalid",
457
+ "flags" : [
458
+ "EdgeCase"
459
+ ]
460
+ },
461
+ {
462
+ "tcId" : 45,
463
+ "comment" : "Signature with special case values for r and s",
464
+ "msg" : "313233343030",
465
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000000000000001",
466
+ "result" : "invalid",
467
+ "flags" : [
468
+ "EdgeCase"
469
+ ]
470
+ },
471
+ {
472
+ "tcId" : 46,
473
+ "comment" : "Signature with special case values for r and s",
474
+ "msg" : "313233343030",
475
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
476
+ "result" : "invalid",
477
+ "flags" : [
478
+ "EdgeCase"
479
+ ]
480
+ },
481
+ {
482
+ "tcId" : 47,
483
+ "comment" : "Signature with special case values for r and s",
484
+ "msg" : "313233343030",
485
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
486
+ "result" : "invalid",
487
+ "flags" : [
488
+ "EdgeCase"
489
+ ]
490
+ },
491
+ {
492
+ "tcId" : 48,
493
+ "comment" : "Signature with special case values for r and s",
494
+ "msg" : "313233343030",
495
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
496
+ "result" : "invalid",
497
+ "flags" : [
498
+ "EdgeCase"
499
+ ]
500
+ },
501
+ {
502
+ "tcId" : 49,
503
+ "comment" : "Signature with special case values for r and s",
504
+ "msg" : "313233343030",
505
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
506
+ "result" : "invalid",
507
+ "flags" : [
508
+ "EdgeCase"
509
+ ]
510
+ },
511
+ {
512
+ "tcId" : 50,
513
+ "comment" : "Signature with special case values for r and s",
514
+ "msg" : "313233343030",
515
+ "sig" : "ffffffff00000001000000000000000000000000ffffffffffffffffffffffffffffffff00000001000000000000000000000001000000000000000000000000",
516
+ "result" : "invalid",
517
+ "flags" : [
518
+ "EdgeCase"
519
+ ]
520
+ },
521
+ {
522
+ "tcId" : 51,
523
+ "comment" : "Signature with special case values for r and s",
524
+ "msg" : "313233343030",
525
+ "sig" : "ffffffff000000010000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
526
+ "result" : "invalid",
527
+ "flags" : [
528
+ "EdgeCase"
529
+ ]
530
+ },
531
+ {
532
+ "tcId" : 52,
533
+ "comment" : "Signature with special case values for r and s",
534
+ "msg" : "313233343030",
535
+ "sig" : "ffffffff000000010000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000001",
536
+ "result" : "invalid",
537
+ "flags" : [
538
+ "EdgeCase"
539
+ ]
540
+ },
541
+ {
542
+ "tcId" : 53,
543
+ "comment" : "Signature with special case values for r and s",
544
+ "msg" : "313233343030",
545
+ "sig" : "ffffffff00000001000000000000000000000001000000000000000000000000ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551",
546
+ "result" : "invalid",
547
+ "flags" : [
548
+ "EdgeCase"
549
+ ]
550
+ },
551
+ {
552
+ "tcId" : 54,
553
+ "comment" : "Signature with special case values for r and s",
554
+ "msg" : "313233343030",
555
+ "sig" : "ffffffff00000001000000000000000000000001000000000000000000000000ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632550",
556
+ "result" : "invalid",
557
+ "flags" : [
558
+ "EdgeCase"
559
+ ]
560
+ },
561
+ {
562
+ "tcId" : 55,
563
+ "comment" : "Signature with special case values for r and s",
564
+ "msg" : "313233343030",
565
+ "sig" : "ffffffff00000001000000000000000000000001000000000000000000000000ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632552",
566
+ "result" : "invalid",
567
+ "flags" : [
568
+ "EdgeCase"
569
+ ]
570
+ },
571
+ {
572
+ "tcId" : 56,
573
+ "comment" : "Signature with special case values for r and s",
574
+ "msg" : "313233343030",
575
+ "sig" : "ffffffff00000001000000000000000000000001000000000000000000000000ffffffff00000001000000000000000000000000ffffffffffffffffffffffff",
576
+ "result" : "invalid",
577
+ "flags" : [
578
+ "EdgeCase"
579
+ ]
580
+ },
581
+ {
582
+ "tcId" : 57,
583
+ "comment" : "Signature with special case values for r and s",
584
+ "msg" : "313233343030",
585
+ "sig" : "ffffffff00000001000000000000000000000001000000000000000000000000ffffffff00000001000000000000000000000001000000000000000000000000",
586
+ "result" : "invalid",
587
+ "flags" : [
588
+ "EdgeCase"
589
+ ]
590
+ },
591
+ {
592
+ "tcId" : 58,
593
+ "comment" : "Edge case for Shamir multiplication",
594
+ "msg" : "3639383139",
595
+ "sig" : "64a1aab5000d0e804f3e2fc02bdee9be8ff312334e2ba16d11547c97711c898e6af015971cc30be6d1a206d4e013e0997772a2f91d73286ffd683b9bb2cf4f1b",
596
+ "result" : "valid",
597
+ "flags" : []
598
+ },
599
+ {
600
+ "tcId" : 59,
601
+ "comment" : "special case hash",
602
+ "msg" : "343236343739373234",
603
+ "sig" : "16aea964a2f6506d6f78c81c91fc7e8bded7d397738448de1e19a0ec580bf266252cd762130c6667cfe8b7bc47d27d78391e8e80c578d1cd38c3ff033be928e9",
604
+ "result" : "valid",
605
+ "flags" : []
606
+ },
607
+ {
608
+ "tcId" : 60,
609
+ "comment" : "special case hash",
610
+ "msg" : "37313338363834383931",
611
+ "sig" : "9cc98be2347d469bf476dfc26b9b733df2d26d6ef524af917c665baccb23c882093496459effe2d8d70727b82462f61d0ec1b7847929d10ea631dacb16b56c32",
612
+ "result" : "valid",
613
+ "flags" : []
614
+ },
615
+ {
616
+ "tcId" : 61,
617
+ "comment" : "special case hash",
618
+ "msg" : "3130333539333331363638",
619
+ "sig" : "73b3c90ecd390028058164524dde892703dce3dea0d53fa8093999f07ab8aa432f67b0b8e20636695bb7d8bf0a651c802ed25a395387b5f4188c0c4075c88634",
620
+ "result" : "valid",
621
+ "flags" : []
622
+ },
623
+ {
624
+ "tcId" : 62,
625
+ "comment" : "special case hash",
626
+ "msg" : "33393439343031323135",
627
+ "sig" : "bfab3098252847b328fadf2f89b95c851a7f0eb390763378f37e90119d5ba3ddbdd64e234e832b1067c2d058ccb44d978195ccebb65c2aaf1e2da9b8b4987e3b",
628
+ "result" : "valid",
629
+ "flags" : []
630
+ },
631
+ {
632
+ "tcId" : 63,
633
+ "comment" : "special case hash",
634
+ "msg" : "31333434323933303739",
635
+ "sig" : "204a9784074b246d8bf8bf04a4ceb1c1f1c9aaab168b1596d17093c5cd21d2cd51cce41670636783dc06a759c8847868a406c2506fe17975582fe648d1d88b52",
636
+ "result" : "valid",
637
+ "flags" : []
638
+ },
639
+ {
640
+ "tcId" : 64,
641
+ "comment" : "special case hash",
642
+ "msg" : "33373036323131373132",
643
+ "sig" : "ed66dc34f551ac82f63d4aa4f81fe2cb0031a91d1314f835027bca0f1ceeaa0399ca123aa09b13cd194a422e18d5fda167623c3f6e5d4d6abb8953d67c0c48c7",
644
+ "result" : "valid",
645
+ "flags" : []
646
+ },
647
+ {
648
+ "tcId" : 65,
649
+ "comment" : "special case hash",
650
+ "msg" : "333433363838373132",
651
+ "sig" : "060b700bef665c68899d44f2356a578d126b062023ccc3c056bf0f60a237012b8d186c027832965f4fcc78a3366ca95dedbb410cbef3f26d6be5d581c11d3610",
652
+ "result" : "valid",
653
+ "flags" : []
654
+ },
655
+ {
656
+ "tcId" : 66,
657
+ "comment" : "special case hash",
658
+ "msg" : "31333531353330333730",
659
+ "sig" : "9f6adfe8d5eb5b2c24d7aa7934b6cf29c93ea76cd313c9132bb0c8e38c96831db26a9c9e40e55ee0890c944cf271756c906a33e66b5bd15e051593883b5e9902",
660
+ "result" : "valid",
661
+ "flags" : []
662
+ },
663
+ {
664
+ "tcId" : 67,
665
+ "comment" : "special case hash",
666
+ "msg" : "36353533323033313236",
667
+ "sig" : "a1af03ca91677b673ad2f33615e56174a1abf6da168cebfa8868f4ba273f16b720aa73ffe48afa6435cd258b173d0c2377d69022e7d098d75caf24c8c5e06b1c",
668
+ "result" : "valid",
669
+ "flags" : []
670
+ },
671
+ {
672
+ "tcId" : 68,
673
+ "comment" : "special case hash",
674
+ "msg" : "31353634333436363033",
675
+ "sig" : "fdc70602766f8eed11a6c99a71c973d5659355507b843da6e327a28c11893db93df5349688a085b137b1eacf456a9e9e0f6d15ec0078ca60a7f83f2b10d21350",
676
+ "result" : "valid",
677
+ "flags" : []
678
+ },
679
+ {
680
+ "tcId" : 69,
681
+ "comment" : "special case hash",
682
+ "msg" : "34343239353339313137",
683
+ "sig" : "b516a314f2fce530d6537f6a6c49966c23456f63c643cf8e0dc738f7b876e675d39ffd033c92b6d717dd536fbc5efdf1967c4bd80954479ba66b0120cd16fff2",
684
+ "result" : "valid",
685
+ "flags" : []
686
+ },
687
+ {
688
+ "tcId" : 70,
689
+ "comment" : "special case hash",
690
+ "msg" : "3130393533323631333531",
691
+ "sig" : "3b2cbf046eac45842ecb7984d475831582717bebb6492fd0a485c101e29ff0a84c9b7b47a98b0f82de512bc9313aaf51701099cac5f76e68c8595fc1c1d99258",
692
+ "result" : "valid",
693
+ "flags" : []
694
+ },
695
+ {
696
+ "tcId" : 71,
697
+ "comment" : "special case hash",
698
+ "msg" : "35393837333530303431",
699
+ "sig" : "30c87d35e636f540841f14af54e2f9edd79d0312cfa1ab656c3fb15bfde48dcf47c15a5a82d24b75c85a692bd6ecafeb71409ede23efd08e0db9abf6340677ed",
700
+ "result" : "valid",
701
+ "flags" : []
702
+ },
703
+ {
704
+ "tcId" : 72,
705
+ "comment" : "special case hash",
706
+ "msg" : "33343633303036383738",
707
+ "sig" : "38686ff0fda2cef6bc43b58cfe6647b9e2e8176d168dec3c68ff262113760f52067ec3b651f422669601662167fa8717e976e2db5e6a4cf7c2ddabb3fde9d67d",
708
+ "result" : "valid",
709
+ "flags" : []
710
+ },
711
+ {
712
+ "tcId" : 73,
713
+ "comment" : "special case hash",
714
+ "msg" : "39383137333230323837",
715
+ "sig" : "44a3e23bf314f2b344fc25c7f2de8b6af3e17d27f5ee844b225985ab6e2775cf2d48e223205e98041ddc87be532abed584f0411f5729500493c9cc3f4dd15e86",
716
+ "result" : "valid",
717
+ "flags" : []
718
+ },
719
+ {
720
+ "tcId" : 74,
721
+ "comment" : "special case hash",
722
+ "msg" : "33323232303431303436",
723
+ "sig" : "2ded5b7ec8e90e7bf11f967a3d95110c41b99db3b5aa8d330eb9d638781688e97d5792c53628155e1bfc46fb1a67e3088de049c328ae1f44ec69238a009808f9",
724
+ "result" : "valid",
725
+ "flags" : []
726
+ },
727
+ {
728
+ "tcId" : 75,
729
+ "comment" : "special case hash",
730
+ "msg" : "36363636333037313034",
731
+ "sig" : "bdae7bcb580bf335efd3bc3d31870f923eaccafcd40ec2f605976f15137d8b8ff6dfa12f19e525270b0106eecfe257499f373a4fb318994f24838122ce7ec3c7",
732
+ "result" : "valid",
733
+ "flags" : []
734
+ },
735
+ {
736
+ "tcId" : 76,
737
+ "comment" : "special case hash",
738
+ "msg" : "31303335393531383938",
739
+ "sig" : "50f9c4f0cd6940e162720957ffff513799209b78596956d21ece251c2401f1c6d7033a0a787d338e889defaaabb106b95a4355e411a59c32aa5167dfab244726",
740
+ "result" : "valid",
741
+ "flags" : []
742
+ },
743
+ {
744
+ "tcId" : 77,
745
+ "comment" : "special case hash",
746
+ "msg" : "31383436353937313935",
747
+ "sig" : "f612820687604fa01906066a378d67540982e29575d019aabe90924ead5c860d3f9367702dd7dd4f75ea98afd20e328a1a99f4857b316525328230ce294b0fef",
748
+ "result" : "valid",
749
+ "flags" : []
750
+ },
751
+ {
752
+ "tcId" : 78,
753
+ "comment" : "special case hash",
754
+ "msg" : "33313336303436313839",
755
+ "sig" : "9505e407657d6e8bc93db5da7aa6f5081f61980c1949f56b0f2f507da5782a7ac60d31904e3669738ffbeccab6c3656c08e0ed5cb92b3cfa5e7f71784f9c5021",
756
+ "result" : "valid",
757
+ "flags" : []
758
+ },
759
+ {
760
+ "tcId" : 79,
761
+ "comment" : "special case hash",
762
+ "msg" : "32363633373834323534",
763
+ "sig" : "bbd16fbbb656b6d0d83e6a7787cd691b08735aed371732723e1c68a40404517d9d8e35dba96028b7787d91315be675877d2d097be5e8ee34560e3e7fd25c0f00",
764
+ "result" : "valid",
765
+ "flags" : []
766
+ },
767
+ {
768
+ "tcId" : 80,
769
+ "comment" : "special case hash",
770
+ "msg" : "31363532313030353234",
771
+ "sig" : "2ec9760122db98fd06ea76848d35a6da442d2ceef7559a30cf57c61e92df327e7ab271da90859479701fccf86e462ee3393fb6814c27b760c4963625c0a19878",
772
+ "result" : "valid",
773
+ "flags" : []
774
+ },
775
+ {
776
+ "tcId" : 81,
777
+ "comment" : "special case hash",
778
+ "msg" : "35373438303831363936",
779
+ "sig" : "54e76b7683b6650baa6a7fc49b1c51eed9ba9dd463221f7a4f1005a89fe00c592ea076886c773eb937ec1cc8374b7915cfd11b1c1ae1166152f2f7806a31c8fd",
780
+ "result" : "valid",
781
+ "flags" : []
782
+ },
783
+ {
784
+ "tcId" : 82,
785
+ "comment" : "special case hash",
786
+ "msg" : "36333433393133343638",
787
+ "sig" : "5291deaf24659ffbbce6e3c26f6021097a74abdbb69be4fb10419c0c496c946665d6fcf336d27cc7cdb982bb4e4ecef5827f84742f29f10abf83469270a03dc3",
788
+ "result" : "valid",
789
+ "flags" : []
790
+ },
791
+ {
792
+ "tcId" : 83,
793
+ "comment" : "special case hash",
794
+ "msg" : "31353431313033353938",
795
+ "sig" : "207a3241812d75d947419dc58efb05e8003b33fc17eb50f9d15166a88479f107cdee749f2e492b213ce80b32d0574f62f1c5d70793cf55e382d5caadf7592767",
796
+ "result" : "valid",
797
+ "flags" : []
798
+ },
799
+ {
800
+ "tcId" : 84,
801
+ "comment" : "special case hash",
802
+ "msg" : "3130343738353830313238",
803
+ "sig" : "6554e49f82a855204328ac94913bf01bbe84437a355a0a37c0dee3cf81aa7728aea00de2507ddaf5c94e1e126980d3df16250a2eaebc8be486effe7f22b4f929",
804
+ "result" : "valid",
805
+ "flags" : []
806
+ },
807
+ {
808
+ "tcId" : 85,
809
+ "comment" : "special case hash",
810
+ "msg" : "3130353336323835353638",
811
+ "sig" : "a54c5062648339d2bff06f71c88216c26c6e19b4d80a8c602990ac82707efdfce99bbe7fcfafae3e69fd016777517aa01056317f467ad09aff09be73c9731b0d",
812
+ "result" : "valid",
813
+ "flags" : []
814
+ },
815
+ {
816
+ "tcId" : 86,
817
+ "comment" : "special case hash",
818
+ "msg" : "393533393034313035",
819
+ "sig" : "975bd7157a8d363b309f1f444012b1a1d23096593133e71b4ca8b059cff37eaf7faa7a28b1c822baa241793f2abc930bd4c69840fe090f2aacc46786bf919622",
820
+ "result" : "valid",
821
+ "flags" : []
822
+ },
823
+ {
824
+ "tcId" : 87,
825
+ "comment" : "special case hash",
826
+ "msg" : "393738383438303339",
827
+ "sig" : "5694a6f84b8f875c276afd2ebcfe4d61de9ec90305afb1357b95b3e0da43885e0dffad9ffd0b757d8051dec02ebdf70d8ee2dc5c7870c0823b6ccc7c679cbaa4",
828
+ "result" : "valid",
829
+ "flags" : []
830
+ },
831
+ {
832
+ "tcId" : 88,
833
+ "comment" : "special case hash",
834
+ "msg" : "33363130363732343432",
835
+ "sig" : "a0c30e8026fdb2b4b4968a27d16a6d08f7098f1a98d21620d7454ba9790f1ba65e470453a8a399f15baf463f9deceb53acc5ca64459149688bd2760c65424339",
836
+ "result" : "valid",
837
+ "flags" : []
838
+ },
839
+ {
840
+ "tcId" : 89,
841
+ "comment" : "special case hash",
842
+ "msg" : "31303534323430373035",
843
+ "sig" : "614ea84acf736527dd73602cd4bb4eea1dfebebd5ad8aca52aa0228cf7b99a88737cc85f5f2d2f60d1b8183f3ed490e4de14368e96a9482c2a4dd193195c902f",
844
+ "result" : "valid",
845
+ "flags" : []
846
+ },
847
+ {
848
+ "tcId" : 90,
849
+ "comment" : "special case hash",
850
+ "msg" : "35313734343438313937",
851
+ "sig" : "bead6734ebe44b810d3fb2ea00b1732945377338febfd439a8d74dfbd0f942fa6bb18eae36616a7d3cad35919fd21a8af4bbe7a10f73b3e036a46b103ef56e2a",
852
+ "result" : "valid",
853
+ "flags" : []
854
+ },
855
+ {
856
+ "tcId" : 91,
857
+ "comment" : "special case hash",
858
+ "msg" : "31393637353631323531",
859
+ "sig" : "499625479e161dacd4db9d9ce64854c98d922cbf212703e9654fae182df9bad242c177cf37b8193a0131108d97819edd9439936028864ac195b64fca76d9d693",
860
+ "result" : "valid",
861
+ "flags" : []
862
+ },
863
+ {
864
+ "tcId" : 92,
865
+ "comment" : "special case hash",
866
+ "msg" : "33343437323533333433",
867
+ "sig" : "08f16b8093a8fb4d66a2c8065b541b3d31e3bfe694f6b89c50fb1aaa6ff6c9b29d6455e2d5d1779748573b611cb95d4a21f967410399b39b535ba3e5af81ca2e",
868
+ "result" : "valid",
869
+ "flags" : []
870
+ },
871
+ {
872
+ "tcId" : 93,
873
+ "comment" : "special case hash",
874
+ "msg" : "333638323634333138",
875
+ "sig" : "be26231b6191658a19dd72ddb99ed8f8c579b6938d19bce8eed8dc2b338cb5f8e1d9a32ee56cffed37f0f22b2dcb57d5c943c14f79694a03b9c5e96952575c89",
876
+ "result" : "valid",
877
+ "flags" : []
878
+ },
879
+ {
880
+ "tcId" : 94,
881
+ "comment" : "special case hash",
882
+ "msg" : "33323631313938363038",
883
+ "sig" : "15e76880898316b16204ac920a02d58045f36a229d4aa4f812638c455abe0443e74d357d3fcb5c8c5337bd6aba4178b455ca10e226e13f9638196506a1939123",
884
+ "result" : "valid",
885
+ "flags" : []
886
+ },
887
+ {
888
+ "tcId" : 95,
889
+ "comment" : "special case hash",
890
+ "msg" : "39363738373831303934",
891
+ "sig" : "352ecb53f8df2c503a45f9846fc28d1d31e6307d3ddbffc1132315cc07f16dad1348dfa9c482c558e1d05c5242ca1c39436726ecd28258b1899792887dd0a3c6",
892
+ "result" : "valid",
893
+ "flags" : []
894
+ },
895
+ {
896
+ "tcId" : 96,
897
+ "comment" : "special case hash",
898
+ "msg" : "34393538383233383233",
899
+ "sig" : "4a40801a7e606ba78a0da9882ab23c7677b8642349ed3d652c5bfa5f2a9558fb3a49b64848d682ef7f605f2832f7384bdc24ed2925825bf8ea77dc5981725782",
900
+ "result" : "valid",
901
+ "flags" : []
902
+ },
903
+ {
904
+ "tcId" : 97,
905
+ "comment" : "special case hash",
906
+ "msg" : "383234363337383337",
907
+ "sig" : "eacc5e1a8304a74d2be412b078924b3bb3511bac855c05c9e5e9e44df3d61e967451cd8e18d6ed1885dd827714847f96ec4bb0ed4c36ce9808db8f714204f6d1",
908
+ "result" : "valid",
909
+ "flags" : []
910
+ },
911
+ {
912
+ "tcId" : 98,
913
+ "comment" : "special case hash",
914
+ "msg" : "3131303230383333373736",
915
+ "sig" : "2f7a5e9e5771d424f30f67fdab61e8ce4f8cd1214882adb65f7de94c31577052ac4e69808345809b44acb0b2bd889175fb75dd050c5a449ab9528f8f78daa10c",
916
+ "result" : "valid",
917
+ "flags" : []
918
+ },
919
+ {
920
+ "tcId" : 99,
921
+ "comment" : "special case hash",
922
+ "msg" : "313333383731363438",
923
+ "sig" : "ffcda40f792ce4d93e7e0f0e95e1a2147dddd7f6487621c30a03d710b330021979938b55f8a17f7ed7ba9ade8f2065a1fa77618f0b67add8d58c422c2453a49a",
924
+ "result" : "valid",
925
+ "flags" : []
926
+ },
927
+ {
928
+ "tcId" : 100,
929
+ "comment" : "special case hash",
930
+ "msg" : "333232313434313632",
931
+ "sig" : "81f2359c4faba6b53d3e8c8c3fcc16a948350f7ab3a588b28c17603a431e39a8cd6f6a5cc3b55ead0ff695d06c6860b509e46d99fccefb9f7f9e101857f74300",
932
+ "result" : "valid",
933
+ "flags" : []
934
+ },
935
+ {
936
+ "tcId" : 101,
937
+ "comment" : "special case hash",
938
+ "msg" : "3130363836363535353436",
939
+ "sig" : "dfc8bf520445cbb8ee1596fb073ea283ea130251a6fdffa5c3f5f2aaf75ca808048e33efce147c9dd92823640e338e68bfd7d0dc7a4905b3a7ac711e577e90e7",
940
+ "result" : "valid",
941
+ "flags" : []
942
+ },
943
+ {
944
+ "tcId" : 102,
945
+ "comment" : "special case hash",
946
+ "msg" : "3632313535323436",
947
+ "sig" : "ad019f74c6941d20efda70b46c53db166503a0e393e932f688227688ba6a576293320eb7ca0710255346bdbb3102cdcf7964ef2e0988e712bc05efe16c199345",
948
+ "result" : "valid",
949
+ "flags" : []
950
+ },
951
+ {
952
+ "tcId" : 103,
953
+ "comment" : "special case hash",
954
+ "msg" : "37303330383138373734",
955
+ "sig" : "ac8096842e8add68c34e78ce11dd71e4b54316bd3ebf7fffdeb7bd5a3ebc1883f5ca2f4f23d674502d4caf85d187215d36e3ce9f0ce219709f21a3aac003b7a8",
956
+ "result" : "valid",
957
+ "flags" : []
958
+ },
959
+ {
960
+ "tcId" : 104,
961
+ "comment" : "special case hash",
962
+ "msg" : "35393234353233373434",
963
+ "sig" : "677b2d3a59b18a5ff939b70ea002250889ddcd7b7b9d776854b4943693fb92f76b4ba856ade7677bf30307b21f3ccda35d2f63aee81efd0bab6972cc0795db55",
964
+ "result" : "valid",
965
+ "flags" : []
966
+ },
967
+ {
968
+ "tcId" : 105,
969
+ "comment" : "special case hash",
970
+ "msg" : "31343935353836363231",
971
+ "sig" : "479e1ded14bcaed0379ba8e1b73d3115d84d31d4b7c30e1f05e1fc0d5957cfb0918f79e35b3d89487cf634a4f05b2e0c30857ca879f97c771e877027355b2443",
972
+ "result" : "valid",
973
+ "flags" : []
974
+ },
975
+ {
976
+ "tcId" : 106,
977
+ "comment" : "special case hash",
978
+ "msg" : "34303035333134343036",
979
+ "sig" : "43dfccd0edb9e280d9a58f01164d55c3d711e14b12ac5cf3b64840ead512a0a31dbe33fa8ba84533cd5c4934365b3442ca1174899b78ef9a3199f49584389772",
980
+ "result" : "valid",
981
+ "flags" : []
982
+ },
983
+ {
984
+ "tcId" : 107,
985
+ "comment" : "special case hash",
986
+ "msg" : "33303936343537353132",
987
+ "sig" : "5b09ab637bd4caf0f4c7c7e4bca592fea20e9087c259d26a38bb4085f0bbff1145b7eb467b6748af618e9d80d6fdcd6aa24964e5a13f885bca8101de08eb0d75",
988
+ "result" : "valid",
989
+ "flags" : []
990
+ },
991
+ {
992
+ "tcId" : 108,
993
+ "comment" : "special case hash",
994
+ "msg" : "32373834303235363230",
995
+ "sig" : "5e9b1c5a028070df5728c5c8af9b74e0667afa570a6cfa0114a5039ed15ee06fb1360907e2d9785ead362bb8d7bd661b6c29eeffd3c5037744edaeb9ad990c20",
996
+ "result" : "valid",
997
+ "flags" : []
998
+ },
999
+ {
1000
+ "tcId" : 109,
1001
+ "comment" : "special case hash",
1002
+ "msg" : "32363138373837343138",
1003
+ "sig" : "0671a0a85c2b72d54a2fb0990e34538b4890050f5a5712f6d1a7a5fb8578f32edb1846bab6b7361479ab9c3285ca41291808f27fd5bd4fdac720e5854713694c",
1004
+ "result" : "valid",
1005
+ "flags" : []
1006
+ },
1007
+ {
1008
+ "tcId" : 110,
1009
+ "comment" : "special case hash",
1010
+ "msg" : "31363432363235323632",
1011
+ "sig" : "7673f8526748446477dbbb0590a45492c5d7d69859d301abbaedb35b2095103a3dc70ddf9c6b524d886bed9e6af02e0e4dec0d417a414fed3807ef4422913d7c",
1012
+ "result" : "valid",
1013
+ "flags" : []
1014
+ },
1015
+ {
1016
+ "tcId" : 111,
1017
+ "comment" : "special case hash",
1018
+ "msg" : "36383234313839343336",
1019
+ "sig" : "7f085441070ecd2bb21285089ebb1aa6450d1a06c36d3ff39dfd657a796d12b5249712012029870a2459d18d47da9aa492a5e6cb4b2d8dafa9e4c5c54a2b9a8b",
1020
+ "result" : "valid",
1021
+ "flags" : []
1022
+ },
1023
+ {
1024
+ "tcId" : 112,
1025
+ "comment" : "special case hash",
1026
+ "msg" : "343834323435343235",
1027
+ "sig" : "914c67fb61dd1e27c867398ea7322d5ab76df04bc5aa6683a8e0f30a5d287348fa07474031481dda4953e3ac1959ee8cea7e66ec412b38d6c96d28f6d37304ea",
1028
+ "result" : "valid",
1029
+ "flags" : []
1030
+ }
1031
+ ]
1032
+ },
1033
+ {
1034
+ "jwk" : {
1035
+ "crv" : "P-256",
1036
+ "kid" : "none",
1037
+ "kty" : "EC",
1038
+ "x" : "CtmVACiNRmlAAx1yqfVEWk1DeEZAhVvwpph00t5f4QM",
1039
+ "y" : "xQEebvLELc1Q1dPSn5mubrosgMkkT0xUIvCXn_DDul4"
1040
+ },
1041
+ "key" : {
1042
+ "curve" : "secp256r1",
1043
+ "keySize" : 256,
1044
+ "type" : "EcPublicKey",
1045
+ "uncompressed" : "040ad99500288d466940031d72a9f5445a4d43784640855bf0a69874d2de5fe103c5011e6ef2c42dcd50d5d3d29f99ae6eba2c80c9244f4c5422f0979ff0c3ba5e",
1046
+ "wx" : "0ad99500288d466940031d72a9f5445a4d43784640855bf0a69874d2de5fe103",
1047
+ "wy" : "00c5011e6ef2c42dcd50d5d3d29f99ae6eba2c80c9244f4c5422f0979ff0c3ba5e"
1048
+ },
1049
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040ad99500288d466940031d72a9f5445a4d43784640855bf0a69874d2de5fe103c5011e6ef2c42dcd50d5d3d29f99ae6eba2c80c9244f4c5422f0979ff0c3ba5e",
1050
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECtmVACiNRmlAAx1yqfVEWk1DeEZA\nhVvwpph00t5f4QPFAR5u8sQtzVDV09Kfma5uuiyAySRPTFQi8Jef8MO6Xg==\n-----END PUBLIC KEY-----",
1051
+ "sha" : "SHA-256",
1052
+ "type" : "EcdsaP1363Verify",
1053
+ "tests" : [
1054
+ {
1055
+ "tcId" : 113,
1056
+ "comment" : "k*G has a large x-coordinate",
1057
+ "msg" : "313233343030",
1058
+ "sig" : "000000000000000000000000000000004319055358e8617b0c46353d039cdaabffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e",
1059
+ "result" : "valid",
1060
+ "flags" : []
1061
+ },
1062
+ {
1063
+ "tcId" : 114,
1064
+ "comment" : "r too large",
1065
+ "msg" : "313233343030",
1066
+ "sig" : "ffffffff00000001000000000000000000000000fffffffffffffffffffffffcffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e",
1067
+ "result" : "invalid",
1068
+ "flags" : []
1069
+ }
1070
+ ]
1071
+ },
1072
+ {
1073
+ "jwk" : {
1074
+ "crv" : "P-256",
1075
+ "kid" : "none",
1076
+ "kty" : "EC",
1077
+ "x" : "qwX9nQ3ia5zm9IGWUtn8aRk9CqOY8PuoAT4JxYIgRVQ",
1078
+ "y" : "GSNScSKMeGdZCV0St1rwaS3UED8Z9qjDL0lDWh6bjUU"
1079
+ },
1080
+ "key" : {
1081
+ "curve" : "secp256r1",
1082
+ "keySize" : 256,
1083
+ "type" : "EcPublicKey",
1084
+ "uncompressed" : "04ab05fd9d0de26b9ce6f4819652d9fc69193d0aa398f0fba8013e09c58220455419235271228c786759095d12b75af0692dd4103f19f6a8c32f49435a1e9b8d45",
1085
+ "wx" : "00ab05fd9d0de26b9ce6f4819652d9fc69193d0aa398f0fba8013e09c582204554",
1086
+ "wy" : "19235271228c786759095d12b75af0692dd4103f19f6a8c32f49435a1e9b8d45"
1087
+ },
1088
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004ab05fd9d0de26b9ce6f4819652d9fc69193d0aa398f0fba8013e09c58220455419235271228c786759095d12b75af0692dd4103f19f6a8c32f49435a1e9b8d45",
1089
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqwX9nQ3ia5zm9IGWUtn8aRk9CqOY\n8PuoAT4JxYIgRVQZI1JxIox4Z1kJXRK3WvBpLdQQPxn2qMMvSUNaHpuNRQ==\n-----END PUBLIC KEY-----",
1090
+ "sha" : "SHA-256",
1091
+ "type" : "EcdsaP1363Verify",
1092
+ "tests" : [
1093
+ {
1094
+ "tcId" : 115,
1095
+ "comment" : "r,s are large",
1096
+ "msg" : "313233343030",
1097
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254e",
1098
+ "result" : "valid",
1099
+ "flags" : []
1100
+ }
1101
+ ]
1102
+ },
1103
+ {
1104
+ "jwk" : {
1105
+ "crv" : "P-256",
1106
+ "kid" : "none",
1107
+ "kty" : "EC",
1108
+ "x" : "gJhPOaH_OKhqaKpCAba-Xfv-z4diGXELB7rfb91MbFY",
1109
+ "y" : "Ef65c5DZgm56Bt-0GHHJQNdEFe08rCCJ8URQGbtV7ZU"
1110
+ },
1111
+ "key" : {
1112
+ "curve" : "secp256r1",
1113
+ "keySize" : 256,
1114
+ "type" : "EcPublicKey",
1115
+ "uncompressed" : "0480984f39a1ff38a86a68aa4201b6be5dfbfecf876219710b07badf6fdd4c6c5611feb97390d9826e7a06dfb41871c940d74415ed3cac2089f1445019bb55ed95",
1116
+ "wx" : "0080984f39a1ff38a86a68aa4201b6be5dfbfecf876219710b07badf6fdd4c6c56",
1117
+ "wy" : "11feb97390d9826e7a06dfb41871c940d74415ed3cac2089f1445019bb55ed95"
1118
+ },
1119
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000480984f39a1ff38a86a68aa4201b6be5dfbfecf876219710b07badf6fdd4c6c5611feb97390d9826e7a06dfb41871c940d74415ed3cac2089f1445019bb55ed95",
1120
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEgJhPOaH/OKhqaKpCAba+Xfv+z4di\nGXELB7rfb91MbFYR/rlzkNmCbnoG37QYcclA10QV7TysIInxRFAZu1XtlQ==\n-----END PUBLIC KEY-----",
1121
+ "sha" : "SHA-256",
1122
+ "type" : "EcdsaP1363Verify",
1123
+ "tests" : [
1124
+ {
1125
+ "tcId" : 116,
1126
+ "comment" : "r and s^-1 have a large Hamming weight",
1127
+ "msg" : "313233343030",
1128
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd909135bdb6799286170f5ead2de4f6511453fe50914f3df2de54a36383df8dd4",
1129
+ "result" : "valid",
1130
+ "flags" : []
1131
+ }
1132
+ ]
1133
+ },
1134
+ {
1135
+ "jwk" : {
1136
+ "crv" : "P-256",
1137
+ "kid" : "none",
1138
+ "kty" : "EC",
1139
+ "x" : "QgG0JylEIBwylPW6qaMjK23Wh0lfzBmnCpW8YCtPfAU",
1140
+ "y" : "lcN-up7oFxwbtaxv6vdTvDb0Y-Ou8WYpVywMCo-wgA4"
1141
+ },
1142
+ "key" : {
1143
+ "curve" : "secp256r1",
1144
+ "keySize" : 256,
1145
+ "type" : "EcPublicKey",
1146
+ "uncompressed" : "044201b4272944201c3294f5baa9a3232b6dd687495fcc19a70a95bc602b4f7c0595c37eba9ee8171c1bb5ac6feaf753bc36f463e3aef16629572c0c0a8fb0800e",
1147
+ "wx" : "4201b4272944201c3294f5baa9a3232b6dd687495fcc19a70a95bc602b4f7c05",
1148
+ "wy" : "0095c37eba9ee8171c1bb5ac6feaf753bc36f463e3aef16629572c0c0a8fb0800e"
1149
+ },
1150
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044201b4272944201c3294f5baa9a3232b6dd687495fcc19a70a95bc602b4f7c0595c37eba9ee8171c1bb5ac6feaf753bc36f463e3aef16629572c0c0a8fb0800e",
1151
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQgG0JylEIBwylPW6qaMjK23Wh0lf\nzBmnCpW8YCtPfAWVw366nugXHBu1rG/q91O8NvRj467xZilXLAwKj7CADg==\n-----END PUBLIC KEY-----",
1152
+ "sha" : "SHA-256",
1153
+ "type" : "EcdsaP1363Verify",
1154
+ "tests" : [
1155
+ {
1156
+ "tcId" : 117,
1157
+ "comment" : "r and s^-1 have a large Hamming weight",
1158
+ "msg" : "313233343030",
1159
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd27b4577ca009376f71303fd5dd227dcef5deb773ad5f5a84360644669ca249a5",
1160
+ "result" : "valid",
1161
+ "flags" : []
1162
+ }
1163
+ ]
1164
+ },
1165
+ {
1166
+ "jwk" : {
1167
+ "crv" : "P-256",
1168
+ "kid" : "none",
1169
+ "kty" : "EC",
1170
+ "x" : "pxr2TeUSakpOAreSLWbOlBXOiKTJ0lUU2RCCyHJayVc",
1171
+ "y" : "XUdyPI--WAuzaf7JwmZdjjCkNbmTJkVILnyfEehyKWs"
1172
+ },
1173
+ "key" : {
1174
+ "curve" : "secp256r1",
1175
+ "keySize" : 256,
1176
+ "type" : "EcPublicKey",
1177
+ "uncompressed" : "04a71af64de5126a4a4e02b7922d66ce9415ce88a4c9d25514d91082c8725ac9575d47723c8fbe580bb369fec9c2665d8e30a435b9932645482e7c9f11e872296b",
1178
+ "wx" : "00a71af64de5126a4a4e02b7922d66ce9415ce88a4c9d25514d91082c8725ac957",
1179
+ "wy" : "5d47723c8fbe580bb369fec9c2665d8e30a435b9932645482e7c9f11e872296b"
1180
+ },
1181
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a71af64de5126a4a4e02b7922d66ce9415ce88a4c9d25514d91082c8725ac9575d47723c8fbe580bb369fec9c2665d8e30a435b9932645482e7c9f11e872296b",
1182
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpxr2TeUSakpOAreSLWbOlBXOiKTJ\n0lUU2RCCyHJayVddR3I8j75YC7Np/snCZl2OMKQ1uZMmRUgufJ8R6HIpaw==\n-----END PUBLIC KEY-----",
1183
+ "sha" : "SHA-256",
1184
+ "type" : "EcdsaP1363Verify",
1185
+ "tests" : [
1186
+ {
1187
+ "tcId" : 118,
1188
+ "comment" : "small r and s",
1189
+ "msg" : "313233343030",
1190
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000001",
1191
+ "result" : "valid",
1192
+ "flags" : []
1193
+ },
1194
+ {
1195
+ "tcId" : 119,
1196
+ "comment" : "incorrect size of signature",
1197
+ "msg" : "313233343030",
1198
+ "sig" : "0501",
1199
+ "result" : "acceptable",
1200
+ "flags" : [
1201
+ "SigSize"
1202
+ ]
1203
+ }
1204
+ ]
1205
+ },
1206
+ {
1207
+ "jwk" : {
1208
+ "crv" : "P-256",
1209
+ "kid" : "none",
1210
+ "kty" : "EC",
1211
+ "x" : "ZifOxPBzHqI_wpMfkOvlt1cvWX0g3wj8KzHujvFrFXI",
1212
+ "y" : "YXDtd9jQoU_FycPEyb5_DT7hj3CbsnXq8gc-JY_mlKU"
1213
+ },
1214
+ "key" : {
1215
+ "curve" : "secp256r1",
1216
+ "keySize" : 256,
1217
+ "type" : "EcPublicKey",
1218
+ "uncompressed" : "046627cec4f0731ea23fc2931f90ebe5b7572f597d20df08fc2b31ee8ef16b15726170ed77d8d0a14fc5c9c3c4c9be7f0d3ee18f709bb275eaf2073e258fe694a5",
1219
+ "wx" : "6627cec4f0731ea23fc2931f90ebe5b7572f597d20df08fc2b31ee8ef16b1572",
1220
+ "wy" : "6170ed77d8d0a14fc5c9c3c4c9be7f0d3ee18f709bb275eaf2073e258fe694a5"
1221
+ },
1222
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046627cec4f0731ea23fc2931f90ebe5b7572f597d20df08fc2b31ee8ef16b15726170ed77d8d0a14fc5c9c3c4c9be7f0d3ee18f709bb275eaf2073e258fe694a5",
1223
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZifOxPBzHqI/wpMfkOvlt1cvWX0g\n3wj8KzHujvFrFXJhcO132NChT8XJw8TJvn8NPuGPcJuyderyBz4lj+aUpQ==\n-----END PUBLIC KEY-----",
1224
+ "sha" : "SHA-256",
1225
+ "type" : "EcdsaP1363Verify",
1226
+ "tests" : [
1227
+ {
1228
+ "tcId" : 120,
1229
+ "comment" : "small r and s",
1230
+ "msg" : "313233343030",
1231
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000003",
1232
+ "result" : "valid",
1233
+ "flags" : []
1234
+ },
1235
+ {
1236
+ "tcId" : 121,
1237
+ "comment" : "incorrect size of signature",
1238
+ "msg" : "313233343030",
1239
+ "sig" : "0503",
1240
+ "result" : "acceptable",
1241
+ "flags" : [
1242
+ "SigSize"
1243
+ ]
1244
+ }
1245
+ ]
1246
+ },
1247
+ {
1248
+ "jwk" : {
1249
+ "crv" : "P-256",
1250
+ "kid" : "none",
1251
+ "kty" : "EC",
1252
+ "x" : "WnyIJehWkczh9edUTFTnPxSvwBDLcxNDJiyn7Fp39b8",
1253
+ "y" : "727fYqRJfBvXsUf7bD0irzw5v86V8w4ToW09eygS-BM"
1254
+ },
1255
+ "key" : {
1256
+ "curve" : "secp256r1",
1257
+ "keySize" : 256,
1258
+ "type" : "EcPublicKey",
1259
+ "uncompressed" : "045a7c8825e85691cce1f5e7544c54e73f14afc010cb731343262ca7ec5a77f5bfef6edf62a4497c1bd7b147fb6c3d22af3c39bfce95f30e13a16d3d7b2812f813",
1260
+ "wx" : "5a7c8825e85691cce1f5e7544c54e73f14afc010cb731343262ca7ec5a77f5bf",
1261
+ "wy" : "00ef6edf62a4497c1bd7b147fb6c3d22af3c39bfce95f30e13a16d3d7b2812f813"
1262
+ },
1263
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045a7c8825e85691cce1f5e7544c54e73f14afc010cb731343262ca7ec5a77f5bfef6edf62a4497c1bd7b147fb6c3d22af3c39bfce95f30e13a16d3d7b2812f813",
1264
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWnyIJehWkczh9edUTFTnPxSvwBDL\ncxNDJiyn7Fp39b/vbt9ipEl8G9exR/tsPSKvPDm/zpXzDhOhbT17KBL4Ew==\n-----END PUBLIC KEY-----",
1265
+ "sha" : "SHA-256",
1266
+ "type" : "EcdsaP1363Verify",
1267
+ "tests" : [
1268
+ {
1269
+ "tcId" : 122,
1270
+ "comment" : "small r and s",
1271
+ "msg" : "313233343030",
1272
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000005",
1273
+ "result" : "valid",
1274
+ "flags" : []
1275
+ },
1276
+ {
1277
+ "tcId" : 123,
1278
+ "comment" : "incorrect size of signature",
1279
+ "msg" : "313233343030",
1280
+ "sig" : "0505",
1281
+ "result" : "acceptable",
1282
+ "flags" : [
1283
+ "SigSize"
1284
+ ]
1285
+ }
1286
+ ]
1287
+ },
1288
+ {
1289
+ "jwk" : {
1290
+ "crv" : "P-256",
1291
+ "kid" : "none",
1292
+ "kty" : "EC",
1293
+ "x" : "y-DCkTLNc4Nk_t1gMVKZDASOXi__mW2IP6bKynl4xzc",
1294
+ "y" : "cK9qjORMtBIksmA2BvTATRiOgL_3zDGtUYnUqw1w6ME"
1295
+ },
1296
+ "key" : {
1297
+ "curve" : "secp256r1",
1298
+ "keySize" : 256,
1299
+ "type" : "EcPublicKey",
1300
+ "uncompressed" : "04cbe0c29132cd738364fedd603152990c048e5e2fff996d883fa6caca7978c73770af6a8ce44cb41224b2603606f4c04d188e80bff7cc31ad5189d4ab0d70e8c1",
1301
+ "wx" : "00cbe0c29132cd738364fedd603152990c048e5e2fff996d883fa6caca7978c737",
1302
+ "wy" : "70af6a8ce44cb41224b2603606f4c04d188e80bff7cc31ad5189d4ab0d70e8c1"
1303
+ },
1304
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cbe0c29132cd738364fedd603152990c048e5e2fff996d883fa6caca7978c73770af6a8ce44cb41224b2603606f4c04d188e80bff7cc31ad5189d4ab0d70e8c1",
1305
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEy+DCkTLNc4Nk/t1gMVKZDASOXi//\nmW2IP6bKynl4xzdwr2qM5Ey0EiSyYDYG9MBNGI6Av/fMMa1RidSrDXDowQ==\n-----END PUBLIC KEY-----",
1306
+ "sha" : "SHA-256",
1307
+ "type" : "EcdsaP1363Verify",
1308
+ "tests" : [
1309
+ {
1310
+ "tcId" : 124,
1311
+ "comment" : "small r and s",
1312
+ "msg" : "313233343030",
1313
+ "sig" : "00000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000006",
1314
+ "result" : "valid",
1315
+ "flags" : []
1316
+ },
1317
+ {
1318
+ "tcId" : 125,
1319
+ "comment" : "incorrect size of signature",
1320
+ "msg" : "313233343030",
1321
+ "sig" : "0506",
1322
+ "result" : "acceptable",
1323
+ "flags" : [
1324
+ "SigSize"
1325
+ ]
1326
+ },
1327
+ {
1328
+ "tcId" : 126,
1329
+ "comment" : "r is larger than n",
1330
+ "msg" : "313233343030",
1331
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6325560000000000000000000000000000000000000000000000000000000000000006",
1332
+ "result" : "invalid",
1333
+ "flags" : []
1334
+ }
1335
+ ]
1336
+ },
1337
+ {
1338
+ "jwk" : {
1339
+ "crv" : "P-256",
1340
+ "kid" : "none",
1341
+ "kty" : "EC",
1342
+ "x" : "S-QXgJcALw3qto8NmhMODtM6Z5XQKiB5bbg0RLA34Tk",
1343
+ "y" : "IPEwUeDuzc_OTazqD1DR8kfKpmnxk8G0B1tRriltLVY"
1344
+ },
1345
+ "key" : {
1346
+ "curve" : "secp256r1",
1347
+ "keySize" : 256,
1348
+ "type" : "EcPublicKey",
1349
+ "uncompressed" : "044be4178097002f0deab68f0d9a130e0ed33a6795d02a20796db83444b037e13920f13051e0eecdcfce4dacea0f50d1f247caa669f193c1b4075b51ae296d2d56",
1350
+ "wx" : "4be4178097002f0deab68f0d9a130e0ed33a6795d02a20796db83444b037e139",
1351
+ "wy" : "20f13051e0eecdcfce4dacea0f50d1f247caa669f193c1b4075b51ae296d2d56"
1352
+ },
1353
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044be4178097002f0deab68f0d9a130e0ed33a6795d02a20796db83444b037e13920f13051e0eecdcfce4dacea0f50d1f247caa669f193c1b4075b51ae296d2d56",
1354
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAES+QXgJcALw3qto8NmhMODtM6Z5XQ\nKiB5bbg0RLA34Tkg8TBR4O7Nz85NrOoPUNHyR8qmafGTwbQHW1GuKW0tVg==\n-----END PUBLIC KEY-----",
1355
+ "sha" : "SHA-256",
1356
+ "type" : "EcdsaP1363Verify",
1357
+ "tests" : [
1358
+ {
1359
+ "tcId" : 127,
1360
+ "comment" : "s is larger than n",
1361
+ "msg" : "313233343030",
1362
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000005ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc75fbd8",
1363
+ "result" : "invalid",
1364
+ "flags" : []
1365
+ }
1366
+ ]
1367
+ },
1368
+ {
1369
+ "jwk" : {
1370
+ "crv" : "P-256",
1371
+ "kid" : "none",
1372
+ "kty" : "EC",
1373
+ "x" : "0Pc3kiA3Fq_UvkMp-qSNJp8VMT67ujedd4PJe_PokNk",
1374
+ "y" : "lx9KMgZgW-wheCv14nXHFEF-j1ZlSea8aGkNI2PInME"
1375
+ },
1376
+ "key" : {
1377
+ "curve" : "secp256r1",
1378
+ "keySize" : 256,
1379
+ "type" : "EcPublicKey",
1380
+ "uncompressed" : "04d0f73792203716afd4be4329faa48d269f15313ebbba379d7783c97bf3e890d9971f4a3206605bec21782bf5e275c714417e8f566549e6bc68690d2363c89cc1",
1381
+ "wx" : "00d0f73792203716afd4be4329faa48d269f15313ebbba379d7783c97bf3e890d9",
1382
+ "wy" : "00971f4a3206605bec21782bf5e275c714417e8f566549e6bc68690d2363c89cc1"
1383
+ },
1384
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d0f73792203716afd4be4329faa48d269f15313ebbba379d7783c97bf3e890d9971f4a3206605bec21782bf5e275c714417e8f566549e6bc68690d2363c89cc1",
1385
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0Pc3kiA3Fq/UvkMp+qSNJp8VMT67\nujedd4PJe/PokNmXH0oyBmBb7CF4K/XidccUQX6PVmVJ5rxoaQ0jY8icwQ==\n-----END PUBLIC KEY-----",
1386
+ "sha" : "SHA-256",
1387
+ "type" : "EcdsaP1363Verify",
1388
+ "tests" : [
1389
+ {
1390
+ "tcId" : 128,
1391
+ "comment" : "small r and s^-1",
1392
+ "msg" : "313233343030",
1393
+ "sig" : "00000000000000000000000000000000000000000000000000000000000001008f1e3c7862c58b16bb76eddbb76eddbb516af4f63f2d74d76e0d28c9bb75ea88",
1394
+ "result" : "valid",
1395
+ "flags" : []
1396
+ }
1397
+ ]
1398
+ },
1399
+ {
1400
+ "jwk" : {
1401
+ "crv" : "P-256",
1402
+ "kid" : "none",
1403
+ "kty" : "EC",
1404
+ "x" : "SDiyvjWmJ2qA754igUD52bls6Dt6JU9xzN67uAVM4F8",
1405
+ "y" : "-py8EjyRmxngAjgZjQQGkEO9ZgqCiBQFH8uKrHOKbGs"
1406
+ },
1407
+ "key" : {
1408
+ "curve" : "secp256r1",
1409
+ "keySize" : 256,
1410
+ "type" : "EcPublicKey",
1411
+ "uncompressed" : "044838b2be35a6276a80ef9e228140f9d9b96ce83b7a254f71ccdebbb8054ce05ffa9cbc123c919b19e00238198d04069043bd660a828814051fcb8aac738a6c6b",
1412
+ "wx" : "4838b2be35a6276a80ef9e228140f9d9b96ce83b7a254f71ccdebbb8054ce05f",
1413
+ "wy" : "00fa9cbc123c919b19e00238198d04069043bd660a828814051fcb8aac738a6c6b"
1414
+ },
1415
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044838b2be35a6276a80ef9e228140f9d9b96ce83b7a254f71ccdebbb8054ce05ffa9cbc123c919b19e00238198d04069043bd660a828814051fcb8aac738a6c6b",
1416
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAESDiyvjWmJ2qA754igUD52bls6Dt6\nJU9xzN67uAVM4F/6nLwSPJGbGeACOBmNBAaQQ71mCoKIFAUfy4qsc4psaw==\n-----END PUBLIC KEY-----",
1417
+ "sha" : "SHA-256",
1418
+ "type" : "EcdsaP1363Verify",
1419
+ "tests" : [
1420
+ {
1421
+ "tcId" : 129,
1422
+ "comment" : "smallish r and s^-1",
1423
+ "msg" : "313233343030",
1424
+ "sig" : "000000000000000000000000000000000000000000000000002d9b4d347952d6ef3043e7329581dbb3974497710ab11505ee1c87ff907beebadd195a0ffe6d7a",
1425
+ "result" : "valid",
1426
+ "flags" : []
1427
+ }
1428
+ ]
1429
+ },
1430
+ {
1431
+ "jwk" : {
1432
+ "crv" : "P-256",
1433
+ "kid" : "none",
1434
+ "kty" : "EC",
1435
+ "x" : "c5OYPKMKUgu8R4PcmWB0aqtETvUgwKjncRGapOdLD2Q",
1436
+ "y" : "6de-GrAaC_Ym5wmGPmpIbbrzJ5OvzPd04sbNJ7GFdSY"
1437
+ },
1438
+ "key" : {
1439
+ "curve" : "secp256r1",
1440
+ "keySize" : 256,
1441
+ "type" : "EcPublicKey",
1442
+ "uncompressed" : "047393983ca30a520bbc4783dc9960746aab444ef520c0a8e771119aa4e74b0f64e9d7be1ab01a0bf626e709863e6a486dbaf32793afccf774e2c6cd27b1857526",
1443
+ "wx" : "7393983ca30a520bbc4783dc9960746aab444ef520c0a8e771119aa4e74b0f64",
1444
+ "wy" : "00e9d7be1ab01a0bf626e709863e6a486dbaf32793afccf774e2c6cd27b1857526"
1445
+ },
1446
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200047393983ca30a520bbc4783dc9960746aab444ef520c0a8e771119aa4e74b0f64e9d7be1ab01a0bf626e709863e6a486dbaf32793afccf774e2c6cd27b1857526",
1447
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEc5OYPKMKUgu8R4PcmWB0aqtETvUg\nwKjncRGapOdLD2Tp174asBoL9ibnCYY+akhtuvMnk6/M93Tixs0nsYV1Jg==\n-----END PUBLIC KEY-----",
1448
+ "sha" : "SHA-256",
1449
+ "type" : "EcdsaP1363Verify",
1450
+ "tests" : [
1451
+ {
1452
+ "tcId" : 130,
1453
+ "comment" : "100-bit r and small s^-1",
1454
+ "msg" : "313233343030",
1455
+ "sig" : "000000000000000000000000000000000000001033e67e37b32b445580bf4eff8b748b74000000008b748b748b748b7466e769ad4a16d3dcd87129b8e91d1b4d",
1456
+ "result" : "valid",
1457
+ "flags" : []
1458
+ }
1459
+ ]
1460
+ },
1461
+ {
1462
+ "jwk" : {
1463
+ "crv" : "P-256",
1464
+ "kid" : "none",
1465
+ "kty" : "EC",
1466
+ "x" : "WsMxoRA_6WZpc3nzVqk381BYigVHfjCIUbilAtXfzcU",
1467
+ "y" : "_pmT30tXk5srjaCVv215QmUgTP4DvplaAuZdQIyHHAs"
1468
+ },
1469
+ "key" : {
1470
+ "curve" : "secp256r1",
1471
+ "keySize" : 256,
1472
+ "type" : "EcPublicKey",
1473
+ "uncompressed" : "045ac331a1103fe966697379f356a937f350588a05477e308851b8a502d5dfcdc5fe9993df4b57939b2b8da095bf6d794265204cfe03be995a02e65d408c871c0b",
1474
+ "wx" : "5ac331a1103fe966697379f356a937f350588a05477e308851b8a502d5dfcdc5",
1475
+ "wy" : "00fe9993df4b57939b2b8da095bf6d794265204cfe03be995a02e65d408c871c0b"
1476
+ },
1477
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045ac331a1103fe966697379f356a937f350588a05477e308851b8a502d5dfcdc5fe9993df4b57939b2b8da095bf6d794265204cfe03be995a02e65d408c871c0b",
1478
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWsMxoRA/6WZpc3nzVqk381BYigVH\nfjCIUbilAtXfzcX+mZPfS1eTmyuNoJW/bXlCZSBM/gO+mVoC5l1AjIccCw==\n-----END PUBLIC KEY-----",
1479
+ "sha" : "SHA-256",
1480
+ "type" : "EcdsaP1363Verify",
1481
+ "tests" : [
1482
+ {
1483
+ "tcId" : 131,
1484
+ "comment" : "small r and 100 bit s^-1",
1485
+ "msg" : "313233343030",
1486
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000100ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b",
1487
+ "result" : "valid",
1488
+ "flags" : []
1489
+ }
1490
+ ]
1491
+ },
1492
+ {
1493
+ "jwk" : {
1494
+ "crv" : "P-256",
1495
+ "kid" : "none",
1496
+ "kty" : "EC",
1497
+ "x" : "HSCb6N4t6HcJWjmdOQTHTMRY2Sbie7jljl6uV2fEFQk",
1498
+ "y" : "3VngTCFPexjc41H8KlSYk6aGDoAWPzjMYKTyydBA2Mk"
1499
+ },
1500
+ "key" : {
1501
+ "curve" : "secp256r1",
1502
+ "keySize" : 256,
1503
+ "type" : "EcPublicKey",
1504
+ "uncompressed" : "041d209be8de2de877095a399d3904c74cc458d926e27bb8e58e5eae5767c41509dd59e04c214f7b18dce351fc2a549893a6860e80163f38cc60a4f2c9d040d8c9",
1505
+ "wx" : "1d209be8de2de877095a399d3904c74cc458d926e27bb8e58e5eae5767c41509",
1506
+ "wy" : "00dd59e04c214f7b18dce351fc2a549893a6860e80163f38cc60a4f2c9d040d8c9"
1507
+ },
1508
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200041d209be8de2de877095a399d3904c74cc458d926e27bb8e58e5eae5767c41509dd59e04c214f7b18dce351fc2a549893a6860e80163f38cc60a4f2c9d040d8c9",
1509
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHSCb6N4t6HcJWjmdOQTHTMRY2Sbi\ne7jljl6uV2fEFQndWeBMIU97GNzjUfwqVJiTpoYOgBY/OMxgpPLJ0EDYyQ==\n-----END PUBLIC KEY-----",
1510
+ "sha" : "SHA-256",
1511
+ "type" : "EcdsaP1363Verify",
1512
+ "tests" : [
1513
+ {
1514
+ "tcId" : 132,
1515
+ "comment" : "100-bit r and s^-1",
1516
+ "msg" : "313233343030",
1517
+ "sig" : "00000000000000000000000000000000000000062522bbd3ecbe7c39e93e7c25ef9f6ba4d97c09d03178fa20b4aaad83be3cf9cb824a879fec3270fc4b81ef5b",
1518
+ "result" : "valid",
1519
+ "flags" : []
1520
+ }
1521
+ ]
1522
+ },
1523
+ {
1524
+ "jwk" : {
1525
+ "crv" : "P-256",
1526
+ "kid" : "none",
1527
+ "kty" : "EC",
1528
+ "x" : "CDU5--5EYl46yq-i_LQTSTks7wYzobj6vs7gwTOxDpk",
1529
+ "y" : "kVwevnvwDfhTUZZ3ClgEeuKkAvJjJrt9QdTXYWM3kR4"
1530
+ },
1531
+ "key" : {
1532
+ "curve" : "secp256r1",
1533
+ "keySize" : 256,
1534
+ "type" : "EcPublicKey",
1535
+ "uncompressed" : "04083539fbee44625e3acaafa2fcb41349392cef0633a1b8fabecee0c133b10e99915c1ebe7bf00df8535196770a58047ae2a402f26326bb7d41d4d7616337911e",
1536
+ "wx" : "083539fbee44625e3acaafa2fcb41349392cef0633a1b8fabecee0c133b10e99",
1537
+ "wy" : "00915c1ebe7bf00df8535196770a58047ae2a402f26326bb7d41d4d7616337911e"
1538
+ },
1539
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004083539fbee44625e3acaafa2fcb41349392cef0633a1b8fabecee0c133b10e99915c1ebe7bf00df8535196770a58047ae2a402f26326bb7d41d4d7616337911e",
1540
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECDU5++5EYl46yq+i/LQTSTks7wYz\nobj6vs7gwTOxDpmRXB6+e/AN+FNRlncKWAR64qQC8mMmu31B1NdhYzeRHg==\n-----END PUBLIC KEY-----",
1541
+ "sha" : "SHA-256",
1542
+ "type" : "EcdsaP1363Verify",
1543
+ "tests" : [
1544
+ {
1545
+ "tcId" : 133,
1546
+ "comment" : "r and s^-1 are close to n",
1547
+ "msg" : "313233343030",
1548
+ "sig" : "ffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc6324d5555555550000000055555555555555553ef7a8e48d07df81a693439654210c70",
1549
+ "result" : "valid",
1550
+ "flags" : []
1551
+ }
1552
+ ]
1553
+ },
1554
+ {
1555
+ "jwk" : {
1556
+ "crv" : "P-256",
1557
+ "kid" : "none",
1558
+ "kty" : "EC",
1559
+ "x" : "ius2inAnpNZKveo3OQwMHWom85ni2XNN4es9Dhk3OHQ",
1560
+ "y" : "Bb0Tg0cV4duum4dc8HvVXhtmkcf3U2rvOxm_ekrfV20"
1561
+ },
1562
+ "key" : {
1563
+ "curve" : "secp256r1",
1564
+ "keySize" : 256,
1565
+ "type" : "EcPublicKey",
1566
+ "uncompressed" : "048aeb368a7027a4d64abdea37390c0c1d6a26f399e2d9734de1eb3d0e1937387405bd13834715e1dbae9b875cf07bd55e1b6691c7f7536aef3b19bf7a4adf576d",
1567
+ "wx" : "008aeb368a7027a4d64abdea37390c0c1d6a26f399e2d9734de1eb3d0e19373874",
1568
+ "wy" : "05bd13834715e1dbae9b875cf07bd55e1b6691c7f7536aef3b19bf7a4adf576d"
1569
+ },
1570
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048aeb368a7027a4d64abdea37390c0c1d6a26f399e2d9734de1eb3d0e1937387405bd13834715e1dbae9b875cf07bd55e1b6691c7f7536aef3b19bf7a4adf576d",
1571
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEius2inAnpNZKveo3OQwMHWom85ni\n2XNN4es9Dhk3OHQFvRODRxXh266bh1zwe9VeG2aRx/dTau87Gb96St9XbQ==\n-----END PUBLIC KEY-----",
1572
+ "sha" : "SHA-256",
1573
+ "type" : "EcdsaP1363Verify",
1574
+ "tests" : [
1575
+ {
1576
+ "tcId" : 134,
1577
+ "comment" : "s == 1",
1578
+ "msg" : "313233343030",
1579
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c700000000000000000000000000000000000000000000000000000000000000001",
1580
+ "result" : "valid",
1581
+ "flags" : []
1582
+ },
1583
+ {
1584
+ "tcId" : 135,
1585
+ "comment" : "s == 0",
1586
+ "msg" : "313233343030",
1587
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c700000000000000000000000000000000000000000000000000000000000000000",
1588
+ "result" : "invalid",
1589
+ "flags" : []
1590
+ }
1591
+ ]
1592
+ },
1593
+ {
1594
+ "jwk" : {
1595
+ "crv" : "P-256",
1596
+ "kid" : "none",
1597
+ "kty" : "EC",
1598
+ "x" : "tTPUaV3VuMXgd1flXm5Rb34siPoCOeI_YOjsB91w8oc",
1599
+ "y" : "GxNO5YzFgyeEVoY_M8OoXYgffUo5hQFD4p1OrwCa_kc"
1600
+ },
1601
+ "key" : {
1602
+ "curve" : "secp256r1",
1603
+ "keySize" : 256,
1604
+ "type" : "EcPublicKey",
1605
+ "uncompressed" : "04b533d4695dd5b8c5e07757e55e6e516f7e2c88fa0239e23f60e8ec07dd70f2871b134ee58cc583278456863f33c3a85d881f7d4a39850143e29d4eaf009afe47",
1606
+ "wx" : "00b533d4695dd5b8c5e07757e55e6e516f7e2c88fa0239e23f60e8ec07dd70f287",
1607
+ "wy" : "1b134ee58cc583278456863f33c3a85d881f7d4a39850143e29d4eaf009afe47"
1608
+ },
1609
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004b533d4695dd5b8c5e07757e55e6e516f7e2c88fa0239e23f60e8ec07dd70f2871b134ee58cc583278456863f33c3a85d881f7d4a39850143e29d4eaf009afe47",
1610
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEtTPUaV3VuMXgd1flXm5Rb34siPoC\nOeI/YOjsB91w8ocbE07ljMWDJ4RWhj8zw6hdiB99SjmFAUPinU6vAJr+Rw==\n-----END PUBLIC KEY-----",
1611
+ "sha" : "SHA-256",
1612
+ "type" : "EcdsaP1363Verify",
1613
+ "tests" : [
1614
+ {
1615
+ "tcId" : 136,
1616
+ "comment" : "point at infinity during verify",
1617
+ "msg" : "313233343030",
1618
+ "sig" : "7fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8555555550000000055555555555555553ef7a8e48d07df81a693439654210c70",
1619
+ "result" : "invalid",
1620
+ "flags" : []
1621
+ }
1622
+ ]
1623
+ },
1624
+ {
1625
+ "jwk" : {
1626
+ "crv" : "P-256",
1627
+ "kid" : "none",
1628
+ "kty" : "EC",
1629
+ "x" : "9Q03G5G_sdfRThMjUjvDqoy_LFf54oTeYoyLRTZ4e4Y",
1630
+ "y" : "-UrYh6yU1SckfNLn0MixKRxVPJcwQFOAsUy7IJ9fot0"
1631
+ },
1632
+ "key" : {
1633
+ "curve" : "secp256r1",
1634
+ "keySize" : 256,
1635
+ "type" : "EcPublicKey",
1636
+ "uncompressed" : "04f50d371b91bfb1d7d14e1323523bc3aa8cbf2c57f9e284de628c8b4536787b86f94ad887ac94d527247cd2e7d0c8b1291c553c9730405380b14cbb209f5fa2dd",
1637
+ "wx" : "00f50d371b91bfb1d7d14e1323523bc3aa8cbf2c57f9e284de628c8b4536787b86",
1638
+ "wy" : "00f94ad887ac94d527247cd2e7d0c8b1291c553c9730405380b14cbb209f5fa2dd"
1639
+ },
1640
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f50d371b91bfb1d7d14e1323523bc3aa8cbf2c57f9e284de628c8b4536787b86f94ad887ac94d527247cd2e7d0c8b1291c553c9730405380b14cbb209f5fa2dd",
1641
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9Q03G5G/sdfRThMjUjvDqoy/LFf5\n4oTeYoyLRTZ4e4b5StiHrJTVJyR80ufQyLEpHFU8lzBAU4CxTLsgn1+i3Q==\n-----END PUBLIC KEY-----",
1642
+ "sha" : "SHA-256",
1643
+ "type" : "EcdsaP1363Verify",
1644
+ "tests" : [
1645
+ {
1646
+ "tcId" : 137,
1647
+ "comment" : "edge case for signature malleability",
1648
+ "msg" : "313233343030",
1649
+ "sig" : "7fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a97fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a8",
1650
+ "result" : "valid",
1651
+ "flags" : []
1652
+ }
1653
+ ]
1654
+ },
1655
+ {
1656
+ "jwk" : {
1657
+ "crv" : "P-256",
1658
+ "kid" : "none",
1659
+ "kty" : "EC",
1660
+ "x" : "aOxuKY6v4WU5FWzlehSwSnBHwiG6_DpYLq6w2FfE2UY",
1661
+ "y" : "l77RrxeFARf9s5sjJPIgpWmO0WxCaiczW7OFrIym-zA"
1662
+ },
1663
+ "key" : {
1664
+ "curve" : "secp256r1",
1665
+ "keySize" : 256,
1666
+ "type" : "EcPublicKey",
1667
+ "uncompressed" : "0468ec6e298eafe16539156ce57a14b04a7047c221bafc3a582eaeb0d857c4d94697bed1af17850117fdb39b2324f220a5698ed16c426a27335bb385ac8ca6fb30",
1668
+ "wx" : "68ec6e298eafe16539156ce57a14b04a7047c221bafc3a582eaeb0d857c4d946",
1669
+ "wy" : "0097bed1af17850117fdb39b2324f220a5698ed16c426a27335bb385ac8ca6fb30"
1670
+ },
1671
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000468ec6e298eafe16539156ce57a14b04a7047c221bafc3a582eaeb0d857c4d94697bed1af17850117fdb39b2324f220a5698ed16c426a27335bb385ac8ca6fb30",
1672
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaOxuKY6v4WU5FWzlehSwSnBHwiG6\n/DpYLq6w2FfE2UaXvtGvF4UBF/2zmyMk8iClaY7RbEJqJzNbs4WsjKb7MA==\n-----END PUBLIC KEY-----",
1673
+ "sha" : "SHA-256",
1674
+ "type" : "EcdsaP1363Verify",
1675
+ "tests" : [
1676
+ {
1677
+ "tcId" : 138,
1678
+ "comment" : "edge case for signature malleability",
1679
+ "msg" : "313233343030",
1680
+ "sig" : "7fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a97fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192a9",
1681
+ "result" : "valid",
1682
+ "flags" : []
1683
+ }
1684
+ ]
1685
+ },
1686
+ {
1687
+ "jwk" : {
1688
+ "crv" : "P-256",
1689
+ "kid" : "none",
1690
+ "kty" : "EC",
1691
+ "x" : "adoDZHNNLlMP7OlAGSZf77eBoPGwj2yIl732VXknyLg",
1692
+ "y" : "ZtLTx9zVGLI9cmlg8Gmtcakz2G74q7zOiyD3HiqEcAI"
1693
+ },
1694
+ "key" : {
1695
+ "curve" : "secp256r1",
1696
+ "keySize" : 256,
1697
+ "type" : "EcPublicKey",
1698
+ "uncompressed" : "0469da0364734d2e530fece94019265fefb781a0f1b08f6c8897bdf6557927c8b866d2d3c7dcd518b23d726960f069ad71a933d86ef8abbcce8b20f71e2a847002",
1699
+ "wx" : "69da0364734d2e530fece94019265fefb781a0f1b08f6c8897bdf6557927c8b8",
1700
+ "wy" : "66d2d3c7dcd518b23d726960f069ad71a933d86ef8abbcce8b20f71e2a847002"
1701
+ },
1702
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000469da0364734d2e530fece94019265fefb781a0f1b08f6c8897bdf6557927c8b866d2d3c7dcd518b23d726960f069ad71a933d86ef8abbcce8b20f71e2a847002",
1703
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEadoDZHNNLlMP7OlAGSZf77eBoPGw\nj2yIl732VXknyLhm0tPH3NUYsj1yaWDwaa1xqTPYbvirvM6LIPceKoRwAg==\n-----END PUBLIC KEY-----",
1704
+ "sha" : "SHA-256",
1705
+ "type" : "EcdsaP1363Verify",
1706
+ "tests" : [
1707
+ {
1708
+ "tcId" : 139,
1709
+ "comment" : "u1 == 1",
1710
+ "msg" : "313233343030",
1711
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c70bb5a52f42f9c9261ed4361f59422a1e30036e7c32b270c8807a419feca605023",
1712
+ "result" : "valid",
1713
+ "flags" : []
1714
+ }
1715
+ ]
1716
+ },
1717
+ {
1718
+ "jwk" : {
1719
+ "crv" : "P-256",
1720
+ "kid" : "none",
1721
+ "kty" : "EC",
1722
+ "x" : "2K3AACOo7cAlduK2Pj4wYhpHHisjIGIBh78GehrB_zI",
1723
+ "y" : "M-K1DsCYB6zLNhMf_5XtEqCahrTqlpCqMoYVdrojYuE"
1724
+ },
1725
+ "key" : {
1726
+ "curve" : "secp256r1",
1727
+ "keySize" : 256,
1728
+ "type" : "EcPublicKey",
1729
+ "uncompressed" : "04d8adc00023a8edc02576e2b63e3e30621a471e2b2320620187bf067a1ac1ff3233e2b50ec09807accb36131fff95ed12a09a86b4ea9690aa32861576ba2362e1",
1730
+ "wx" : "00d8adc00023a8edc02576e2b63e3e30621a471e2b2320620187bf067a1ac1ff32",
1731
+ "wy" : "33e2b50ec09807accb36131fff95ed12a09a86b4ea9690aa32861576ba2362e1"
1732
+ },
1733
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d8adc00023a8edc02576e2b63e3e30621a471e2b2320620187bf067a1ac1ff3233e2b50ec09807accb36131fff95ed12a09a86b4ea9690aa32861576ba2362e1",
1734
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2K3AACOo7cAlduK2Pj4wYhpHHisj\nIGIBh78GehrB/zIz4rUOwJgHrMs2Ex//le0SoJqGtOqWkKoyhhV2uiNi4Q==\n-----END PUBLIC KEY-----",
1735
+ "sha" : "SHA-256",
1736
+ "type" : "EcdsaP1363Verify",
1737
+ "tests" : [
1738
+ {
1739
+ "tcId" : 140,
1740
+ "comment" : "u1 == n - 1",
1741
+ "msg" : "313233343030",
1742
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c7044a5ad0ad0636d9f12bc9e0a6bdd5e1cbcb012ea7bf091fcec15b0c43202d52e",
1743
+ "result" : "valid",
1744
+ "flags" : []
1745
+ }
1746
+ ]
1747
+ },
1748
+ {
1749
+ "jwk" : {
1750
+ "crv" : "P-256",
1751
+ "kid" : "none",
1752
+ "kty" : "EC",
1753
+ "x" : "NiOslzztClb6bYgvA6fVx-3KAs_HskAfqzaQ2-dat4U",
1754
+ "y" : "jbBpCOZLKGE9pyV-c385eT2o5xO6BkO5LpuzJSvn-P4"
1755
+ },
1756
+ "key" : {
1757
+ "curve" : "secp256r1",
1758
+ "keySize" : 256,
1759
+ "type" : "EcPublicKey",
1760
+ "uncompressed" : "043623ac973ced0a56fa6d882f03a7d5c7edca02cfc7b2401fab3690dbe75ab7858db06908e64b28613da7257e737f39793da8e713ba0643b92e9bb3252be7f8fe",
1761
+ "wx" : "3623ac973ced0a56fa6d882f03a7d5c7edca02cfc7b2401fab3690dbe75ab785",
1762
+ "wy" : "008db06908e64b28613da7257e737f39793da8e713ba0643b92e9bb3252be7f8fe"
1763
+ },
1764
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043623ac973ced0a56fa6d882f03a7d5c7edca02cfc7b2401fab3690dbe75ab7858db06908e64b28613da7257e737f39793da8e713ba0643b92e9bb3252be7f8fe",
1765
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENiOslzztClb6bYgvA6fVx+3KAs/H\nskAfqzaQ2+dat4WNsGkI5ksoYT2nJX5zfzl5PajnE7oGQ7kum7MlK+f4/g==\n-----END PUBLIC KEY-----",
1766
+ "sha" : "SHA-256",
1767
+ "type" : "EcdsaP1363Verify",
1768
+ "tests" : [
1769
+ {
1770
+ "tcId" : 141,
1771
+ "comment" : "u2 == 1",
1772
+ "msg" : "313233343030",
1773
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c70555555550000000055555555555555553ef7a8e48d07df81a693439654210c70",
1774
+ "result" : "valid",
1775
+ "flags" : []
1776
+ }
1777
+ ]
1778
+ },
1779
+ {
1780
+ "jwk" : {
1781
+ "crv" : "P-256",
1782
+ "kid" : "none",
1783
+ "kty" : "EC",
1784
+ "x" : "zwTqd-liJSPYlLk_9S3DAnsxlZUDtvo4kOXgQmP5IvE",
1785
+ "y" : "6FKPt8AGs5g8i4QA5XtO1xdAwvOXVDiCEZm-3q7Ksuk"
1786
+ },
1787
+ "key" : {
1788
+ "curve" : "secp256r1",
1789
+ "keySize" : 256,
1790
+ "type" : "EcPublicKey",
1791
+ "uncompressed" : "04cf04ea77e9622523d894b93ff52dc3027b31959503b6fa3890e5e04263f922f1e8528fb7c006b3983c8b8400e57b4ed71740c2f3975438821199bedeaecab2e9",
1792
+ "wx" : "00cf04ea77e9622523d894b93ff52dc3027b31959503b6fa3890e5e04263f922f1",
1793
+ "wy" : "00e8528fb7c006b3983c8b8400e57b4ed71740c2f3975438821199bedeaecab2e9"
1794
+ },
1795
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004cf04ea77e9622523d894b93ff52dc3027b31959503b6fa3890e5e04263f922f1e8528fb7c006b3983c8b8400e57b4ed71740c2f3975438821199bedeaecab2e9",
1796
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEzwTqd+liJSPYlLk/9S3DAnsxlZUD\ntvo4kOXgQmP5IvHoUo+3wAazmDyLhADle07XF0DC85dUOIIRmb7ersqy6Q==\n-----END PUBLIC KEY-----",
1797
+ "sha" : "SHA-256",
1798
+ "type" : "EcdsaP1363Verify",
1799
+ "tests" : [
1800
+ {
1801
+ "tcId" : 142,
1802
+ "comment" : "u2 == n - 1",
1803
+ "msg" : "313233343030",
1804
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c70aaaaaaaa00000000aaaaaaaaaaaaaaaa7def51c91a0fbf034d26872ca84218e1",
1805
+ "result" : "valid",
1806
+ "flags" : []
1807
+ }
1808
+ ]
1809
+ },
1810
+ {
1811
+ "jwk" : {
1812
+ "crv" : "P-256",
1813
+ "kid" : "none",
1814
+ "kty" : "EC",
1815
+ "x" : "23osihq1c-WSncJAd7UI1-aD1JInmWvaPp942-_3c1A",
1816
+ "y" : "T0F_O8mogHXC4KrdWhMxFzDPfMdqgvEaNurwimyZogY"
1817
+ },
1818
+ "key" : {
1819
+ "curve" : "secp256r1",
1820
+ "keySize" : 256,
1821
+ "type" : "EcPublicKey",
1822
+ "uncompressed" : "04db7a2c8a1ab573e5929dc24077b508d7e683d49227996bda3e9f78dbeff773504f417f3bc9a88075c2e0aadd5a13311730cf7cc76a82f11a36eaf08a6c99a206",
1823
+ "wx" : "00db7a2c8a1ab573e5929dc24077b508d7e683d49227996bda3e9f78dbeff77350",
1824
+ "wy" : "4f417f3bc9a88075c2e0aadd5a13311730cf7cc76a82f11a36eaf08a6c99a206"
1825
+ },
1826
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004db7a2c8a1ab573e5929dc24077b508d7e683d49227996bda3e9f78dbeff773504f417f3bc9a88075c2e0aadd5a13311730cf7cc76a82f11a36eaf08a6c99a206",
1827
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE23osihq1c+WSncJAd7UI1+aD1JIn\nmWvaPp942+/3c1BPQX87yaiAdcLgqt1aEzEXMM98x2qC8Ro26vCKbJmiBg==\n-----END PUBLIC KEY-----",
1828
+ "sha" : "SHA-256",
1829
+ "type" : "EcdsaP1363Verify",
1830
+ "tests" : [
1831
+ {
1832
+ "tcId" : 143,
1833
+ "comment" : "edge case for u1",
1834
+ "msg" : "313233343030",
1835
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffde91e1ba60fdedb76a46bcb51dc0b8b4b7e019f0a28721885fa5d3a8196623397",
1836
+ "result" : "valid",
1837
+ "flags" : []
1838
+ }
1839
+ ]
1840
+ },
1841
+ {
1842
+ "jwk" : {
1843
+ "crv" : "P-256",
1844
+ "kid" : "none",
1845
+ "kty" : "EC",
1846
+ "x" : "3q0Rx6WzloYvIZdNxHUvre_5lO_pu9BatBN2XqgLbh8",
1847
+ "y" : "HePwZA6Kxu3Pic_1PEDiZbuUB4o0NzbfB6oDGPx_4f8"
1848
+ },
1849
+ "key" : {
1850
+ "curve" : "secp256r1",
1851
+ "keySize" : 256,
1852
+ "type" : "EcPublicKey",
1853
+ "uncompressed" : "04dead11c7a5b396862f21974dc4752fadeff994efe9bbd05ab413765ea80b6e1f1de3f0640e8ac6edcf89cff53c40e265bb94078a343736df07aa0318fc7fe1ff",
1854
+ "wx" : "00dead11c7a5b396862f21974dc4752fadeff994efe9bbd05ab413765ea80b6e1f",
1855
+ "wy" : "1de3f0640e8ac6edcf89cff53c40e265bb94078a343736df07aa0318fc7fe1ff"
1856
+ },
1857
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dead11c7a5b396862f21974dc4752fadeff994efe9bbd05ab413765ea80b6e1f1de3f0640e8ac6edcf89cff53c40e265bb94078a343736df07aa0318fc7fe1ff",
1858
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3q0Rx6WzloYvIZdNxHUvre/5lO/p\nu9BatBN2XqgLbh8d4/BkDorG7c+Jz/U8QOJlu5QHijQ3Nt8HqgMY/H/h/w==\n-----END PUBLIC KEY-----",
1859
+ "sha" : "SHA-256",
1860
+ "type" : "EcdsaP1363Verify",
1861
+ "tests" : [
1862
+ {
1863
+ "tcId" : 144,
1864
+ "comment" : "edge case for u1",
1865
+ "msg" : "313233343030",
1866
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdfdea5843ffeb73af94313ba4831b53fe24f799e525b1e8e8c87b59b95b430ad9",
1867
+ "result" : "valid",
1868
+ "flags" : []
1869
+ }
1870
+ ]
1871
+ },
1872
+ {
1873
+ "jwk" : {
1874
+ "crv" : "P-256",
1875
+ "kid" : "none",
1876
+ "kty" : "EC",
1877
+ "x" : "0LxHLg18geuu06bvlsGGE7sf6m-ZQyb76A4A395nx-k",
1878
+ "y" : "mGxyPqSEPUg4m5RvZK1WyDrXD_F7qFM1Zn0bufphnv0"
1879
+ },
1880
+ "key" : {
1881
+ "curve" : "secp256r1",
1882
+ "keySize" : 256,
1883
+ "type" : "EcPublicKey",
1884
+ "uncompressed" : "04d0bc472e0d7c81ebaed3a6ef96c18613bb1fea6f994326fbe80e00dfde67c7e9986c723ea4843d48389b946f64ad56c83ad70ff17ba85335667d1bb9fa619efd",
1885
+ "wx" : "00d0bc472e0d7c81ebaed3a6ef96c18613bb1fea6f994326fbe80e00dfde67c7e9",
1886
+ "wy" : "00986c723ea4843d48389b946f64ad56c83ad70ff17ba85335667d1bb9fa619efd"
1887
+ },
1888
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d0bc472e0d7c81ebaed3a6ef96c18613bb1fea6f994326fbe80e00dfde67c7e9986c723ea4843d48389b946f64ad56c83ad70ff17ba85335667d1bb9fa619efd",
1889
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0LxHLg18geuu06bvlsGGE7sf6m+Z\nQyb76A4A395nx+mYbHI+pIQ9SDiblG9krVbIOtcP8XuoUzVmfRu5+mGe/Q==\n-----END PUBLIC KEY-----",
1890
+ "sha" : "SHA-256",
1891
+ "type" : "EcdsaP1363Verify",
1892
+ "tests" : [
1893
+ {
1894
+ "tcId" : 145,
1895
+ "comment" : "edge case for u1",
1896
+ "msg" : "313233343030",
1897
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd03ffcabf2f1b4d2a65190db1680d62bb994e41c5251cd73b3c3dfc5e5bafc035",
1898
+ "result" : "valid",
1899
+ "flags" : []
1900
+ }
1901
+ ]
1902
+ },
1903
+ {
1904
+ "jwk" : {
1905
+ "crv" : "P-256",
1906
+ "kid" : "none",
1907
+ "kty" : "EC",
1908
+ "x" : "oKRMqUfWairLc2AIucCNGrKtA3duAmQPeEldRY3VHDI",
1909
+ "y" : "Yzf-XPjEYEsfHECdwthy1ClKR2JCDfQ6MKI5LkBCat0"
1910
+ },
1911
+ "key" : {
1912
+ "curve" : "secp256r1",
1913
+ "keySize" : 256,
1914
+ "type" : "EcPublicKey",
1915
+ "uncompressed" : "04a0a44ca947d66a2acb736008b9c08d1ab2ad03776e02640f78495d458dd51c326337fe5cf8c4604b1f1c409dc2d872d4294a4762420df43a30a2392e40426add",
1916
+ "wx" : "00a0a44ca947d66a2acb736008b9c08d1ab2ad03776e02640f78495d458dd51c32",
1917
+ "wy" : "6337fe5cf8c4604b1f1c409dc2d872d4294a4762420df43a30a2392e40426add"
1918
+ },
1919
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a0a44ca947d66a2acb736008b9c08d1ab2ad03776e02640f78495d458dd51c326337fe5cf8c4604b1f1c409dc2d872d4294a4762420df43a30a2392e40426add",
1920
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoKRMqUfWairLc2AIucCNGrKtA3du\nAmQPeEldRY3VHDJjN/5c+MRgSx8cQJ3C2HLUKUpHYkIN9DowojkuQEJq3Q==\n-----END PUBLIC KEY-----",
1921
+ "sha" : "SHA-256",
1922
+ "type" : "EcdsaP1363Verify",
1923
+ "tests" : [
1924
+ {
1925
+ "tcId" : 146,
1926
+ "comment" : "edge case for u1",
1927
+ "msg" : "313233343030",
1928
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd4dfbc401f971cd304b33dfdb17d0fed0fe4c1a88ae648e0d2847f74977534989",
1929
+ "result" : "valid",
1930
+ "flags" : []
1931
+ }
1932
+ ]
1933
+ },
1934
+ {
1935
+ "jwk" : {
1936
+ "crv" : "P-256",
1937
+ "kid" : "none",
1938
+ "kty" : "EC",
1939
+ "x" : "ycIRUpDQCLRftl-tD2AjiSmMJUILd1AZ1Ctiw86Klrc",
1940
+ "y" : "OHfSWoCA3ALZh8pzDwQFwsnb76xG-eYBzD8G6XE5c_0"
1941
+ },
1942
+ "key" : {
1943
+ "curve" : "secp256r1",
1944
+ "keySize" : 256,
1945
+ "type" : "EcPublicKey",
1946
+ "uncompressed" : "04c9c2115290d008b45fb65fad0f602389298c25420b775019d42b62c3ce8a96b73877d25a8080dc02d987ca730f0405c2c9dbefac46f9e601cc3f06e9713973fd",
1947
+ "wx" : "00c9c2115290d008b45fb65fad0f602389298c25420b775019d42b62c3ce8a96b7",
1948
+ "wy" : "3877d25a8080dc02d987ca730f0405c2c9dbefac46f9e601cc3f06e9713973fd"
1949
+ },
1950
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c9c2115290d008b45fb65fad0f602389298c25420b775019d42b62c3ce8a96b73877d25a8080dc02d987ca730f0405c2c9dbefac46f9e601cc3f06e9713973fd",
1951
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEycIRUpDQCLRftl+tD2AjiSmMJUIL\nd1AZ1Ctiw86Klrc4d9JagIDcAtmHynMPBAXCydvvrEb55gHMPwbpcTlz/Q==\n-----END PUBLIC KEY-----",
1952
+ "sha" : "SHA-256",
1953
+ "type" : "EcdsaP1363Verify",
1954
+ "tests" : [
1955
+ {
1956
+ "tcId" : 147,
1957
+ "comment" : "edge case for u1",
1958
+ "msg" : "313233343030",
1959
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbc4024761cd2ffd43dfdb17d0fed112b988977055cd3a8e54971eba9cda5ca71",
1960
+ "result" : "valid",
1961
+ "flags" : []
1962
+ }
1963
+ ]
1964
+ },
1965
+ {
1966
+ "jwk" : {
1967
+ "crv" : "P-256",
1968
+ "kid" : "none",
1969
+ "kty" : "EC",
1970
+ "x" : "Xsoe9MKH3dxmuLzPG4jookwAGJYvPF5--oO8Gl_2Az4",
1971
+ "y" : "XnnEyywkW4xFq9zoqOTadY2SpgfDLNQH7K7yLxyTSnE"
1972
+ },
1973
+ "key" : {
1974
+ "curve" : "secp256r1",
1975
+ "keySize" : 256,
1976
+ "type" : "EcPublicKey",
1977
+ "uncompressed" : "045eca1ef4c287dddc66b8bccf1b88e8a24c0018962f3c5e7efa83bc1a5ff6033e5e79c4cb2c245b8c45abdce8a8e4da758d92a607c32cd407ecaef22f1c934a71",
1978
+ "wx" : "5eca1ef4c287dddc66b8bccf1b88e8a24c0018962f3c5e7efa83bc1a5ff6033e",
1979
+ "wy" : "5e79c4cb2c245b8c45abdce8a8e4da758d92a607c32cd407ecaef22f1c934a71"
1980
+ },
1981
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045eca1ef4c287dddc66b8bccf1b88e8a24c0018962f3c5e7efa83bc1a5ff6033e5e79c4cb2c245b8c45abdce8a8e4da758d92a607c32cd407ecaef22f1c934a71",
1982
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXsoe9MKH3dxmuLzPG4jookwAGJYv\nPF5++oO8Gl/2Az5eecTLLCRbjEWr3Oio5Np1jZKmB8Ms1AfsrvIvHJNKcQ==\n-----END PUBLIC KEY-----",
1983
+ "sha" : "SHA-256",
1984
+ "type" : "EcdsaP1363Verify",
1985
+ "tests" : [
1986
+ {
1987
+ "tcId" : 148,
1988
+ "comment" : "edge case for u1",
1989
+ "msg" : "313233343030",
1990
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd788048ed39a5ffa77bfb62fa1fda2257742bf35d128fb3459f2a0c909ee86f91",
1991
+ "result" : "valid",
1992
+ "flags" : []
1993
+ }
1994
+ ]
1995
+ },
1996
+ {
1997
+ "jwk" : {
1998
+ "crv" : "P-256",
1999
+ "kid" : "none",
2000
+ "kty" : "EC",
2001
+ "x" : "XKqgMOf98OSTa8erWpY1PgoB5BMMP4vyLUc-MXAppHo",
2002
+ "y" : "3ratxGL3BY8qINNx6XAiVOmyAWQgBbPO2pJrQrF4vvk"
2003
+ },
2004
+ "key" : {
2005
+ "curve" : "secp256r1",
2006
+ "keySize" : 256,
2007
+ "type" : "EcPublicKey",
2008
+ "uncompressed" : "045caaa030e7fdf0e4936bc7ab5a96353e0a01e4130c3f8bf22d473e317029a47adeb6adc462f7058f2a20d371e9702254e9b201642005b3ceda926b42b178bef9",
2009
+ "wx" : "5caaa030e7fdf0e4936bc7ab5a96353e0a01e4130c3f8bf22d473e317029a47a",
2010
+ "wy" : "00deb6adc462f7058f2a20d371e9702254e9b201642005b3ceda926b42b178bef9"
2011
+ },
2012
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045caaa030e7fdf0e4936bc7ab5a96353e0a01e4130c3f8bf22d473e317029a47adeb6adc462f7058f2a20d371e9702254e9b201642005b3ceda926b42b178bef9",
2013
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXKqgMOf98OSTa8erWpY1PgoB5BMM\nP4vyLUc+MXAppHretq3EYvcFjyog03HpcCJU6bIBZCAFs87akmtCsXi++Q==\n-----END PUBLIC KEY-----",
2014
+ "sha" : "SHA-256",
2015
+ "type" : "EcdsaP1363Verify",
2016
+ "tests" : [
2017
+ {
2018
+ "tcId" : 149,
2019
+ "comment" : "edge case for u1",
2020
+ "msg" : "313233343030",
2021
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd476d9131fd381bd917d0fed112bc9e0a5924b5ed5b11167edd8b23582b3cb15e",
2022
+ "result" : "valid",
2023
+ "flags" : []
2024
+ }
2025
+ ]
2026
+ },
2027
+ {
2028
+ "jwk" : {
2029
+ "crv" : "P-256",
2030
+ "kid" : "none",
2031
+ "kty" : "EC",
2032
+ "x" : "wv0gusBuVVu4rAzmnrHqIPg6H8NQHIpmRpsaMfYZsJg",
2033
+ "y" : "YjcFB3n1K2Fb17jXaiX8lcou0yUlx18n_8h6w5fmy68"
2034
+ },
2035
+ "key" : {
2036
+ "curve" : "secp256r1",
2037
+ "keySize" : 256,
2038
+ "type" : "EcPublicKey",
2039
+ "uncompressed" : "04c2fd20bac06e555bb8ac0ce69eb1ea20f83a1fc3501c8a66469b1a31f619b0986237050779f52b615bd7b8d76a25fc95ca2ed32525c75f27ffc87ac397e6cbaf",
2040
+ "wx" : "00c2fd20bac06e555bb8ac0ce69eb1ea20f83a1fc3501c8a66469b1a31f619b098",
2041
+ "wy" : "6237050779f52b615bd7b8d76a25fc95ca2ed32525c75f27ffc87ac397e6cbaf"
2042
+ },
2043
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c2fd20bac06e555bb8ac0ce69eb1ea20f83a1fc3501c8a66469b1a31f619b0986237050779f52b615bd7b8d76a25fc95ca2ed32525c75f27ffc87ac397e6cbaf",
2044
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwv0gusBuVVu4rAzmnrHqIPg6H8NQ\nHIpmRpsaMfYZsJhiNwUHefUrYVvXuNdqJfyVyi7TJSXHXyf/yHrDl+bLrw==\n-----END PUBLIC KEY-----",
2045
+ "sha" : "SHA-256",
2046
+ "type" : "EcdsaP1363Verify",
2047
+ "tests" : [
2048
+ {
2049
+ "tcId" : 150,
2050
+ "comment" : "edge case for u1",
2051
+ "msg" : "313233343030",
2052
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd8374253e3e21bd154448d0a8f640fe46fafa8b19ce78d538f6cc0a19662d3601",
2053
+ "result" : "valid",
2054
+ "flags" : []
2055
+ }
2056
+ ]
2057
+ },
2058
+ {
2059
+ "jwk" : {
2060
+ "crv" : "P-256",
2061
+ "kid" : "none",
2062
+ "kty" : "EC",
2063
+ "x" : "P9ahyn93-zsLvnJsNyAQBoQm4R6mrnjOF77a5LuobO0",
2064
+ "y" : "A85VFkBr-M-quHRerBzWkBitb1C1Rhhy3fxW4Ns8j_Q"
2065
+ },
2066
+ "key" : {
2067
+ "curve" : "secp256r1",
2068
+ "keySize" : 256,
2069
+ "type" : "EcPublicKey",
2070
+ "uncompressed" : "043fd6a1ca7f77fb3b0bbe726c372010068426e11ea6ae78ce17bedae4bba86ced03ce5516406bf8cfaab8745eac1cd69018ad6f50b5461872ddfc56e0db3c8ff4",
2071
+ "wx" : "3fd6a1ca7f77fb3b0bbe726c372010068426e11ea6ae78ce17bedae4bba86ced",
2072
+ "wy" : "03ce5516406bf8cfaab8745eac1cd69018ad6f50b5461872ddfc56e0db3c8ff4"
2073
+ },
2074
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043fd6a1ca7f77fb3b0bbe726c372010068426e11ea6ae78ce17bedae4bba86ced03ce5516406bf8cfaab8745eac1cd69018ad6f50b5461872ddfc56e0db3c8ff4",
2075
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEP9ahyn93+zsLvnJsNyAQBoQm4R6m\nrnjOF77a5LuobO0DzlUWQGv4z6q4dF6sHNaQGK1vULVGGHLd/Fbg2zyP9A==\n-----END PUBLIC KEY-----",
2076
+ "sha" : "SHA-256",
2077
+ "type" : "EcdsaP1363Verify",
2078
+ "tests" : [
2079
+ {
2080
+ "tcId" : 151,
2081
+ "comment" : "edge case for u1",
2082
+ "msg" : "313233343030",
2083
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd357cfd3be4d01d413c5b9ede36cba5452c11ee7fe14879e749ae6a2d897a52d6",
2084
+ "result" : "valid",
2085
+ "flags" : []
2086
+ }
2087
+ ]
2088
+ },
2089
+ {
2090
+ "jwk" : {
2091
+ "crv" : "P-256",
2092
+ "kid" : "none",
2093
+ "kty" : "EC",
2094
+ "x" : "nLjlHielrjtiSmDW3DJzTkmJ2yDpvKPt4e33sIaRERQ",
2095
+ "y" : "tMEEqzxnfks21lVuitX1I0EKGfLid6qJX8VzIrRCdUQ"
2096
+ },
2097
+ "key" : {
2098
+ "curve" : "secp256r1",
2099
+ "keySize" : 256,
2100
+ "type" : "EcPublicKey",
2101
+ "uncompressed" : "049cb8e51e27a5ae3b624a60d6dc32734e4989db20e9bca3ede1edf7b086911114b4c104ab3c677e4b36d6556e8ad5f523410a19f2e277aa895fc57322b4427544",
2102
+ "wx" : "009cb8e51e27a5ae3b624a60d6dc32734e4989db20e9bca3ede1edf7b086911114",
2103
+ "wy" : "00b4c104ab3c677e4b36d6556e8ad5f523410a19f2e277aa895fc57322b4427544"
2104
+ },
2105
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200049cb8e51e27a5ae3b624a60d6dc32734e4989db20e9bca3ede1edf7b086911114b4c104ab3c677e4b36d6556e8ad5f523410a19f2e277aa895fc57322b4427544",
2106
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEnLjlHielrjtiSmDW3DJzTkmJ2yDp\nvKPt4e33sIaRERS0wQSrPGd+SzbWVW6K1fUjQQoZ8uJ3qolfxXMitEJ1RA==\n-----END PUBLIC KEY-----",
2107
+ "sha" : "SHA-256",
2108
+ "type" : "EcdsaP1363Verify",
2109
+ "tests" : [
2110
+ {
2111
+ "tcId" : 152,
2112
+ "comment" : "edge case for u1",
2113
+ "msg" : "313233343030",
2114
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd29798c5c0ee287d4a5e8e6b799fd86b8df5225298e6ffc807cd2f2bc27a0a6d8",
2115
+ "result" : "valid",
2116
+ "flags" : []
2117
+ }
2118
+ ]
2119
+ },
2120
+ {
2121
+ "jwk" : {
2122
+ "crv" : "P-256",
2123
+ "kid" : "none",
2124
+ "kty" : "EC",
2125
+ "x" : "o-UsFW3K8QUCYgt5VbwrQLx47z1WnhIjwmJRLY9JYCo",
2126
+ "y" : "SiA58xwQlwJK08yG5XMh3gMjVUY0hhZM8ZKUSXffFH8"
2127
+ },
2128
+ "key" : {
2129
+ "curve" : "secp256r1",
2130
+ "keySize" : 256,
2131
+ "type" : "EcPublicKey",
2132
+ "uncompressed" : "04a3e52c156dcaf10502620b7955bc2b40bc78ef3d569e1223c262512d8f49602a4a2039f31c1097024ad3cc86e57321de032355463486164cf192944977df147f",
2133
+ "wx" : "00a3e52c156dcaf10502620b7955bc2b40bc78ef3d569e1223c262512d8f49602a",
2134
+ "wy" : "4a2039f31c1097024ad3cc86e57321de032355463486164cf192944977df147f"
2135
+ },
2136
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a3e52c156dcaf10502620b7955bc2b40bc78ef3d569e1223c262512d8f49602a4a2039f31c1097024ad3cc86e57321de032355463486164cf192944977df147f",
2137
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEo+UsFW3K8QUCYgt5VbwrQLx47z1W\nnhIjwmJRLY9JYCpKIDnzHBCXAkrTzIblcyHeAyNVRjSGFkzxkpRJd98Ufw==\n-----END PUBLIC KEY-----",
2138
+ "sha" : "SHA-256",
2139
+ "type" : "EcdsaP1363Verify",
2140
+ "tests" : [
2141
+ {
2142
+ "tcId" : 153,
2143
+ "comment" : "edge case for u1",
2144
+ "msg" : "313233343030",
2145
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0b70f22c781092452dca1a5711fa3a5a1f72add1bf52c2ff7cae4820b30078dd",
2146
+ "result" : "valid",
2147
+ "flags" : []
2148
+ }
2149
+ ]
2150
+ },
2151
+ {
2152
+ "jwk" : {
2153
+ "crv" : "P-256",
2154
+ "kid" : "none",
2155
+ "kty" : "EC",
2156
+ "x" : "8Zt4kocg1b7o5nD7kAEPsVw3v5G1ilFXw_PAWbJlXog",
2157
+ "y" : "z3AeyWL7ShHc8nP13DV-WEaFYMfP65QtB0q9QykmBQk"
2158
+ },
2159
+ "key" : {
2160
+ "curve" : "secp256r1",
2161
+ "keySize" : 256,
2162
+ "type" : "EcPublicKey",
2163
+ "uncompressed" : "04f19b78928720d5bee8e670fb90010fb15c37bf91b58a5157c3f3c059b2655e88cf701ec962fb4a11dcf273f5dc357e58468560c7cfeb942d074abd4329260509",
2164
+ "wx" : "00f19b78928720d5bee8e670fb90010fb15c37bf91b58a5157c3f3c059b2655e88",
2165
+ "wy" : "00cf701ec962fb4a11dcf273f5dc357e58468560c7cfeb942d074abd4329260509"
2166
+ },
2167
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f19b78928720d5bee8e670fb90010fb15c37bf91b58a5157c3f3c059b2655e88cf701ec962fb4a11dcf273f5dc357e58468560c7cfeb942d074abd4329260509",
2168
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8Zt4kocg1b7o5nD7kAEPsVw3v5G1\nilFXw/PAWbJlXojPcB7JYvtKEdzyc/XcNX5YRoVgx8/rlC0HSr1DKSYFCQ==\n-----END PUBLIC KEY-----",
2169
+ "sha" : "SHA-256",
2170
+ "type" : "EcdsaP1363Verify",
2171
+ "tests" : [
2172
+ {
2173
+ "tcId" : 154,
2174
+ "comment" : "edge case for u1",
2175
+ "msg" : "313233343030",
2176
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd16e1e458f021248a5b9434ae23f474b43ee55ba37ea585fef95c90416600f1ba",
2177
+ "result" : "valid",
2178
+ "flags" : []
2179
+ }
2180
+ ]
2181
+ },
2182
+ {
2183
+ "jwk" : {
2184
+ "crv" : "P-256",
2185
+ "kid" : "none",
2186
+ "kty" : "EC",
2187
+ "x" : "g6dERZ7N-wGlz1KyegW7czdILSQvI117TLiTRVRckKg",
2188
+ "y" : "wF1JM3uWSYEyh96f_pA1X9kF3188MpRYKBIfN8xQ3m4"
2189
+ },
2190
+ "key" : {
2191
+ "curve" : "secp256r1",
2192
+ "keySize" : 256,
2193
+ "type" : "EcPublicKey",
2194
+ "uncompressed" : "0483a744459ecdfb01a5cf52b27a05bb7337482d242f235d7b4cb89345545c90a8c05d49337b9649813287de9ffe90355fd905df5f3c32945828121f37cc50de6e",
2195
+ "wx" : "0083a744459ecdfb01a5cf52b27a05bb7337482d242f235d7b4cb89345545c90a8",
2196
+ "wy" : "00c05d49337b9649813287de9ffe90355fd905df5f3c32945828121f37cc50de6e"
2197
+ },
2198
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000483a744459ecdfb01a5cf52b27a05bb7337482d242f235d7b4cb89345545c90a8c05d49337b9649813287de9ffe90355fd905df5f3c32945828121f37cc50de6e",
2199
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEg6dERZ7N+wGlz1KyegW7czdILSQv\nI117TLiTRVRckKjAXUkze5ZJgTKH3p/+kDVf2QXfXzwylFgoEh83zFDebg==\n-----END PUBLIC KEY-----",
2200
+ "sha" : "SHA-256",
2201
+ "type" : "EcdsaP1363Verify",
2202
+ "tests" : [
2203
+ {
2204
+ "tcId" : 155,
2205
+ "comment" : "edge case for u1",
2206
+ "msg" : "313233343030",
2207
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2252d6856831b6cf895e4f0535eeaf0e5e5809753df848fe760ad86219016a97",
2208
+ "result" : "valid",
2209
+ "flags" : []
2210
+ }
2211
+ ]
2212
+ },
2213
+ {
2214
+ "jwk" : {
2215
+ "crv" : "P-256",
2216
+ "kid" : "none",
2217
+ "kty" : "EC",
2218
+ "x" : "3RPGs0xWmC3a4STwOd_SP0sZu-iM7o5SiuUeXW86Idc",
2219
+ "y" : "v61MLm8mP-XrWcqXTQOfwOTDNFaS-1Mgva5L07QqRf8"
2220
+ },
2221
+ "key" : {
2222
+ "curve" : "secp256r1",
2223
+ "keySize" : 256,
2224
+ "type" : "EcPublicKey",
2225
+ "uncompressed" : "04dd13c6b34c56982ddae124f039dfd23f4b19bbe88cee8e528ae51e5d6f3a21d7bfad4c2e6f263fe5eb59ca974d039fc0e4c3345692fb5320bdae4bd3b42a45ff",
2226
+ "wx" : "00dd13c6b34c56982ddae124f039dfd23f4b19bbe88cee8e528ae51e5d6f3a21d7",
2227
+ "wy" : "00bfad4c2e6f263fe5eb59ca974d039fc0e4c3345692fb5320bdae4bd3b42a45ff"
2228
+ },
2229
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dd13c6b34c56982ddae124f039dfd23f4b19bbe88cee8e528ae51e5d6f3a21d7bfad4c2e6f263fe5eb59ca974d039fc0e4c3345692fb5320bdae4bd3b42a45ff",
2230
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3RPGs0xWmC3a4STwOd/SP0sZu+iM\n7o5SiuUeXW86Ide/rUwubyY/5etZypdNA5/A5MM0VpL7UyC9rkvTtCpF/w==\n-----END PUBLIC KEY-----",
2231
+ "sha" : "SHA-256",
2232
+ "type" : "EcdsaP1363Verify",
2233
+ "tests" : [
2234
+ {
2235
+ "tcId" : 156,
2236
+ "comment" : "edge case for u1",
2237
+ "msg" : "313233343030",
2238
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd81ffe55f178da695b28c86d8b406b15dab1a9e39661a3ae017fbe390ac0972c3",
2239
+ "result" : "valid",
2240
+ "flags" : []
2241
+ }
2242
+ ]
2243
+ },
2244
+ {
2245
+ "jwk" : {
2246
+ "crv" : "P-256",
2247
+ "kid" : "none",
2248
+ "kty" : "EC",
2249
+ "x" : "Z-b2Wc3ehpovZfCU6U5bTfrWNrv5UZL-7tAbDz3rdGA",
2250
+ "y" : "o34KUfJYt661Hf5ZL1z9VoW75YcSyNkjPGKIZDfDi6A"
2251
+ },
2252
+ "key" : {
2253
+ "curve" : "secp256r1",
2254
+ "keySize" : 256,
2255
+ "type" : "EcPublicKey",
2256
+ "uncompressed" : "0467e6f659cdde869a2f65f094e94e5b4dfad636bbf95192feeed01b0f3deb7460a37e0a51f258b7aeb51dfe592f5cfd5685bbe58712c8d9233c62886437c38ba0",
2257
+ "wx" : "67e6f659cdde869a2f65f094e94e5b4dfad636bbf95192feeed01b0f3deb7460",
2258
+ "wy" : "00a37e0a51f258b7aeb51dfe592f5cfd5685bbe58712c8d9233c62886437c38ba0"
2259
+ },
2260
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000467e6f659cdde869a2f65f094e94e5b4dfad636bbf95192feeed01b0f3deb7460a37e0a51f258b7aeb51dfe592f5cfd5685bbe58712c8d9233c62886437c38ba0",
2261
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZ+b2Wc3ehpovZfCU6U5bTfrWNrv5\nUZL+7tAbDz3rdGCjfgpR8li3rrUd/lkvXP1WhbvlhxLI2SM8YohkN8OLoA==\n-----END PUBLIC KEY-----",
2262
+ "sha" : "SHA-256",
2263
+ "type" : "EcdsaP1363Verify",
2264
+ "tests" : [
2265
+ {
2266
+ "tcId" : 157,
2267
+ "comment" : "edge case for u2",
2268
+ "msg" : "313233343030",
2269
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7fffffffaaaaaaaaffffffffffffffffe9a2538f37b28a2c513dee40fecbb71a",
2270
+ "result" : "valid",
2271
+ "flags" : []
2272
+ }
2273
+ ]
2274
+ },
2275
+ {
2276
+ "jwk" : {
2277
+ "crv" : "P-256",
2278
+ "kid" : "none",
2279
+ "kty" : "EC",
2280
+ "x" : "LrZBJQWuwFxlRfApkyCH5JDQVRHo7B9Zlhe7Nn-eyq8",
2281
+ "y" : "gF9R78xIA0A_mxrgEkiQ8GpD_tzdsxgw9maa8pKJXLA"
2282
+ },
2283
+ "key" : {
2284
+ "curve" : "secp256r1",
2285
+ "keySize" : 256,
2286
+ "type" : "EcPublicKey",
2287
+ "uncompressed" : "042eb6412505aec05c6545f029932087e490d05511e8ec1f599617bb367f9ecaaf805f51efcc4803403f9b1ae0124890f06a43fedcddb31830f6669af292895cb0",
2288
+ "wx" : "2eb6412505aec05c6545f029932087e490d05511e8ec1f599617bb367f9ecaaf",
2289
+ "wy" : "00805f51efcc4803403f9b1ae0124890f06a43fedcddb31830f6669af292895cb0"
2290
+ },
2291
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042eb6412505aec05c6545f029932087e490d05511e8ec1f599617bb367f9ecaaf805f51efcc4803403f9b1ae0124890f06a43fedcddb31830f6669af292895cb0",
2292
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAELrZBJQWuwFxlRfApkyCH5JDQVRHo\n7B9Zlhe7Nn+eyq+AX1HvzEgDQD+bGuASSJDwakP+3N2zGDD2ZprykolcsA==\n-----END PUBLIC KEY-----",
2293
+ "sha" : "SHA-256",
2294
+ "type" : "EcdsaP1363Verify",
2295
+ "tests" : [
2296
+ {
2297
+ "tcId" : 158,
2298
+ "comment" : "edge case for u2",
2299
+ "msg" : "313233343030",
2300
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdb62f26b5f2a2b26f6de86d42ad8a13da3ab3cccd0459b201de009e526adf21f2",
2301
+ "result" : "valid",
2302
+ "flags" : []
2303
+ }
2304
+ ]
2305
+ },
2306
+ {
2307
+ "jwk" : {
2308
+ "crv" : "P-256",
2309
+ "kid" : "none",
2310
+ "kty" : "EC",
2311
+ "x" : "hNtkWGjqs146n9gOBW4uhVQ146a2jXWlCoVGJf4NfzU",
2312
+ "y" : "bSWJrGVe3JoR7z4HXt3amr-S5yFxVw73v0Oi7jkzjP4"
2313
+ },
2314
+ "key" : {
2315
+ "curve" : "secp256r1",
2316
+ "keySize" : 256,
2317
+ "type" : "EcPublicKey",
2318
+ "uncompressed" : "0484db645868eab35e3a9fd80e056e2e855435e3a6b68d75a50a854625fe0d7f356d2589ac655edc9a11ef3e075eddda9abf92e72171570ef7bf43a2ee39338cfe",
2319
+ "wx" : "0084db645868eab35e3a9fd80e056e2e855435e3a6b68d75a50a854625fe0d7f35",
2320
+ "wy" : "6d2589ac655edc9a11ef3e075eddda9abf92e72171570ef7bf43a2ee39338cfe"
2321
+ },
2322
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000484db645868eab35e3a9fd80e056e2e855435e3a6b68d75a50a854625fe0d7f356d2589ac655edc9a11ef3e075eddda9abf92e72171570ef7bf43a2ee39338cfe",
2323
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhNtkWGjqs146n9gOBW4uhVQ146a2\njXWlCoVGJf4NfzVtJYmsZV7cmhHvPgde3dqav5LnIXFXDve/Q6LuOTOM/g==\n-----END PUBLIC KEY-----",
2324
+ "sha" : "SHA-256",
2325
+ "type" : "EcdsaP1363Verify",
2326
+ "tests" : [
2327
+ {
2328
+ "tcId" : 159,
2329
+ "comment" : "edge case for u2",
2330
+ "msg" : "313233343030",
2331
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbb1d9ac949dd748cd02bbbe749bd351cd57b38bb61403d700686aa7b4c90851e",
2332
+ "result" : "valid",
2333
+ "flags" : []
2334
+ }
2335
+ ]
2336
+ },
2337
+ {
2338
+ "jwk" : {
2339
+ "crv" : "P-256",
2340
+ "kid" : "none",
2341
+ "kty" : "EC",
2342
+ "x" : "kbnkfFYnhmLXXAmDsiyo6mqlBZt6L_djfrKXXjhq1mM",
2343
+ "y" : "SaqP8oPQ93wY1tEdwGIWX9E8PAMQZ5wUCDAqFoVOz70"
2344
+ },
2345
+ "key" : {
2346
+ "curve" : "secp256r1",
2347
+ "keySize" : 256,
2348
+ "type" : "EcPublicKey",
2349
+ "uncompressed" : "0491b9e47c56278662d75c0983b22ca8ea6aa5059b7a2ff7637eb2975e386ad66349aa8ff283d0f77c18d6d11dc062165fd13c3c0310679c1408302a16854ecfbd",
2350
+ "wx" : "0091b9e47c56278662d75c0983b22ca8ea6aa5059b7a2ff7637eb2975e386ad663",
2351
+ "wy" : "49aa8ff283d0f77c18d6d11dc062165fd13c3c0310679c1408302a16854ecfbd"
2352
+ },
2353
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000491b9e47c56278662d75c0983b22ca8ea6aa5059b7a2ff7637eb2975e386ad66349aa8ff283d0f77c18d6d11dc062165fd13c3c0310679c1408302a16854ecfbd",
2354
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkbnkfFYnhmLXXAmDsiyo6mqlBZt6\nL/djfrKXXjhq1mNJqo/yg9D3fBjW0R3AYhZf0Tw8AxBnnBQIMCoWhU7PvQ==\n-----END PUBLIC KEY-----",
2355
+ "sha" : "SHA-256",
2356
+ "type" : "EcdsaP1363Verify",
2357
+ "tests" : [
2358
+ {
2359
+ "tcId" : 160,
2360
+ "comment" : "edge case for u2",
2361
+ "msg" : "313233343030",
2362
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd66755a00638cdaec1c732513ca0234ece52545dac11f816e818f725b4f60aaf2",
2363
+ "result" : "valid",
2364
+ "flags" : []
2365
+ }
2366
+ ]
2367
+ },
2368
+ {
2369
+ "jwk" : {
2370
+ "crv" : "P-256",
2371
+ "kid" : "none",
2372
+ "kty" : "EC",
2373
+ "x" : "8-wvE8rwTQGStH-0xTEfttTcawqegC5TJ_fsXujkg00",
2374
+ "y" : "-X4-Rot9Dbhn1uz-geKw-VMd-H79tHwTOKwyH-_lpDI"
2375
+ },
2376
+ "key" : {
2377
+ "curve" : "secp256r1",
2378
+ "keySize" : 256,
2379
+ "type" : "EcPublicKey",
2380
+ "uncompressed" : "04f3ec2f13caf04d0192b47fb4c5311fb6d4dc6b0a9e802e5327f7ec5ee8e4834df97e3e468b7d0db867d6ecfe81e2b0f9531df87efdb47c1338ac321fefe5a432",
2381
+ "wx" : "00f3ec2f13caf04d0192b47fb4c5311fb6d4dc6b0a9e802e5327f7ec5ee8e4834d",
2382
+ "wy" : "00f97e3e468b7d0db867d6ecfe81e2b0f9531df87efdb47c1338ac321fefe5a432"
2383
+ },
2384
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f3ec2f13caf04d0192b47fb4c5311fb6d4dc6b0a9e802e5327f7ec5ee8e4834df97e3e468b7d0db867d6ecfe81e2b0f9531df87efdb47c1338ac321fefe5a432",
2385
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8+wvE8rwTQGStH+0xTEfttTcawqe\ngC5TJ/fsXujkg035fj5Gi30NuGfW7P6B4rD5Ux34fv20fBM4rDIf7+WkMg==\n-----END PUBLIC KEY-----",
2386
+ "sha" : "SHA-256",
2387
+ "type" : "EcdsaP1363Verify",
2388
+ "tests" : [
2389
+ {
2390
+ "tcId" : 161,
2391
+ "comment" : "edge case for u2",
2392
+ "msg" : "313233343030",
2393
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd55a00c9fcdaebb6032513ca0234ecfffe98ebe492fdf02e48ca48e982beb3669",
2394
+ "result" : "valid",
2395
+ "flags" : []
2396
+ }
2397
+ ]
2398
+ },
2399
+ {
2400
+ "jwk" : {
2401
+ "crv" : "P-256",
2402
+ "kid" : "none",
2403
+ "kty" : "EC",
2404
+ "x" : "2SsgCu_Ktqx9r9msry-hCzGAI1uPRrRQPkaTxnD8zIg",
2405
+ "y" : "XvLzrr9bMXR1M2JWdo98Ge-3NS0n5MzK3IW2uKuSLHI"
2406
+ },
2407
+ "key" : {
2408
+ "curve" : "secp256r1",
2409
+ "keySize" : 256,
2410
+ "type" : "EcPublicKey",
2411
+ "uncompressed" : "04d92b200aefcab6ac7dafd9acaf2fa10b3180235b8f46b4503e4693c670fccc885ef2f3aebf5b317475336256768f7c19efb7352d27e4cccadc85b6b8ab922c72",
2412
+ "wx" : "00d92b200aefcab6ac7dafd9acaf2fa10b3180235b8f46b4503e4693c670fccc88",
2413
+ "wy" : "5ef2f3aebf5b317475336256768f7c19efb7352d27e4cccadc85b6b8ab922c72"
2414
+ },
2415
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d92b200aefcab6ac7dafd9acaf2fa10b3180235b8f46b4503e4693c670fccc885ef2f3aebf5b317475336256768f7c19efb7352d27e4cccadc85b6b8ab922c72",
2416
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE2SsgCu/Ktqx9r9msry+hCzGAI1uP\nRrRQPkaTxnD8zIhe8vOuv1sxdHUzYlZ2j3wZ77c1LSfkzMrchba4q5Iscg==\n-----END PUBLIC KEY-----",
2417
+ "sha" : "SHA-256",
2418
+ "type" : "EcdsaP1363Verify",
2419
+ "tests" : [
2420
+ {
2421
+ "tcId" : 162,
2422
+ "comment" : "edge case for u2",
2423
+ "msg" : "313233343030",
2424
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdab40193f9b5d76c064a27940469d9fffd31d7c925fbe05c919491d3057d66cd2",
2425
+ "result" : "valid",
2426
+ "flags" : []
2427
+ }
2428
+ ]
2429
+ },
2430
+ {
2431
+ "jwk" : {
2432
+ "crv" : "P-256",
2433
+ "kid" : "none",
2434
+ "kty" : "EC",
2435
+ "x" : "Cog2HrkuzKJiWzjl-Yu6u5a_F5s9dvxIFAo7zYgVI80",
2436
+ "y" : "5r31YDP4SlBUA1WXN12QhmqiyWuGpBzPbt6_RymK1Ik"
2437
+ },
2438
+ "key" : {
2439
+ "curve" : "secp256r1",
2440
+ "keySize" : 256,
2441
+ "type" : "EcPublicKey",
2442
+ "uncompressed" : "040a88361eb92ecca2625b38e5f98bbabb96bf179b3d76fc48140a3bcd881523cde6bdf56033f84a5054035597375d90866aa2c96b86a41ccf6edebf47298ad489",
2443
+ "wx" : "0a88361eb92ecca2625b38e5f98bbabb96bf179b3d76fc48140a3bcd881523cd",
2444
+ "wy" : "00e6bdf56033f84a5054035597375d90866aa2c96b86a41ccf6edebf47298ad489"
2445
+ },
2446
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040a88361eb92ecca2625b38e5f98bbabb96bf179b3d76fc48140a3bcd881523cde6bdf56033f84a5054035597375d90866aa2c96b86a41ccf6edebf47298ad489",
2447
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECog2HrkuzKJiWzjl+Yu6u5a/F5s9\ndvxIFAo7zYgVI83mvfVgM/hKUFQDVZc3XZCGaqLJa4akHM9u3r9HKYrUiQ==\n-----END PUBLIC KEY-----",
2448
+ "sha" : "SHA-256",
2449
+ "type" : "EcdsaP1363Verify",
2450
+ "tests" : [
2451
+ {
2452
+ "tcId" : 163,
2453
+ "comment" : "edge case for u2",
2454
+ "msg" : "313233343030",
2455
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdca0234ebb5fdcb13ca0234ecffffffffcb0dadbbc7f549f8a26b4408d0dc8600",
2456
+ "result" : "valid",
2457
+ "flags" : []
2458
+ }
2459
+ ]
2460
+ },
2461
+ {
2462
+ "jwk" : {
2463
+ "crv" : "P-256",
2464
+ "kid" : "none",
2465
+ "kty" : "EC",
2466
+ "x" : "0PsXzNj6_oJ-DBr8XY2ANm4rIOfxSlY6K6UEadhDdeg",
2467
+ "y" : "aGEladOeK7n1VDVVZGRt6ZrGAsxjSc-MHiNqfedjfZM"
2468
+ },
2469
+ "key" : {
2470
+ "curve" : "secp256r1",
2471
+ "keySize" : 256,
2472
+ "type" : "EcPublicKey",
2473
+ "uncompressed" : "04d0fb17ccd8fafe827e0c1afc5d8d80366e2b20e7f14a563a2ba50469d84375e868612569d39e2bb9f554355564646de99ac602cc6349cf8c1e236a7de7637d93",
2474
+ "wx" : "00d0fb17ccd8fafe827e0c1afc5d8d80366e2b20e7f14a563a2ba50469d84375e8",
2475
+ "wy" : "68612569d39e2bb9f554355564646de99ac602cc6349cf8c1e236a7de7637d93"
2476
+ },
2477
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d0fb17ccd8fafe827e0c1afc5d8d80366e2b20e7f14a563a2ba50469d84375e868612569d39e2bb9f554355564646de99ac602cc6349cf8c1e236a7de7637d93",
2478
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0PsXzNj6/oJ+DBr8XY2ANm4rIOfx\nSlY6K6UEadhDdehoYSVp054rufVUNVVkZG3pmsYCzGNJz4weI2p952N9kw==\n-----END PUBLIC KEY-----",
2479
+ "sha" : "SHA-256",
2480
+ "type" : "EcdsaP1363Verify",
2481
+ "tests" : [
2482
+ {
2483
+ "tcId" : 164,
2484
+ "comment" : "edge case for u2",
2485
+ "msg" : "313233343030",
2486
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbfffffff3ea3677e082b9310572620ae19933a9e65b285598711c77298815ad3",
2487
+ "result" : "valid",
2488
+ "flags" : []
2489
+ }
2490
+ ]
2491
+ },
2492
+ {
2493
+ "jwk" : {
2494
+ "crv" : "P-256",
2495
+ "kid" : "none",
2496
+ "kty" : "EC",
2497
+ "x" : "g28zu8HcDT06u87w2R8R4qxBgQdsmvCiKx5DCdPtsnY",
2498
+ "y" : "mrRD_2-QHjDHc4Z1gpl8K-wrDLgSDXYCNvOpW76IH3U"
2499
+ },
2500
+ "key" : {
2501
+ "curve" : "secp256r1",
2502
+ "keySize" : 256,
2503
+ "type" : "EcPublicKey",
2504
+ "uncompressed" : "04836f33bbc1dc0d3d3abbcef0d91f11e2ac4181076c9af0a22b1e4309d3edb2769ab443ff6f901e30c773867582997c2bec2b0cb8120d760236f3a95bbe881f75",
2505
+ "wx" : "00836f33bbc1dc0d3d3abbcef0d91f11e2ac4181076c9af0a22b1e4309d3edb276",
2506
+ "wy" : "009ab443ff6f901e30c773867582997c2bec2b0cb8120d760236f3a95bbe881f75"
2507
+ },
2508
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004836f33bbc1dc0d3d3abbcef0d91f11e2ac4181076c9af0a22b1e4309d3edb2769ab443ff6f901e30c773867582997c2bec2b0cb8120d760236f3a95bbe881f75",
2509
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEg28zu8HcDT06u87w2R8R4qxBgQds\nmvCiKx5DCdPtsnaatEP/b5AeMMdzhnWCmXwr7CsMuBINdgI286lbvogfdQ==\n-----END PUBLIC KEY-----",
2510
+ "sha" : "SHA-256",
2511
+ "type" : "EcdsaP1363Verify",
2512
+ "tests" : [
2513
+ {
2514
+ "tcId" : 165,
2515
+ "comment" : "edge case for u2",
2516
+ "msg" : "313233343030",
2517
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd266666663bbbbbbbe6666666666666665b37902e023fab7c8f055d86e5cc41f4",
2518
+ "result" : "valid",
2519
+ "flags" : []
2520
+ }
2521
+ ]
2522
+ },
2523
+ {
2524
+ "jwk" : {
2525
+ "crv" : "P-256",
2526
+ "kid" : "none",
2527
+ "kty" : "EC",
2528
+ "x" : "kvmfvpc-1KKZcZuu5LQydBI3A03sjXK6UQPLM-Vf7rg",
2529
+ "y" : "Az3Q6RE0xzQXSInz688behrAV2cokoDuenlM69bmlpc"
2530
+ },
2531
+ "key" : {
2532
+ "curve" : "secp256r1",
2533
+ "keySize" : 256,
2534
+ "type" : "EcPublicKey",
2535
+ "uncompressed" : "0492f99fbe973ed4a299719baee4b432741237034dec8d72ba5103cb33e55feeb8033dd0e91134c734174889f3ebcf1b7a1ac05767289280ee7a794cebd6e69697",
2536
+ "wx" : "0092f99fbe973ed4a299719baee4b432741237034dec8d72ba5103cb33e55feeb8",
2537
+ "wy" : "033dd0e91134c734174889f3ebcf1b7a1ac05767289280ee7a794cebd6e69697"
2538
+ },
2539
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000492f99fbe973ed4a299719baee4b432741237034dec8d72ba5103cb33e55feeb8033dd0e91134c734174889f3ebcf1b7a1ac05767289280ee7a794cebd6e69697",
2540
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkvmfvpc+1KKZcZuu5LQydBI3A03s\njXK6UQPLM+Vf7rgDPdDpETTHNBdIifPrzxt6GsBXZyiSgO56eUzr1uaWlw==\n-----END PUBLIC KEY-----",
2541
+ "sha" : "SHA-256",
2542
+ "type" : "EcdsaP1363Verify",
2543
+ "tests" : [
2544
+ {
2545
+ "tcId" : 166,
2546
+ "comment" : "edge case for u2",
2547
+ "msg" : "313233343030",
2548
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbfffffff36db6db7a492492492492492146c573f4c6dfc8d08a443e258970b09",
2549
+ "result" : "valid",
2550
+ "flags" : []
2551
+ }
2552
+ ]
2553
+ },
2554
+ {
2555
+ "jwk" : {
2556
+ "crv" : "P-256",
2557
+ "kid" : "none",
2558
+ "kty" : "EC",
2559
+ "x" : "01uljaMBl9N45hjsD6fi4tEs_9c-u7IEnRMLukNK8J4",
2560
+ "y" : "_4OYbmh15B6kMrdYWkmzpsd8uzxHkZ-OgodMeUY1wdI"
2561
+ },
2562
+ "key" : {
2563
+ "curve" : "secp256r1",
2564
+ "keySize" : 256,
2565
+ "type" : "EcPublicKey",
2566
+ "uncompressed" : "04d35ba58da30197d378e618ec0fa7e2e2d12cffd73ebbb2049d130bba434af09eff83986e6875e41ea432b7585a49b3a6c77cbb3c47919f8e82874c794635c1d2",
2567
+ "wx" : "00d35ba58da30197d378e618ec0fa7e2e2d12cffd73ebbb2049d130bba434af09e",
2568
+ "wy" : "00ff83986e6875e41ea432b7585a49b3a6c77cbb3c47919f8e82874c794635c1d2"
2569
+ },
2570
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004d35ba58da30197d378e618ec0fa7e2e2d12cffd73ebbb2049d130bba434af09eff83986e6875e41ea432b7585a49b3a6c77cbb3c47919f8e82874c794635c1d2",
2571
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE01uljaMBl9N45hjsD6fi4tEs/9c+\nu7IEnRMLukNK8J7/g5huaHXkHqQyt1haSbOmx3y7PEeRn46Ch0x5RjXB0g==\n-----END PUBLIC KEY-----",
2572
+ "sha" : "SHA-256",
2573
+ "type" : "EcdsaP1363Verify",
2574
+ "tests" : [
2575
+ {
2576
+ "tcId" : 167,
2577
+ "comment" : "edge case for u2",
2578
+ "msg" : "313233343030",
2579
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbfffffff2aaaaaab7fffffffffffffffc815d0e60b3e596ecb1ad3a27cfd49c4",
2580
+ "result" : "valid",
2581
+ "flags" : []
2582
+ }
2583
+ ]
2584
+ },
2585
+ {
2586
+ "jwk" : {
2587
+ "crv" : "P-256",
2588
+ "kid" : "none",
2589
+ "kty" : "EC",
2590
+ "x" : "hlHOSQ8bRtc_P_R1FJvikTZpczSlGdfdqwclyNB5MiQ",
2591
+ "y" : "4RxlvYypLci8mugpEfC1J1HOId2QA65gkAvYJfWQzCg"
2592
+ },
2593
+ "key" : {
2594
+ "curve" : "secp256r1",
2595
+ "keySize" : 256,
2596
+ "type" : "EcPublicKey",
2597
+ "uncompressed" : "048651ce490f1b46d73f3ff475149be29136697334a519d7ddab0725c8d0793224e11c65bd8ca92dc8bc9ae82911f0b52751ce21dd9003ae60900bd825f590cc28",
2598
+ "wx" : "008651ce490f1b46d73f3ff475149be29136697334a519d7ddab0725c8d0793224",
2599
+ "wy" : "00e11c65bd8ca92dc8bc9ae82911f0b52751ce21dd9003ae60900bd825f590cc28"
2600
+ },
2601
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048651ce490f1b46d73f3ff475149be29136697334a519d7ddab0725c8d0793224e11c65bd8ca92dc8bc9ae82911f0b52751ce21dd9003ae60900bd825f590cc28",
2602
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhlHOSQ8bRtc/P/R1FJvikTZpczSl\nGdfdqwclyNB5MiThHGW9jKktyLya6CkR8LUnUc4h3ZADrmCQC9gl9ZDMKA==\n-----END PUBLIC KEY-----",
2603
+ "sha" : "SHA-256",
2604
+ "type" : "EcdsaP1363Verify",
2605
+ "tests" : [
2606
+ {
2607
+ "tcId" : 168,
2608
+ "comment" : "edge case for u2",
2609
+ "msg" : "313233343030",
2610
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7fffffff55555555ffffffffffffffffd344a71e6f651458a27bdc81fd976e37",
2611
+ "result" : "valid",
2612
+ "flags" : []
2613
+ }
2614
+ ]
2615
+ },
2616
+ {
2617
+ "jwk" : {
2618
+ "crv" : "P-256",
2619
+ "kid" : "none",
2620
+ "kty" : "EC",
2621
+ "x" : "bY4bEsgxoNqHlWUP-V8QHtkh2eL3KxWxzaypgmuc_G0",
2622
+ "y" : "721j4rxcCJVwOUpLyfiS1ebHpqY3sgRppYwQatSGvzc"
2623
+ },
2624
+ "key" : {
2625
+ "curve" : "secp256r1",
2626
+ "keySize" : 256,
2627
+ "type" : "EcPublicKey",
2628
+ "uncompressed" : "046d8e1b12c831a0da8795650ff95f101ed921d9e2f72b15b1cdaca9826b9cfc6def6d63e2bc5c089570394a4bc9f892d5e6c7a6a637b20469a58c106ad486bf37",
2629
+ "wx" : "6d8e1b12c831a0da8795650ff95f101ed921d9e2f72b15b1cdaca9826b9cfc6d",
2630
+ "wy" : "00ef6d63e2bc5c089570394a4bc9f892d5e6c7a6a637b20469a58c106ad486bf37"
2631
+ },
2632
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046d8e1b12c831a0da8795650ff95f101ed921d9e2f72b15b1cdaca9826b9cfc6def6d63e2bc5c089570394a4bc9f892d5e6c7a6a637b20469a58c106ad486bf37",
2633
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEbY4bEsgxoNqHlWUP+V8QHtkh2eL3\nKxWxzaypgmuc/G3vbWPivFwIlXA5SkvJ+JLV5sempjeyBGmljBBq1Ia/Nw==\n-----END PUBLIC KEY-----",
2634
+ "sha" : "SHA-256",
2635
+ "type" : "EcdsaP1363Verify",
2636
+ "tests" : [
2637
+ {
2638
+ "tcId" : 169,
2639
+ "comment" : "edge case for u2",
2640
+ "msg" : "313233343030",
2641
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3fffffff800000007fffffffffffffffde737d56d38bcf4279dce5617e3192aa",
2642
+ "result" : "valid",
2643
+ "flags" : []
2644
+ }
2645
+ ]
2646
+ },
2647
+ {
2648
+ "jwk" : {
2649
+ "crv" : "P-256",
2650
+ "kid" : "none",
2651
+ "kty" : "EC",
2652
+ "x" : "CuWAuukztO8pl8vbsJIjKMqaQQ9ieg99_yTLTZIOFUI",
2653
+ "y" : "iRHn-Mw2WoqI64FCGjYczCuZ4wnY3Nmpi6g8OUnYk-M"
2654
+ },
2655
+ "key" : {
2656
+ "curve" : "secp256r1",
2657
+ "keySize" : 256,
2658
+ "type" : "EcPublicKey",
2659
+ "uncompressed" : "040ae580bae933b4ef2997cbdbb0922328ca9a410f627a0f7dff24cb4d920e15428911e7f8cc365a8a88eb81421a361ccc2b99e309d8dcd9a98ba83c3949d893e3",
2660
+ "wx" : "0ae580bae933b4ef2997cbdbb0922328ca9a410f627a0f7dff24cb4d920e1542",
2661
+ "wy" : "008911e7f8cc365a8a88eb81421a361ccc2b99e309d8dcd9a98ba83c3949d893e3"
2662
+ },
2663
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040ae580bae933b4ef2997cbdbb0922328ca9a410f627a0f7dff24cb4d920e15428911e7f8cc365a8a88eb81421a361ccc2b99e309d8dcd9a98ba83c3949d893e3",
2664
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECuWAuukztO8pl8vbsJIjKMqaQQ9i\neg99/yTLTZIOFUKJEef4zDZaiojrgUIaNhzMK5njCdjc2amLqDw5SdiT4w==\n-----END PUBLIC KEY-----",
2665
+ "sha" : "SHA-256",
2666
+ "type" : "EcdsaP1363Verify",
2667
+ "tests" : [
2668
+ {
2669
+ "tcId" : 170,
2670
+ "comment" : "edge case for u2",
2671
+ "msg" : "313233343030",
2672
+ "sig" : "7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5d8ecd64a4eeba466815ddf3a4de9a8e6abd9c5db0a01eb80343553da648428f",
2673
+ "result" : "valid",
2674
+ "flags" : []
2675
+ }
2676
+ ]
2677
+ },
2678
+ {
2679
+ "jwk" : {
2680
+ "crv" : "P-256",
2681
+ "kid" : "none",
2682
+ "kty" : "EC",
2683
+ "x" : "W4Ev1SGq-mmDWoSczm-962mDtELSRE_nDhNMAn_EaWM",
2684
+ "y" : "g4pA8qNgkukATpLY2UDPVjhVDOZyzouNThXrpUmSSek"
2685
+ },
2686
+ "key" : {
2687
+ "curve" : "secp256r1",
2688
+ "keySize" : 256,
2689
+ "type" : "EcPublicKey",
2690
+ "uncompressed" : "045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963838a40f2a36092e9004e92d8d940cf5638550ce672ce8b8d4e15eba5499249e9",
2691
+ "wx" : "5b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963",
2692
+ "wy" : "00838a40f2a36092e9004e92d8d940cf5638550ce672ce8b8d4e15eba5499249e9"
2693
+ },
2694
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963838a40f2a36092e9004e92d8d940cf5638550ce672ce8b8d4e15eba5499249e9",
2695
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEW4Ev1SGq+mmDWoSczm+962mDtELS\nRE/nDhNMAn/EaWODikDyo2CS6QBOktjZQM9WOFUM5nLOi41OFeulSZJJ6Q==\n-----END PUBLIC KEY-----",
2696
+ "sha" : "SHA-256",
2697
+ "type" : "EcdsaP1363Verify",
2698
+ "tests" : [
2699
+ {
2700
+ "tcId" : 171,
2701
+ "comment" : "point duplication during verification",
2702
+ "msg" : "313233343030",
2703
+ "sig" : "6f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569bb726660235793aa9957a61e76e00c2c435109cf9a15dd624d53f4301047856b",
2704
+ "result" : "valid",
2705
+ "flags" : [
2706
+ "PointDuplication"
2707
+ ]
2708
+ }
2709
+ ]
2710
+ },
2711
+ {
2712
+ "jwk" : {
2713
+ "crv" : "P-256",
2714
+ "kid" : "none",
2715
+ "kty" : "EC",
2716
+ "x" : "W4Ev1SGq-mmDWoSczm-962mDtELSRE_nDhNMAn_EaWM",
2717
+ "y" : "fHW_DFyfbRf_sW0nJr8wqceq8xqNMXRyseoUWrZtthY"
2718
+ },
2719
+ "key" : {
2720
+ "curve" : "secp256r1",
2721
+ "keySize" : 256,
2722
+ "type" : "EcPublicKey",
2723
+ "uncompressed" : "045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc469637c75bf0c5c9f6d17ffb16d2726bf30a9c7aaf31a8d317472b1ea145ab66db616",
2724
+ "wx" : "5b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc46963",
2725
+ "wy" : "7c75bf0c5c9f6d17ffb16d2726bf30a9c7aaf31a8d317472b1ea145ab66db616"
2726
+ },
2727
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045b812fd521aafa69835a849cce6fbdeb6983b442d2444fe70e134c027fc469637c75bf0c5c9f6d17ffb16d2726bf30a9c7aaf31a8d317472b1ea145ab66db616",
2728
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEW4Ev1SGq+mmDWoSczm+962mDtELS\nRE/nDhNMAn/EaWN8db8MXJ9tF/+xbScmvzCpx6rzGo0xdHKx6hRatm22Fg==\n-----END PUBLIC KEY-----",
2729
+ "sha" : "SHA-256",
2730
+ "type" : "EcdsaP1363Verify",
2731
+ "tests" : [
2732
+ {
2733
+ "tcId" : 172,
2734
+ "comment" : "duplication bug",
2735
+ "msg" : "313233343030",
2736
+ "sig" : "6f2347cab7dd76858fe0555ac3bc99048c4aacafdfb6bcbe05ea6c42c4934569bb726660235793aa9957a61e76e00c2c435109cf9a15dd624d53f4301047856b",
2737
+ "result" : "invalid",
2738
+ "flags" : [
2739
+ "PointDuplication"
2740
+ ]
2741
+ }
2742
+ ]
2743
+ },
2744
+ {
2745
+ "jwk" : {
2746
+ "crv" : "P-256",
2747
+ "kid" : "none",
2748
+ "kty" : "EC",
2749
+ "x" : "at2oK5AmGw8xn6oNh4ZlprbaSX8JyQMXYiLDSs_vcqY",
2750
+ "y" : "R-b1DcxArV2bWfdgK7Ii-tcaQb9eH530lZo2TGLkiNk"
2751
+ },
2752
+ "key" : {
2753
+ "curve" : "secp256r1",
2754
+ "keySize" : 256,
2755
+ "type" : "EcPublicKey",
2756
+ "uncompressed" : "046adda82b90261b0f319faa0d878665a6b6da497f09c903176222c34acfef72a647e6f50dcc40ad5d9b59f7602bb222fad71a41bf5e1f9df4959a364c62e488d9",
2757
+ "wx" : "6adda82b90261b0f319faa0d878665a6b6da497f09c903176222c34acfef72a6",
2758
+ "wy" : "47e6f50dcc40ad5d9b59f7602bb222fad71a41bf5e1f9df4959a364c62e488d9"
2759
+ },
2760
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046adda82b90261b0f319faa0d878665a6b6da497f09c903176222c34acfef72a647e6f50dcc40ad5d9b59f7602bb222fad71a41bf5e1f9df4959a364c62e488d9",
2761
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEat2oK5AmGw8xn6oNh4ZlprbaSX8J\nyQMXYiLDSs/vcqZH5vUNzECtXZtZ92ArsiL61xpBv14fnfSVmjZMYuSI2Q==\n-----END PUBLIC KEY-----",
2762
+ "sha" : "SHA-256",
2763
+ "type" : "EcdsaP1363Verify",
2764
+ "tests" : [
2765
+ {
2766
+ "tcId" : 173,
2767
+ "comment" : "point with x-coordinate 0",
2768
+ "msg" : "313233343030",
2769
+ "sig" : "0000000000000000000000000000000000000000000000000000000000000001555555550000000055555555555555553ef7a8e48d07df81a693439654210c70",
2770
+ "result" : "invalid",
2771
+ "flags" : []
2772
+ }
2773
+ ]
2774
+ },
2775
+ {
2776
+ "jwk" : {
2777
+ "crv" : "P-256",
2778
+ "kid" : "none",
2779
+ "kty" : "EC",
2780
+ "x" : "L8oNCkeRTed-1W5-zMMnamARIMbfAGnIJcj2oByfOCA",
2781
+ "y" : "ZfNFCh0XxrJJiaOb6xx97PyoOE-9wpRBjl2Aezxu194"
2782
+ },
2783
+ "key" : {
2784
+ "curve" : "secp256r1",
2785
+ "keySize" : 256,
2786
+ "type" : "EcPublicKey",
2787
+ "uncompressed" : "042fca0d0a47914de77ed56e7eccc3276a601120c6df0069c825c8f6a01c9f382065f3450a1d17c6b24989a39beb1c7decfca8384fbdc294418e5d807b3c6ed7de",
2788
+ "wx" : "2fca0d0a47914de77ed56e7eccc3276a601120c6df0069c825c8f6a01c9f3820",
2789
+ "wy" : "65f3450a1d17c6b24989a39beb1c7decfca8384fbdc294418e5d807b3c6ed7de"
2790
+ },
2791
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042fca0d0a47914de77ed56e7eccc3276a601120c6df0069c825c8f6a01c9f382065f3450a1d17c6b24989a39beb1c7decfca8384fbdc294418e5d807b3c6ed7de",
2792
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEL8oNCkeRTed+1W5+zMMnamARIMbf\nAGnIJcj2oByfOCBl80UKHRfGskmJo5vrHH3s/Kg4T73ClEGOXYB7PG7X3g==\n-----END PUBLIC KEY-----",
2793
+ "sha" : "SHA-256",
2794
+ "type" : "EcdsaP1363Verify",
2795
+ "tests" : [
2796
+ {
2797
+ "tcId" : 174,
2798
+ "comment" : "point with x-coordinate 0",
2799
+ "msg" : "313233343030",
2800
+ "sig" : "010000000000000000000000000000000000000000000000000000000000000000003333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9",
2801
+ "result" : "invalid",
2802
+ "flags" : []
2803
+ }
2804
+ ]
2805
+ },
2806
+ {
2807
+ "jwk" : {
2808
+ "crv" : "P-256",
2809
+ "kid" : "none",
2810
+ "kty" : "EC",
2811
+ "x" : "3YbTtfShPoURCDt4ACCBxT_0Z_EevZilGmM9t2Zl0lA",
2812
+ "y" : "RdXIIAyJ8voQ2Ek0kibSHY367W_41cs-G34XR068GPc"
2813
+ },
2814
+ "key" : {
2815
+ "curve" : "secp256r1",
2816
+ "keySize" : 256,
2817
+ "type" : "EcPublicKey",
2818
+ "uncompressed" : "04dd86d3b5f4a13e8511083b78002081c53ff467f11ebd98a51a633db76665d25045d5c8200c89f2fa10d849349226d21d8dfaed6ff8d5cb3e1b7e17474ebc18f7",
2819
+ "wx" : "00dd86d3b5f4a13e8511083b78002081c53ff467f11ebd98a51a633db76665d250",
2820
+ "wy" : "45d5c8200c89f2fa10d849349226d21d8dfaed6ff8d5cb3e1b7e17474ebc18f7"
2821
+ },
2822
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004dd86d3b5f4a13e8511083b78002081c53ff467f11ebd98a51a633db76665d25045d5c8200c89f2fa10d849349226d21d8dfaed6ff8d5cb3e1b7e17474ebc18f7",
2823
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3YbTtfShPoURCDt4ACCBxT/0Z/Ee\nvZilGmM9t2Zl0lBF1cggDIny+hDYSTSSJtIdjfrtb/jVyz4bfhdHTrwY9w==\n-----END PUBLIC KEY-----",
2824
+ "sha" : "SHA-256",
2825
+ "type" : "EcdsaP1363Verify",
2826
+ "tests" : [
2827
+ {
2828
+ "tcId" : 175,
2829
+ "comment" : "comparison with point at infinity ",
2830
+ "msg" : "313233343030",
2831
+ "sig" : "555555550000000055555555555555553ef7a8e48d07df81a693439654210c703333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aa9",
2832
+ "result" : "invalid",
2833
+ "flags" : []
2834
+ }
2835
+ ]
2836
+ },
2837
+ {
2838
+ "jwk" : {
2839
+ "crv" : "P-256",
2840
+ "kid" : "none",
2841
+ "kty" : "EC",
2842
+ "x" : "T-pVsyyzKsoMEsTNCr-05ksPWlFuV4wBZZGpP1oPvMU",
2843
+ "y" : "19P9ELK-ZoxUeyEva7FMiPD-zTiopLLHhe075izksoA"
2844
+ },
2845
+ "key" : {
2846
+ "curve" : "secp256r1",
2847
+ "keySize" : 256,
2848
+ "type" : "EcPublicKey",
2849
+ "uncompressed" : "044fea55b32cb32aca0c12c4cd0abfb4e64b0f5a516e578c016591a93f5a0fbcc5d7d3fd10b2be668c547b212f6bb14c88f0fecd38a8a4b2c785ed3be62ce4b280",
2850
+ "wx" : "4fea55b32cb32aca0c12c4cd0abfb4e64b0f5a516e578c016591a93f5a0fbcc5",
2851
+ "wy" : "00d7d3fd10b2be668c547b212f6bb14c88f0fecd38a8a4b2c785ed3be62ce4b280"
2852
+ },
2853
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044fea55b32cb32aca0c12c4cd0abfb4e64b0f5a516e578c016591a93f5a0fbcc5d7d3fd10b2be668c547b212f6bb14c88f0fecd38a8a4b2c785ed3be62ce4b280",
2854
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAET+pVsyyzKsoMEsTNCr+05ksPWlFu\nV4wBZZGpP1oPvMXX0/0Qsr5mjFR7IS9rsUyI8P7NOKiksseF7TvmLOSygA==\n-----END PUBLIC KEY-----",
2855
+ "sha" : "SHA-256",
2856
+ "type" : "EcdsaP1363Verify",
2857
+ "tests" : [
2858
+ {
2859
+ "tcId" : 176,
2860
+ "comment" : "extreme value for k and edgecase s",
2861
+ "msg" : "313233343030",
2862
+ "sig" : "7cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978555555550000000055555555555555553ef7a8e48d07df81a693439654210c70",
2863
+ "result" : "valid",
2864
+ "flags" : []
2865
+ }
2866
+ ]
2867
+ },
2868
+ {
2869
+ "jwk" : {
2870
+ "crv" : "P-256",
2871
+ "kid" : "none",
2872
+ "kty" : "EC",
2873
+ "x" : "xqdxUnAkIneSFwpvju5zW_Mrf5ivZp6tKZgC4y18MQc",
2874
+ "y" : "vDtLXmWriHu9NDVys-VhkmH-Ogc-L_14QS9yaGfbWJ4"
2875
+ },
2876
+ "key" : {
2877
+ "curve" : "secp256r1",
2878
+ "keySize" : 256,
2879
+ "type" : "EcPublicKey",
2880
+ "uncompressed" : "04c6a771527024227792170a6f8eee735bf32b7f98af669ead299802e32d7c3107bc3b4b5e65ab887bbd343572b3e5619261fe3a073e2ffd78412f726867db589e",
2881
+ "wx" : "00c6a771527024227792170a6f8eee735bf32b7f98af669ead299802e32d7c3107",
2882
+ "wy" : "00bc3b4b5e65ab887bbd343572b3e5619261fe3a073e2ffd78412f726867db589e"
2883
+ },
2884
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004c6a771527024227792170a6f8eee735bf32b7f98af669ead299802e32d7c3107bc3b4b5e65ab887bbd343572b3e5619261fe3a073e2ffd78412f726867db589e",
2885
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAExqdxUnAkIneSFwpvju5zW/Mrf5iv\nZp6tKZgC4y18MQe8O0teZauIe700NXKz5WGSYf46Bz4v/XhBL3JoZ9tYng==\n-----END PUBLIC KEY-----",
2886
+ "sha" : "SHA-256",
2887
+ "type" : "EcdsaP1363Verify",
2888
+ "tests" : [
2889
+ {
2890
+ "tcId" : 177,
2891
+ "comment" : "extreme value for k and s^-1",
2892
+ "msg" : "313233343030",
2893
+ "sig" : "7cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc",
2894
+ "result" : "valid",
2895
+ "flags" : []
2896
+ }
2897
+ ]
2898
+ },
2899
+ {
2900
+ "jwk" : {
2901
+ "crv" : "P-256",
2902
+ "kid" : "none",
2903
+ "kty" : "EC",
2904
+ "x" : "hRwrutCOVOx6mvmfSfA2RNbsbVmyB_7JjehafRW5Vu8",
2905
+ "y" : "zumWAoMEUHVoS0EL6ND3SUuRqiN59gcnMZ8Q3esP6dY"
2906
+ },
2907
+ "key" : {
2908
+ "curve" : "secp256r1",
2909
+ "keySize" : 256,
2910
+ "type" : "EcPublicKey",
2911
+ "uncompressed" : "04851c2bbad08e54ec7a9af99f49f03644d6ec6d59b207fec98de85a7d15b956efcee9960283045075684b410be8d0f7494b91aa2379f60727319f10ddeb0fe9d6",
2912
+ "wx" : "00851c2bbad08e54ec7a9af99f49f03644d6ec6d59b207fec98de85a7d15b956ef",
2913
+ "wy" : "00cee9960283045075684b410be8d0f7494b91aa2379f60727319f10ddeb0fe9d6"
2914
+ },
2915
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004851c2bbad08e54ec7a9af99f49f03644d6ec6d59b207fec98de85a7d15b956efcee9960283045075684b410be8d0f7494b91aa2379f60727319f10ddeb0fe9d6",
2916
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEhRwrutCOVOx6mvmfSfA2RNbsbVmy\nB/7JjehafRW5Vu/O6ZYCgwRQdWhLQQvo0PdJS5GqI3n2BycxnxDd6w/p1g==\n-----END PUBLIC KEY-----",
2917
+ "sha" : "SHA-256",
2918
+ "type" : "EcdsaP1363Verify",
2919
+ "tests" : [
2920
+ {
2921
+ "tcId" : 178,
2922
+ "comment" : "extreme value for k and s^-1",
2923
+ "msg" : "313233343030",
2924
+ "sig" : "7cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc47669978cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7",
2925
+ "result" : "valid",
2926
+ "flags" : []
2927
+ }
2928
+ ]
2929
+ },
2930
+ {
2931
+ "jwk" : {
2932
+ "crv" : "P-256",
2933
+ "kid" : "none",
2934
+ "kty" : "EC",
2935
+ "x" : "9kF8imcFhOOIZ2lJ5T2n_FWRH_aDGNG_MGEgWssZxI8",
2936
+ "y" : "jyt0PfNK0PcmdKy3UFkpeEd5zZrJFsNmnq1DAmq21D8"
2937
+ },
2938
+ "key" : {
2939
+ "curve" : "secp256r1",
2940
+ "keySize" : 256,
2941
+ "type" : "EcPublicKey",
2942
+ "uncompressed" : "04f6417c8a670584e388676949e53da7fc55911ff68318d1bf3061205acb19c48f8f2b743df34ad0f72674acb7505929784779cd9ac916c3669ead43026ab6d43f",
2943
+ "wx" : "00f6417c8a670584e388676949e53da7fc55911ff68318d1bf3061205acb19c48f",
2944
+ "wy" : "008f2b743df34ad0f72674acb7505929784779cd9ac916c3669ead43026ab6d43f"
2945
+ },
2946
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004f6417c8a670584e388676949e53da7fc55911ff68318d1bf3061205acb19c48f8f2b743df34ad0f72674acb7505929784779cd9ac916c3669ead43026ab6d43f",
2947
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9kF8imcFhOOIZ2lJ5T2n/FWRH/aD\nGNG/MGEgWssZxI+PK3Q980rQ9yZ0rLdQWSl4R3nNmskWw2aerUMCarbUPw==\n-----END PUBLIC KEY-----",
2948
+ "sha" : "SHA-256",
2949
+ "type" : "EcdsaP1363Verify",
2950
+ "tests" : [
2951
+ {
2952
+ "tcId" : 179,
2953
+ "comment" : "extreme value for k and s^-1",
2954
+ "msg" : "313233343030",
2955
+ "sig" : "7cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc476699783333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa",
2956
+ "result" : "valid",
2957
+ "flags" : []
2958
+ }
2959
+ ]
2960
+ },
2961
+ {
2962
+ "jwk" : {
2963
+ "crv" : "P-256",
2964
+ "kid" : "none",
2965
+ "kty" : "EC",
2966
+ "x" : "UBQhJ3vkWl7v7GxjmTDWNgMlZa9CDPM3P1V_qn-KBkM",
2967
+ "y" : "hnPWy2B24c_Nx9_nOEyOXKwI10UB8q5uicrRldCqE3E"
2968
+ },
2969
+ "key" : {
2970
+ "curve" : "secp256r1",
2971
+ "keySize" : 256,
2972
+ "type" : "EcPublicKey",
2973
+ "uncompressed" : "04501421277be45a5eefec6c639930d636032565af420cf3373f557faa7f8a06438673d6cb6076e1cfcdc7dfe7384c8e5cac08d74501f2ae6e89cad195d0aa1371",
2974
+ "wx" : "501421277be45a5eefec6c639930d636032565af420cf3373f557faa7f8a0643",
2975
+ "wy" : "008673d6cb6076e1cfcdc7dfe7384c8e5cac08d74501f2ae6e89cad195d0aa1371"
2976
+ },
2977
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004501421277be45a5eefec6c639930d636032565af420cf3373f557faa7f8a06438673d6cb6076e1cfcdc7dfe7384c8e5cac08d74501f2ae6e89cad195d0aa1371",
2978
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEUBQhJ3vkWl7v7GxjmTDWNgMlZa9C\nDPM3P1V/qn+KBkOGc9bLYHbhz83H3+c4TI5crAjXRQHyrm6JytGV0KoTcQ==\n-----END PUBLIC KEY-----",
2979
+ "sha" : "SHA-256",
2980
+ "type" : "EcdsaP1363Verify",
2981
+ "tests" : [
2982
+ {
2983
+ "tcId" : 180,
2984
+ "comment" : "extreme value for k and s^-1",
2985
+ "msg" : "313233343030",
2986
+ "sig" : "7cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997849249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185",
2987
+ "result" : "valid",
2988
+ "flags" : []
2989
+ }
2990
+ ]
2991
+ },
2992
+ {
2993
+ "jwk" : {
2994
+ "crv" : "P-256",
2995
+ "kid" : "none",
2996
+ "kty" : "EC",
2997
+ "x" : "DZNb-f_BFaUnc19ynKikyiPuAaSJSt8ONBWshOgIuzQ",
2998
+ "y" : "MZWjdi_qKe04kSvZ6mxP3nDDBQiTpDdYUM5h2C66M8U"
2999
+ },
3000
+ "key" : {
3001
+ "curve" : "secp256r1",
3002
+ "keySize" : 256,
3003
+ "type" : "EcPublicKey",
3004
+ "uncompressed" : "040d935bf9ffc115a527735f729ca8a4ca23ee01a4894adf0e3415ac84e808bb343195a3762fea29ed38912bd9ea6c4fde70c3050893a4375850ce61d82eba33c5",
3005
+ "wx" : "0d935bf9ffc115a527735f729ca8a4ca23ee01a4894adf0e3415ac84e808bb34",
3006
+ "wy" : "3195a3762fea29ed38912bd9ea6c4fde70c3050893a4375850ce61d82eba33c5"
3007
+ },
3008
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200040d935bf9ffc115a527735f729ca8a4ca23ee01a4894adf0e3415ac84e808bb343195a3762fea29ed38912bd9ea6c4fde70c3050893a4375850ce61d82eba33c5",
3009
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEDZNb+f/BFaUnc19ynKikyiPuAaSJ\nSt8ONBWshOgIuzQxlaN2L+op7TiRK9nqbE/ecMMFCJOkN1hQzmHYLrozxQ==\n-----END PUBLIC KEY-----",
3010
+ "sha" : "SHA-256",
3011
+ "type" : "EcdsaP1363Verify",
3012
+ "tests" : [
3013
+ {
3014
+ "tcId" : 181,
3015
+ "comment" : "extreme value for k",
3016
+ "msg" : "313233343030",
3017
+ "sig" : "7cf27b188d034f7e8a52380304b51ac3c08969e277f21b35a60b48fc4766997816a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb",
3018
+ "result" : "valid",
3019
+ "flags" : []
3020
+ }
3021
+ ]
3022
+ },
3023
+ {
3024
+ "jwk" : {
3025
+ "crv" : "P-256",
3026
+ "kid" : "none",
3027
+ "kty" : "EC",
3028
+ "x" : "Xln1Bwhka-iliTVQFDCOYLZo-2cBliBsQedI5k5NyiE",
3029
+ "y" : "XeN_7lyXvK9xRNW0WZgvUu7q-98Dqsuv7zjiE2JKAd4"
3030
+ },
3031
+ "key" : {
3032
+ "curve" : "secp256r1",
3033
+ "keySize" : 256,
3034
+ "type" : "EcPublicKey",
3035
+ "uncompressed" : "045e59f50708646be8a589355014308e60b668fb670196206c41e748e64e4dca215de37fee5c97bcaf7144d5b459982f52eeeafbdf03aacbafef38e213624a01de",
3036
+ "wx" : "5e59f50708646be8a589355014308e60b668fb670196206c41e748e64e4dca21",
3037
+ "wy" : "5de37fee5c97bcaf7144d5b459982f52eeeafbdf03aacbafef38e213624a01de"
3038
+ },
3039
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200045e59f50708646be8a589355014308e60b668fb670196206c41e748e64e4dca215de37fee5c97bcaf7144d5b459982f52eeeafbdf03aacbafef38e213624a01de",
3040
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXln1Bwhka+iliTVQFDCOYLZo+2cB\nliBsQedI5k5NyiFd43/uXJe8r3FE1bRZmC9S7ur73wOqy6/vOOITYkoB3g==\n-----END PUBLIC KEY-----",
3041
+ "sha" : "SHA-256",
3042
+ "type" : "EcdsaP1363Verify",
3043
+ "tests" : [
3044
+ {
3045
+ "tcId" : 182,
3046
+ "comment" : "extreme value for k and edgecase s",
3047
+ "msg" : "313233343030",
3048
+ "sig" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296555555550000000055555555555555553ef7a8e48d07df81a693439654210c70",
3049
+ "result" : "valid",
3050
+ "flags" : []
3051
+ }
3052
+ ]
3053
+ },
3054
+ {
3055
+ "jwk" : {
3056
+ "crv" : "P-256",
3057
+ "kid" : "none",
3058
+ "kty" : "EC",
3059
+ "x" : "Fp-3lzJYQ_r_L3pbVEXani_WIm9--Q7wv-kkEEsC244",
3060
+ "y" : "e7uN5mLHubHPmyL3ouWCvUbVgdaIeO-yuGGxMdih1mc"
3061
+ },
3062
+ "key" : {
3063
+ "curve" : "secp256r1",
3064
+ "keySize" : 256,
3065
+ "type" : "EcPublicKey",
3066
+ "uncompressed" : "04169fb797325843faff2f7a5b5445da9e2fd6226f7ef90ef0bfe924104b02db8e7bbb8de662c7b9b1cf9b22f7a2e582bd46d581d68878efb2b861b131d8a1d667",
3067
+ "wx" : "169fb797325843faff2f7a5b5445da9e2fd6226f7ef90ef0bfe924104b02db8e",
3068
+ "wy" : "7bbb8de662c7b9b1cf9b22f7a2e582bd46d581d68878efb2b861b131d8a1d667"
3069
+ },
3070
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004169fb797325843faff2f7a5b5445da9e2fd6226f7ef90ef0bfe924104b02db8e7bbb8de662c7b9b1cf9b22f7a2e582bd46d581d68878efb2b861b131d8a1d667",
3071
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEFp+3lzJYQ/r/L3pbVEXani/WIm9+\n+Q7wv+kkEEsC2457u43mYse5sc+bIvei5YK9RtWB1oh477K4YbEx2KHWZw==\n-----END PUBLIC KEY-----",
3072
+ "sha" : "SHA-256",
3073
+ "type" : "EcdsaP1363Verify",
3074
+ "tests" : [
3075
+ {
3076
+ "tcId" : 183,
3077
+ "comment" : "extreme value for k and s^-1",
3078
+ "msg" : "313233343030",
3079
+ "sig" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b6db6db6249249254924924924924924625bd7a09bec4ca81bcdd9f8fd6b63cc",
3080
+ "result" : "valid",
3081
+ "flags" : []
3082
+ }
3083
+ ]
3084
+ },
3085
+ {
3086
+ "jwk" : {
3087
+ "crv" : "P-256",
3088
+ "kid" : "none",
3089
+ "kty" : "EC",
3090
+ "x" : "JxzYnAABQwlrYtTp5MqIWu8vcCPRiv_a-Le1SJgUh1Q",
3091
+ "y" : "ChxulU4yEIQ1tV-jhbD3ZIGmCbkUnMtLArLKR_6OTaU"
3092
+ },
3093
+ "key" : {
3094
+ "curve" : "secp256r1",
3095
+ "keySize" : 256,
3096
+ "type" : "EcPublicKey",
3097
+ "uncompressed" : "04271cd89c000143096b62d4e9e4ca885aef2f7023d18affdaf8b7b548981487540a1c6e954e32108435b55fa385b0f76481a609b9149ccb4b02b2ca47fe8e4da5",
3098
+ "wx" : "271cd89c000143096b62d4e9e4ca885aef2f7023d18affdaf8b7b54898148754",
3099
+ "wy" : "0a1c6e954e32108435b55fa385b0f76481a609b9149ccb4b02b2ca47fe8e4da5"
3100
+ },
3101
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004271cd89c000143096b62d4e9e4ca885aef2f7023d18affdaf8b7b548981487540a1c6e954e32108435b55fa385b0f76481a609b9149ccb4b02b2ca47fe8e4da5",
3102
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJxzYnAABQwlrYtTp5MqIWu8vcCPR\niv/a+Le1SJgUh1QKHG6VTjIQhDW1X6OFsPdkgaYJuRScy0sCsspH/o5NpQ==\n-----END PUBLIC KEY-----",
3103
+ "sha" : "SHA-256",
3104
+ "type" : "EcdsaP1363Verify",
3105
+ "tests" : [
3106
+ {
3107
+ "tcId" : 184,
3108
+ "comment" : "extreme value for k and s^-1",
3109
+ "msg" : "313233343030",
3110
+ "sig" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296cccccccc00000000cccccccccccccccc971f2ef152794b9d8fc7d568c9e8eaa7",
3111
+ "result" : "valid",
3112
+ "flags" : []
3113
+ }
3114
+ ]
3115
+ },
3116
+ {
3117
+ "jwk" : {
3118
+ "crv" : "P-256",
3119
+ "kid" : "none",
3120
+ "kty" : "EC",
3121
+ "x" : "PQvH7Y8J0st920brwe15mrFWOpq4S_UkWHoiCv5JnBI",
3122
+ "y" : "4i3Ds8EDgkpPN42WrbCkCKvxnOfWiqYkT3jLIW-j-N8"
3123
+ },
3124
+ "key" : {
3125
+ "curve" : "secp256r1",
3126
+ "keySize" : 256,
3127
+ "type" : "EcPublicKey",
3128
+ "uncompressed" : "043d0bc7ed8f09d2cb7ddb46ebc1ed799ab1563a9ab84bf524587a220afe499c12e22dc3b3c103824a4f378d96adb0a408abf19ce7d68aa6244f78cb216fa3f8df",
3129
+ "wx" : "3d0bc7ed8f09d2cb7ddb46ebc1ed799ab1563a9ab84bf524587a220afe499c12",
3130
+ "wy" : "00e22dc3b3c103824a4f378d96adb0a408abf19ce7d68aa6244f78cb216fa3f8df"
3131
+ },
3132
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043d0bc7ed8f09d2cb7ddb46ebc1ed799ab1563a9ab84bf524587a220afe499c12e22dc3b3c103824a4f378d96adb0a408abf19ce7d68aa6244f78cb216fa3f8df",
3133
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPQvH7Y8J0st920brwe15mrFWOpq4\nS/UkWHoiCv5JnBLiLcOzwQOCSk83jZatsKQIq/Gc59aKpiRPeMshb6P43w==\n-----END PUBLIC KEY-----",
3134
+ "sha" : "SHA-256",
3135
+ "type" : "EcdsaP1363Verify",
3136
+ "tests" : [
3137
+ {
3138
+ "tcId" : 185,
3139
+ "comment" : "extreme value for k and s^-1",
3140
+ "msg" : "313233343030",
3141
+ "sig" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2963333333300000000333333333333333325c7cbbc549e52e763f1f55a327a3aaa",
3142
+ "result" : "valid",
3143
+ "flags" : []
3144
+ }
3145
+ ]
3146
+ },
3147
+ {
3148
+ "jwk" : {
3149
+ "crv" : "P-256",
3150
+ "kid" : "none",
3151
+ "kty" : "EC",
3152
+ "x" : "psiFreGkxWb5uwENBml0q7KBeX-nASiMchvL0jZjqbc",
3153
+ "y" : "LkJLaQlXFo0ZOmCW_HeisASpx9Rn4Afh8gWEWPmK8xY"
3154
+ },
3155
+ "key" : {
3156
+ "curve" : "secp256r1",
3157
+ "keySize" : 256,
3158
+ "type" : "EcPublicKey",
3159
+ "uncompressed" : "04a6c885ade1a4c566f9bb010d066974abb281797fa701288c721bcbd23663a9b72e424b690957168d193a6096fc77a2b004a9c7d467e007e1f2058458f98af316",
3160
+ "wx" : "00a6c885ade1a4c566f9bb010d066974abb281797fa701288c721bcbd23663a9b7",
3161
+ "wy" : "2e424b690957168d193a6096fc77a2b004a9c7d467e007e1f2058458f98af316"
3162
+ },
3163
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004a6c885ade1a4c566f9bb010d066974abb281797fa701288c721bcbd23663a9b72e424b690957168d193a6096fc77a2b004a9c7d467e007e1f2058458f98af316",
3164
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEpsiFreGkxWb5uwENBml0q7KBeX+n\nASiMchvL0jZjqbcuQktpCVcWjRk6YJb8d6KwBKnH1GfgB+HyBYRY+YrzFg==\n-----END PUBLIC KEY-----",
3165
+ "sha" : "SHA-256",
3166
+ "type" : "EcdsaP1363Verify",
3167
+ "tests" : [
3168
+ {
3169
+ "tcId" : 186,
3170
+ "comment" : "extreme value for k and s^-1",
3171
+ "msg" : "313233343030",
3172
+ "sig" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29649249248db6db6dbb6db6db6db6db6db5a8b230d0b2b51dcd7ebf0c9fef7c185",
3173
+ "result" : "valid",
3174
+ "flags" : []
3175
+ }
3176
+ ]
3177
+ },
3178
+ {
3179
+ "jwk" : {
3180
+ "crv" : "P-256",
3181
+ "kid" : "none",
3182
+ "kty" : "EC",
3183
+ "x" : "jTwsLDt2W6gonmrDgSVyolv3XfYth6tzMMO9utnr-lw",
3184
+ "y" : "TGhFRC1mk1sjhXjUOuxU98qhYh0a8kHUYy4LeAxCP10"
3185
+ },
3186
+ "key" : {
3187
+ "curve" : "secp256r1",
3188
+ "keySize" : 256,
3189
+ "type" : "EcPublicKey",
3190
+ "uncompressed" : "048d3c2c2c3b765ba8289e6ac3812572a25bf75df62d87ab7330c3bdbad9ebfa5c4c6845442d66935b238578d43aec54f7caa1621d1af241d4632e0b780c423f5d",
3191
+ "wx" : "008d3c2c2c3b765ba8289e6ac3812572a25bf75df62d87ab7330c3bdbad9ebfa5c",
3192
+ "wy" : "4c6845442d66935b238578d43aec54f7caa1621d1af241d4632e0b780c423f5d"
3193
+ },
3194
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200048d3c2c2c3b765ba8289e6ac3812572a25bf75df62d87ab7330c3bdbad9ebfa5c4c6845442d66935b238578d43aec54f7caa1621d1af241d4632e0b780c423f5d",
3195
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEjTwsLDt2W6gonmrDgSVyolv3XfYt\nh6tzMMO9utnr+lxMaEVELWaTWyOFeNQ67FT3yqFiHRryQdRjLgt4DEI/XQ==\n-----END PUBLIC KEY-----",
3196
+ "sha" : "SHA-256",
3197
+ "type" : "EcdsaP1363Verify",
3198
+ "tests" : [
3199
+ {
3200
+ "tcId" : 187,
3201
+ "comment" : "extreme value for k",
3202
+ "msg" : "313233343030",
3203
+ "sig" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29616a4502e2781e11ac82cbc9d1edd8c981584d13e18411e2f6e0478c34416e3bb",
3204
+ "result" : "valid",
3205
+ "flags" : []
3206
+ }
3207
+ ]
3208
+ },
3209
+ {
3210
+ "jwk" : {
3211
+ "crv" : "P-256",
3212
+ "kid" : "none",
3213
+ "kty" : "EC",
3214
+ "x" : "axfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5RdiYwpY",
3215
+ "y" : "T-NC4v4af5uO5-tKfA-eFivOM1drMV7Oy7ZAaDe_UfU"
3216
+ },
3217
+ "key" : {
3218
+ "curve" : "secp256r1",
3219
+ "keySize" : 256,
3220
+ "type" : "EcPublicKey",
3221
+ "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5",
3222
+ "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296",
3223
+ "wy" : "4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5"
3224
+ },
3225
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2964fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5",
3226
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9Q==\n-----END PUBLIC KEY-----",
3227
+ "sha" : "SHA-256",
3228
+ "type" : "EcdsaP1363Verify",
3229
+ "tests" : [
3230
+ {
3231
+ "tcId" : 188,
3232
+ "comment" : "testing point duplication",
3233
+ "msg" : "313233343030",
3234
+ "sig" : "bb5a52f42f9c9261ed4361f59422a1e30036e7c32b270c8807a419feca605023249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2",
3235
+ "result" : "invalid",
3236
+ "flags" : []
3237
+ },
3238
+ {
3239
+ "tcId" : 189,
3240
+ "comment" : "testing point duplication",
3241
+ "msg" : "313233343030",
3242
+ "sig" : "44a5ad0ad0636d9f12bc9e0a6bdd5e1cbcb012ea7bf091fcec15b0c43202d52e249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2",
3243
+ "result" : "invalid",
3244
+ "flags" : []
3245
+ }
3246
+ ]
3247
+ },
3248
+ {
3249
+ "jwk" : {
3250
+ "crv" : "P-256",
3251
+ "kid" : "none",
3252
+ "kty" : "EC",
3253
+ "x" : "axfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5RdiYwpY",
3254
+ "y" : "sBy9HAHlgGVxGBS1g_Bh6dQxzKmUzqExNEm_l8hArgo"
3255
+ },
3256
+ "key" : {
3257
+ "curve" : "secp256r1",
3258
+ "keySize" : 256,
3259
+ "type" : "EcPublicKey",
3260
+ "uncompressed" : "046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a",
3261
+ "wx" : "6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296",
3262
+ "wy" : "00b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a"
3263
+ },
3264
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200046b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296b01cbd1c01e58065711814b583f061e9d431cca994cea1313449bf97c840ae0a",
3265
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEaxfR8uEsQkf4vOblY6RA8ncDfYEt\n6zOg9KE5RdiYwpawHL0cAeWAZXEYFLWD8GHp1DHMqZTOoTE0Sb+XyECuCg==\n-----END PUBLIC KEY-----",
3266
+ "sha" : "SHA-256",
3267
+ "type" : "EcdsaP1363Verify",
3268
+ "tests" : [
3269
+ {
3270
+ "tcId" : 190,
3271
+ "comment" : "testing point duplication",
3272
+ "msg" : "313233343030",
3273
+ "sig" : "bb5a52f42f9c9261ed4361f59422a1e30036e7c32b270c8807a419feca605023249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2",
3274
+ "result" : "invalid",
3275
+ "flags" : []
3276
+ },
3277
+ {
3278
+ "tcId" : 191,
3279
+ "comment" : "testing point duplication",
3280
+ "msg" : "313233343030",
3281
+ "sig" : "44a5ad0ad0636d9f12bc9e0a6bdd5e1cbcb012ea7bf091fcec15b0c43202d52e249249246db6db6ddb6db6db6db6db6dad4591868595a8ee6bf5f864ff7be0c2",
3282
+ "result" : "invalid",
3283
+ "flags" : []
3284
+ }
3285
+ ]
3286
+ },
3287
+ {
3288
+ "jwk" : {
3289
+ "crv" : "P-256",
3290
+ "kid" : "none",
3291
+ "kty" : "EC",
3292
+ "x" : "BKrsc2NXJvIT-4qeZNo7hjLkFJWpRNAEW1IuunJA-tU",
3293
+ "y" : "h9kxV5iqo6W6AXdXh87QXqr3tOCfyB1tGqVG6DZdUl0"
3294
+ },
3295
+ "key" : {
3296
+ "curve" : "secp256r1",
3297
+ "keySize" : 256,
3298
+ "type" : "EcPublicKey",
3299
+ "uncompressed" : "0404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d",
3300
+ "wx" : "04aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad5",
3301
+ "wy" : "0087d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d"
3302
+ },
3303
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000404aaec73635726f213fb8a9e64da3b8632e41495a944d0045b522eba7240fad587d9315798aaa3a5ba01775787ced05eaaf7b4e09fc81d6d1aa546e8365d525d",
3304
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEBKrsc2NXJvIT+4qeZNo7hjLkFJWp\nRNAEW1IuunJA+tWH2TFXmKqjpboBd1eHztBeqve04J/IHW0apUboNl1SXQ==\n-----END PUBLIC KEY-----",
3305
+ "sha" : "SHA-256",
3306
+ "type" : "EcdsaP1363Verify",
3307
+ "tests" : [
3308
+ {
3309
+ "tcId" : 192,
3310
+ "comment" : "pseudorandom signature",
3311
+ "msg" : "",
3312
+ "sig" : "b292a619339f6e567a305c951c0dcbcc42d16e47f219f9e98e76e09d8770b34a0177e60492c5a8242f76f07bfe3661bde59ec2a17ce5bd2dab2abebdf89a62e2",
3313
+ "result" : "valid",
3314
+ "flags" : []
3315
+ },
3316
+ {
3317
+ "tcId" : 193,
3318
+ "comment" : "pseudorandom signature",
3319
+ "msg" : "4d7367",
3320
+ "sig" : "530bd6b0c9af2d69ba897f6b5fb59695cfbf33afe66dbadcf5b8d2a2a6538e23d85e489cb7a161fd55ededcedbf4cc0c0987e3e3f0f242cae934c72caa3f43e9",
3321
+ "result" : "valid",
3322
+ "flags" : []
3323
+ },
3324
+ {
3325
+ "tcId" : 194,
3326
+ "comment" : "pseudorandom signature",
3327
+ "msg" : "313233343030",
3328
+ "sig" : "a8ea150cb80125d7381c4c1f1da8e9de2711f9917060406a73d7904519e51388f3ab9fa68bd47973a73b2d40480c2ba50c22c9d76ec217257288293285449b86",
3329
+ "result" : "valid",
3330
+ "flags" : []
3331
+ },
3332
+ {
3333
+ "tcId" : 195,
3334
+ "comment" : "pseudorandom signature",
3335
+ "msg" : "0000000000000000000000000000000000000000",
3336
+ "sig" : "986e65933ef2ed4ee5aada139f52b70539aaf63f00a91f29c69178490d57fb713dafedfb8da6189d372308cbf1489bbbdabf0c0217d1c0ff0f701aaa7a694b9c",
3337
+ "result" : "valid",
3338
+ "flags" : []
3339
+ }
3340
+ ]
3341
+ },
3342
+ {
3343
+ "jwk" : {
3344
+ "crv" : "P-256",
3345
+ "kid" : "none",
3346
+ "kty" : "EC",
3347
+ "x" : "TzN8z9Z3JqgF5PFgCuKEnfOAfsoRc4Ajn72BaQAAAAA",
3348
+ "y" : "7Z3qEkzIw5ZBZBHpiMMPQn61BK9DoxRs1d9-pgZm1oU"
3349
+ },
3350
+ "key" : {
3351
+ "curve" : "secp256r1",
3352
+ "keySize" : 256,
3353
+ "type" : "EcPublicKey",
3354
+ "uncompressed" : "044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685",
3355
+ "wx" : "4f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000",
3356
+ "wy" : "00ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685"
3357
+ },
3358
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200044f337ccfd67726a805e4f1600ae2849df3807eca117380239fbd816900000000ed9dea124cc8c396416411e988c30f427eb504af43a3146cd5df7ea60666d685",
3359
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETzN8z9Z3JqgF5PFgCuKEnfOAfsoR\nc4Ajn72BaQAAAADtneoSTMjDlkFkEemIww9CfrUEr0OjFGzV336mBmbWhQ==\n-----END PUBLIC KEY-----",
3360
+ "sha" : "SHA-256",
3361
+ "type" : "EcdsaP1363Verify",
3362
+ "tests" : [
3363
+ {
3364
+ "tcId" : 196,
3365
+ "comment" : "x-coordinate of the public key has many trailing 0's",
3366
+ "msg" : "4d657373616765",
3367
+ "sig" : "d434e262a49eab7781e353a3565e482550dd0fd5defa013c7f29745eff3569f19b0c0a93f267fb6052fd8077be769c2b98953195d7bc10de844218305c6ba17a",
3368
+ "result" : "valid",
3369
+ "flags" : []
3370
+ },
3371
+ {
3372
+ "tcId" : 197,
3373
+ "comment" : "x-coordinate of the public key has many trailing 0's",
3374
+ "msg" : "4d657373616765",
3375
+ "sig" : "0fe774355c04d060f76d79fd7a772e421463489221bf0a33add0be9b1979110b500dcba1c69a8fbd43fa4f57f743ce124ca8b91a1f325f3fac6181175df55737",
3376
+ "result" : "valid",
3377
+ "flags" : []
3378
+ },
3379
+ {
3380
+ "tcId" : 198,
3381
+ "comment" : "x-coordinate of the public key has many trailing 0's",
3382
+ "msg" : "4d657373616765",
3383
+ "sig" : "bb40bf217bed3fb3950c7d39f03d36dc8e3b2cd79693f125bfd06595ee1135e3541bf3532351ebb032710bdb6a1bf1bfc89a1e291ac692b3fa4780745bb55677",
3384
+ "result" : "valid",
3385
+ "flags" : []
3386
+ }
3387
+ ]
3388
+ },
3389
+ {
3390
+ "jwk" : {
3391
+ "crv" : "P-256",
3392
+ "kid" : "none",
3393
+ "kty" : "EC",
3394
+ "x" : "PPA9YU2JOc_UmaB4c_rCgWGPBrj_h-gBXD9JcmUASTU",
3395
+ "y" : "hPoXTXkccr8s44gKiWDdKnx6EzioL4Wp5Zzb3oAAAAA"
3396
+ },
3397
+ "key" : {
3398
+ "curve" : "secp256r1",
3399
+ "keySize" : 256,
3400
+ "type" : "EcPublicKey",
3401
+ "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000",
3402
+ "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935",
3403
+ "wy" : "0084fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000"
3404
+ },
3405
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f49726500493584fa174d791c72bf2ce3880a8960dd2a7c7a1338a82f85a9e59cdbde80000000",
3406
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTWE+hdNeRxyvyzjiAqJYN0qfHoTOKgvhanlnNvegAAAAA==\n-----END PUBLIC KEY-----",
3407
+ "sha" : "SHA-256",
3408
+ "type" : "EcdsaP1363Verify",
3409
+ "tests" : [
3410
+ {
3411
+ "tcId" : 199,
3412
+ "comment" : "y-coordinate of the public key has many trailing 0's",
3413
+ "msg" : "4d657373616765",
3414
+ "sig" : "664eb7ee6db84a34df3c86ea31389a5405badd5ca99231ff556d3e75a233e73a59f3c752e52eca46137642490a51560ce0badc678754b8f72e51a2901426a1bd",
3415
+ "result" : "valid",
3416
+ "flags" : []
3417
+ },
3418
+ {
3419
+ "tcId" : 200,
3420
+ "comment" : "y-coordinate of the public key has many trailing 0's",
3421
+ "msg" : "4d657373616765",
3422
+ "sig" : "4cd0429bbabd2827009d6fcd843d4ce39c3e42e2d1631fd001985a79d1fd8b439638bf12dd682f60be7ef1d0e0d98f08b7bca77a1a2b869ae466189d2acdabe3",
3423
+ "result" : "valid",
3424
+ "flags" : []
3425
+ },
3426
+ {
3427
+ "tcId" : 201,
3428
+ "comment" : "y-coordinate of the public key has many trailing 0's",
3429
+ "msg" : "4d657373616765",
3430
+ "sig" : "e56c6ea2d1b017091c44d8b6cb62b9f460e3ce9aed5e5fd41e8added97c56c04a308ec31f281e955be20b457e463440b4fcf2b80258078207fc1378180f89b55",
3431
+ "result" : "valid",
3432
+ "flags" : []
3433
+ }
3434
+ ]
3435
+ },
3436
+ {
3437
+ "jwk" : {
3438
+ "crv" : "P-256",
3439
+ "kid" : "none",
3440
+ "kty" : "EC",
3441
+ "x" : "PPA9YU2JOc_UmaB4c_rCgWGPBrj_h-gBXD9JcmUASTU",
3442
+ "y" : "ewXosYbjjUHTHHf1dp8i1YOF7MhX0HpWGmMkIX____8"
3443
+ },
3444
+ "key" : {
3445
+ "curve" : "secp256r1",
3446
+ "keySize" : 256,
3447
+ "type" : "EcPublicKey",
3448
+ "uncompressed" : "043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff",
3449
+ "wx" : "3cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f497265004935",
3450
+ "wy" : "7b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff"
3451
+ },
3452
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200043cf03d614d8939cfd499a07873fac281618f06b8ff87e8015c3f4972650049357b05e8b186e38d41d31c77f5769f22d58385ecc857d07a561a6324217fffffff",
3453
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEPPA9YU2JOc/UmaB4c/rCgWGPBrj/\nh+gBXD9JcmUASTV7BeixhuONQdMcd/V2nyLVg4XsyFfQelYaYyQhf////w==\n-----END PUBLIC KEY-----",
3454
+ "sha" : "SHA-256",
3455
+ "type" : "EcdsaP1363Verify",
3456
+ "tests" : [
3457
+ {
3458
+ "tcId" : 202,
3459
+ "comment" : "y-coordinate of the public key has many trailing 1's",
3460
+ "msg" : "4d657373616765",
3461
+ "sig" : "1158a08d291500b4cabed3346d891eee57c176356a2624fb011f8fbbf3466830228a8c486a736006e082325b85290c5bc91f378b75d487dda46798c18f285519",
3462
+ "result" : "valid",
3463
+ "flags" : []
3464
+ },
3465
+ {
3466
+ "tcId" : 203,
3467
+ "comment" : "y-coordinate of the public key has many trailing 1's",
3468
+ "msg" : "4d657373616765",
3469
+ "sig" : "b1db9289649f59410ea36b0c0fc8d6aa2687b29176939dd23e0dde56d309fa9d3e1535e4280559015b0dbd987366dcf43a6d1af5c23c7d584e1c3f48a1251336",
3470
+ "result" : "valid",
3471
+ "flags" : []
3472
+ },
3473
+ {
3474
+ "tcId" : 204,
3475
+ "comment" : "y-coordinate of the public key has many trailing 1's",
3476
+ "msg" : "4d657373616765",
3477
+ "sig" : "b7b16e762286cb96446aa8d4e6e7578b0a341a79f2dd1a220ac6f0ca4e24ed86ddc60a700a139b04661c547d07bbb0721780146df799ccf55e55234ecb8f12bc",
3478
+ "result" : "valid",
3479
+ "flags" : []
3480
+ }
3481
+ ]
3482
+ },
3483
+ {
3484
+ "jwk" : {
3485
+ "crv" : "P-256",
3486
+ "kid" : "none",
3487
+ "kty" : "EC",
3488
+ "x" : "KCnDH6ouQA40TtlLyj_NBUWVbrz-itD236X_jv____8",
3489
+ "y" : "oBqvrwAOUlhYVa-nZ2reKEETCZBS31fn6zvTfr65Ii4"
3490
+ },
3491
+ "key" : {
3492
+ "curve" : "secp256r1",
3493
+ "keySize" : 256,
3494
+ "type" : "EcPublicKey",
3495
+ "uncompressed" : "042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e",
3496
+ "wx" : "2829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffff",
3497
+ "wy" : "00a01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e"
3498
+ },
3499
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d030107034200042829c31faa2e400e344ed94bca3fcd0545956ebcfe8ad0f6dfa5ff8effffffffa01aafaf000e52585855afa7676ade284113099052df57e7eb3bd37ebeb9222e",
3500
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKCnDH6ouQA40TtlLyj/NBUWVbrz+\nitD236X/jv////+gGq+vAA5SWFhVr6dnat4oQRMJkFLfV+frO9N+vrkiLg==\n-----END PUBLIC KEY-----",
3501
+ "sha" : "SHA-256",
3502
+ "type" : "EcdsaP1363Verify",
3503
+ "tests" : [
3504
+ {
3505
+ "tcId" : 205,
3506
+ "comment" : "x-coordinate of the public key has many trailing 1's",
3507
+ "msg" : "4d657373616765",
3508
+ "sig" : "d82a7c2717261187c8e00d8df963ff35d796edad36bc6e6bd1c91c670d9105b43dcabddaf8fcaa61f4603e7cbac0f3c0351ecd5988efb23f680d07debd139929",
3509
+ "result" : "valid",
3510
+ "flags" : []
3511
+ },
3512
+ {
3513
+ "tcId" : 206,
3514
+ "comment" : "x-coordinate of the public key has many trailing 1's",
3515
+ "msg" : "4d657373616765",
3516
+ "sig" : "5eb9c8845de68eb13d5befe719f462d77787802baff30ce96a5cba063254af782c026ae9be2e2a5e7ca0ff9bbd92fb6e44972186228ee9a62b87ddbe2ef66fb5",
3517
+ "result" : "valid",
3518
+ "flags" : []
3519
+ },
3520
+ {
3521
+ "tcId" : 207,
3522
+ "comment" : "x-coordinate of the public key has many trailing 1's",
3523
+ "msg" : "4d657373616765",
3524
+ "sig" : "96843dd03c22abd2f3b782b170239f90f277921becc117d0404a8e4e36230c28f2be378f526f74a543f67165976de9ed9a31214eb4d7e6db19e1ede123dd991d",
3525
+ "result" : "valid",
3526
+ "flags" : []
3527
+ }
3528
+ ]
3529
+ },
3530
+ {
3531
+ "jwk" : {
3532
+ "crv" : "P-256",
3533
+ "kid" : "none",
3534
+ "kty" : "EC",
3535
+ "x" : "____-UgIHmoEWN2PnnOPJmX_kFmtaqwHCDGMTKmnpPU",
3536
+ "y" : "Woq8ui3ahHQxHuVBSblzyuDA-4lVetC_eOZSmhZjvXM"
3537
+ },
3538
+ "key" : {
3539
+ "curve" : "secp256r1",
3540
+ "keySize" : 256,
3541
+ "type" : "EcPublicKey",
3542
+ "uncompressed" : "04fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73",
3543
+ "wx" : "00fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f5",
3544
+ "wy" : "5a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73"
3545
+ },
3546
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004fffffff948081e6a0458dd8f9e738f2665ff9059ad6aac0708318c4ca9a7a4f55a8abcba2dda8474311ee54149b973cae0c0fb89557ad0bf78e6529a1663bd73",
3547
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE////+UgIHmoEWN2PnnOPJmX/kFmt\naqwHCDGMTKmnpPVairy6LdqEdDEe5UFJuXPK4MD7iVV60L945lKaFmO9cw==\n-----END PUBLIC KEY-----",
3548
+ "sha" : "SHA-256",
3549
+ "type" : "EcdsaP1363Verify",
3550
+ "tests" : [
3551
+ {
3552
+ "tcId" : 208,
3553
+ "comment" : "x-coordinate of the public key is large",
3554
+ "msg" : "4d657373616765",
3555
+ "sig" : "766456dce1857c906f9996af729339464d27e9d98edc2d0e3b760297067421f6402385ecadae0d8081dccaf5d19037ec4e55376eced699e93646bfbbf19d0b41",
3556
+ "result" : "valid",
3557
+ "flags" : []
3558
+ },
3559
+ {
3560
+ "tcId" : 209,
3561
+ "comment" : "x-coordinate of the public key is large",
3562
+ "msg" : "4d657373616765",
3563
+ "sig" : "c605c4b2edeab20419e6518a11b2dbc2b97ed8b07cced0b19c34f777de7b9fd9edf0f612c5f46e03c719647bc8af1b29b2cde2eda700fb1cff5e159d47326dba",
3564
+ "result" : "valid",
3565
+ "flags" : []
3566
+ },
3567
+ {
3568
+ "tcId" : 210,
3569
+ "comment" : "x-coordinate of the public key is large",
3570
+ "msg" : "4d657373616765",
3571
+ "sig" : "d48b68e6cabfe03cf6141c9ac54141f210e64485d9929ad7b732bfe3b7eb8a84feedae50c61bd00e19dc26f9b7e2265e4508c389109ad2f208f0772315b6c941",
3572
+ "result" : "valid",
3573
+ "flags" : []
3574
+ }
3575
+ ]
3576
+ },
3577
+ {
3578
+ "jwk" : {
3579
+ "crv" : "P-256",
3580
+ "kid" : "none",
3581
+ "kty" : "EC",
3582
+ "x" : "AAAAA_oV-WOUnV8DpvXH-G-eABXusjrrv_EXOTe6dI4",
3583
+ "y" : "EJmHIHDo6HxVX6E2Wcyl1_rc_LACPqiJVIykivK6fnE"
3584
+ },
3585
+ "key" : {
3586
+ "curve" : "secp256r1",
3587
+ "keySize" : 256,
3588
+ "type" : "EcPublicKey",
3589
+ "uncompressed" : "0400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71",
3590
+ "wx" : "03fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e",
3591
+ "wy" : "1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71"
3592
+ },
3593
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d0301070342000400000003fa15f963949d5f03a6f5c7f86f9e0015eeb23aebbff1173937ba748e1099872070e8e87c555fa13659cca5d7fadcfcb0023ea889548ca48af2ba7e71",
3594
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAAAAA/oV+WOUnV8DpvXH+G+eABXu\nsjrrv/EXOTe6dI4QmYcgcOjofFVfoTZZzKXX+tz8sAI+qIlUjKSK8rp+cQ==\n-----END PUBLIC KEY-----",
3595
+ "sha" : "SHA-256",
3596
+ "type" : "EcdsaP1363Verify",
3597
+ "tests" : [
3598
+ {
3599
+ "tcId" : 211,
3600
+ "comment" : "x-coordinate of the public key is small",
3601
+ "msg" : "4d657373616765",
3602
+ "sig" : "b7c81457d4aeb6aa65957098569f0479710ad7f6595d5874c35a93d12a5dd4c7b7961a0b652878c2d568069a432ca18a1a9199f2ca574dad4b9e3a05c0a1cdb3",
3603
+ "result" : "valid",
3604
+ "flags" : []
3605
+ },
3606
+ {
3607
+ "tcId" : 212,
3608
+ "comment" : "x-coordinate of the public key is small",
3609
+ "msg" : "4d657373616765",
3610
+ "sig" : "6b01332ddb6edfa9a30a1321d5858e1ee3cf97e263e669f8de5e9652e76ff3f75939545fced457309a6a04ace2bd0f70139c8f7d86b02cb1cc58f9e69e96cd5a",
3611
+ "result" : "valid",
3612
+ "flags" : []
3613
+ },
3614
+ {
3615
+ "tcId" : 213,
3616
+ "comment" : "x-coordinate of the public key is small",
3617
+ "msg" : "4d657373616765",
3618
+ "sig" : "efdb884720eaeadc349f9fc356b6c0344101cd2fd8436b7d0e6a4fb93f106361f24bee6ad5dc05f7613975473aadf3aacba9e77de7d69b6ce48cb60d8113385d",
3619
+ "result" : "valid",
3620
+ "flags" : []
3621
+ }
3622
+ ]
3623
+ },
3624
+ {
3625
+ "jwk" : {
3626
+ "crv" : "P-256",
3627
+ "kid" : "none",
3628
+ "kty" : "EC",
3629
+ "x" : "vLspFMefBF6qbsu8YSgWs75dLWeWcH2BJen4UcGK8BU",
3630
+ "y" : "AAAAABNSu0oPoupMzrmrY91oSt5aESe88wCmmKcZO8I"
3631
+ },
3632
+ "key" : {
3633
+ "curve" : "secp256r1",
3634
+ "keySize" : 256,
3635
+ "type" : "EcPublicKey",
3636
+ "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2",
3637
+ "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015",
3638
+ "wy" : "1352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2"
3639
+ },
3640
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015000000001352bb4a0fa2ea4cceb9ab63dd684ade5a1127bcf300a698a7193bc2",
3641
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BUAAAAAE1K7Sg+i6kzOuatj3WhK3loRJ7zzAKaYpxk7wg==\n-----END PUBLIC KEY-----",
3642
+ "sha" : "SHA-256",
3643
+ "type" : "EcdsaP1363Verify",
3644
+ "tests" : [
3645
+ {
3646
+ "tcId" : 214,
3647
+ "comment" : "y-coordinate of the public key is small",
3648
+ "msg" : "4d657373616765",
3649
+ "sig" : "31230428405560dcb88fb5a646836aea9b23a23dd973dcbe8014c87b8b20eb070f9344d6e812ce166646747694a41b0aaf97374e19f3c5fb8bd7ae3d9bd0beff",
3650
+ "result" : "valid",
3651
+ "flags" : []
3652
+ },
3653
+ {
3654
+ "tcId" : 215,
3655
+ "comment" : "y-coordinate of the public key is small",
3656
+ "msg" : "4d657373616765",
3657
+ "sig" : "caa797da65b320ab0d5c470cda0b36b294359c7db9841d679174db34c4855743cf543a62f23e212745391aaf7505f345123d2685ee3b941d3de6d9b36242e5a0",
3658
+ "result" : "valid",
3659
+ "flags" : []
3660
+ },
3661
+ {
3662
+ "tcId" : 216,
3663
+ "comment" : "y-coordinate of the public key is small",
3664
+ "msg" : "4d657373616765",
3665
+ "sig" : "7e5f0ab5d900d3d3d7867657e5d6d36519bc54084536e7d21c336ed8001859459450c07f201faec94b82dfb322e5ac676688294aad35aa72e727ff0b19b646aa",
3666
+ "result" : "valid",
3667
+ "flags" : []
3668
+ }
3669
+ ]
3670
+ },
3671
+ {
3672
+ "jwk" : {
3673
+ "crv" : "P-256",
3674
+ "kid" : "none",
3675
+ "kty" : "EC",
3676
+ "x" : "vLspFMefBF6qbsu8YSgWs75dLWeWcH2BJen4UcGK8BU",
3677
+ "y" : "_____uytRLbwXRWzMUZUnCKXtSKl7thDDP9ZZ1jmxD0"
3678
+ },
3679
+ "key" : {
3680
+ "curve" : "secp256r1",
3681
+ "keySize" : 256,
3682
+ "type" : "EcPublicKey",
3683
+ "uncompressed" : "04bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d",
3684
+ "wx" : "00bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015",
3685
+ "wy" : "00fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d"
3686
+ },
3687
+ "keyDer" : "3059301306072a8648ce3d020106082a8648ce3d03010703420004bcbb2914c79f045eaa6ecbbc612816b3be5d2d6796707d8125e9f851c18af015fffffffeecad44b6f05d15b33146549c2297b522a5eed8430cff596758e6c43d",
3688
+ "keyPem" : "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEvLspFMefBF6qbsu8YSgWs75dLWeW\ncH2BJen4UcGK8BX////+7K1EtvBdFbMxRlScIpe1IqXu2EMM/1lnWObEPQ==\n-----END PUBLIC KEY-----",
3689
+ "sha" : "SHA-256",
3690
+ "type" : "EcdsaP1363Verify",
3691
+ "tests" : [
3692
+ {
3693
+ "tcId" : 217,
3694
+ "comment" : "y-coordinate of the public key is large",
3695
+ "msg" : "4d657373616765",
3696
+ "sig" : "d7d70c581ae9e3f66dc6a480bf037ae23f8a1e4a2136fe4b03aa69f0ca25b35689c460f8a5a5c2bbba962c8a3ee833a413e85658e62a59e2af41d9127cc47224",
3697
+ "result" : "valid",
3698
+ "flags" : []
3699
+ },
3700
+ {
3701
+ "tcId" : 218,
3702
+ "comment" : "y-coordinate of the public key is large",
3703
+ "msg" : "4d657373616765",
3704
+ "sig" : "341c1b9ff3c83dd5e0dfa0bf68bcdf4bb7aa20c625975e5eeee34bb396266b3472b69f061b750fd5121b22b11366fad549c634e77765a017902a67099e0a4469",
3705
+ "result" : "valid",
3706
+ "flags" : []
3707
+ },
3708
+ {
3709
+ "tcId" : 219,
3710
+ "comment" : "y-coordinate of the public key is large",
3711
+ "msg" : "4d657373616765",
3712
+ "sig" : "70bebe684cdcb5ca72a42f0d873879359bd1781a591809947628d313a3814f67aec03aca8f5587a4d535fa31027bbe9cc0e464b1c3577f4c2dcde6b2094798a9",
3713
+ "result" : "valid",
3714
+ "flags" : []
3715
+ }
3716
+ ]
3717
+ }
3718
+ ]
3719
+ }