@tradetrust-yl/token-registry 5.1.2 → 5.1.3

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 (255) hide show
  1. package/dist/app.js +566 -0
  2. package/dist/artifacts/TitleEscrow.sol/TitleEscrow.json +83 -9
  3. package/dist/artifacts/TitleEscrowFactory.sol/TitleEscrowFactory.json +22 -3
  4. package/dist/artifacts/TradeTrustToken.sol/TradeTrustToken.json +125 -2
  5. package/dist/artifacts/base/RegistryAccess.sol/RegistryAccess.dbg.json +1 -1
  6. package/dist/artifacts/base/SBTUpgradeable.sol/SBTUpgradeable.dbg.json +1 -1
  7. package/dist/artifacts/base/SBTUpgradeable.sol/SBTUpgradeable.json +2 -2
  8. package/dist/artifacts/base/TradeTrustSBT.sol/TradeTrustSBT.dbg.json +1 -1
  9. package/dist/artifacts/base/TradeTrustSBT.sol/TradeTrustSBT.json +43 -0
  10. package/dist/artifacts/base/TradeTrustTokenBase.sol/TradeTrustTokenBase.dbg.json +1 -1
  11. package/dist/artifacts/base/TradeTrustTokenBase.sol/TradeTrustTokenBase.json +86 -0
  12. package/dist/artifacts/base/TradeTrustTokenBaseURI.sol/TradeTrustTokenBaseURI.dbg.json +1 -1
  13. package/dist/artifacts/base/TradeTrustTokenBaseURI.sol/TradeTrustTokenBaseURI.json +43 -0
  14. package/dist/artifacts/base/TradeTrustTokenBurnable.sol/TradeTrustTokenBurnable.dbg.json +1 -1
  15. package/dist/artifacts/base/TradeTrustTokenBurnable.sol/TradeTrustTokenBurnable.json +43 -0
  16. package/dist/artifacts/base/TradeTrustTokenMintable.sol/TradeTrustTokenMintable.dbg.json +1 -1
  17. package/dist/artifacts/base/TradeTrustTokenMintable.sol/TradeTrustTokenMintable.json +86 -0
  18. package/dist/artifacts/base/TradeTrustTokenRestorable.sol/TradeTrustTokenRestorable.dbg.json +1 -1
  19. package/dist/artifacts/base/TradeTrustTokenRestorable.sol/TradeTrustTokenRestorable.json +43 -0
  20. package/dist/artifacts/interfaces/IERC721MetadataUpgradeable.sol/IERC721MetadataUpgradeable.dbg.json +1 -1
  21. package/dist/artifacts/interfaces/ISBTUpgradeable.sol/ISBTUpgradeable.dbg.json +1 -1
  22. package/dist/artifacts/interfaces/ITitleEscrow.sol/ITitleEscrow.dbg.json +1 -1
  23. package/dist/artifacts/interfaces/ITitleEscrow.sol/ITitleEscrow.json +42 -6
  24. package/dist/artifacts/interfaces/ITitleEscrowFactory.sol/ITitleEscrowFactory.dbg.json +1 -1
  25. package/dist/artifacts/interfaces/ITitleEscrowSignable.sol/ITitleEscrowSignable.dbg.json +1 -1
  26. package/dist/artifacts/interfaces/ITitleEscrowSignable.sol/ITitleEscrowSignable.json +42 -6
  27. package/dist/artifacts/interfaces/ITradeTrustSBT.sol/ITradeTrustSBT.dbg.json +1 -1
  28. package/dist/artifacts/interfaces/ITradeTrustToken.sol/ITradeTrustToken.dbg.json +1 -1
  29. package/dist/artifacts/interfaces/ITradeTrustToken.sol/ITradeTrustToken.json +18 -0
  30. package/dist/artifacts/interfaces/ITradeTrustTokenBurnable.sol/ITradeTrustTokenBurnable.dbg.json +1 -1
  31. package/dist/artifacts/interfaces/ITradeTrustTokenMintable.sol/ITradeTrustTokenMintable.dbg.json +1 -1
  32. package/dist/artifacts/interfaces/ITradeTrustTokenMintable.sol/ITradeTrustTokenMintable.json +18 -0
  33. package/dist/artifacts/interfaces/ITradeTrustTokenRestorable.sol/ITradeTrustTokenRestorable.dbg.json +1 -1
  34. package/dist/artifacts/interfaces/RegistryAccessErrors.sol/RegistryAccessErrors.dbg.json +1 -1
  35. package/dist/artifacts/interfaces/SigHelperErrors.sol/SigHelperErrors.dbg.json +1 -1
  36. package/dist/artifacts/interfaces/TDocDeployerErrors.sol/TDocDeployerErrors.dbg.json +1 -1
  37. package/dist/artifacts/interfaces/TitleEscrowErrors.sol/TitleEscrowErrors.dbg.json +1 -1
  38. package/dist/artifacts/interfaces/TitleEscrowFactoryErrors.sol/TitleEscrowFactoryErrors.dbg.json +1 -1
  39. package/dist/artifacts/interfaces/TitleEscrowSignableErrors.sol/TitleEscrowSignableErrors.dbg.json +1 -1
  40. package/dist/artifacts/interfaces/TradeTrustTokenErrors.sol/TradeTrustTokenErrors.dbg.json +1 -1
  41. package/dist/artifacts/interfaces/TradeTrustTokenErrors.sol/TradeTrustTokenErrors.json +5 -0
  42. package/dist/artifacts/mocks/ERC721ReceiverMock.sol/ERC721ReceiverMock.dbg.json +1 -1
  43. package/dist/artifacts/mocks/ERC721ReceiverMock.sol/ERC721ReceiverMock.json +2 -2
  44. package/dist/artifacts/mocks/SBTUpgradeableMock.sol/SBTUpgradeableMock.dbg.json +1 -1
  45. package/dist/artifacts/mocks/SBTUpgradeableMock.sol/SBTUpgradeableMock.json +2 -2
  46. package/dist/artifacts/mocks/SigHelperMock.sol/SigHelperMock.dbg.json +1 -1
  47. package/dist/artifacts/mocks/SimpleCaller.sol/SimpleCaller.dbg.json +1 -1
  48. package/dist/artifacts/mocks/TitleEscrowFactoryCallerMock.sol/TitleEscrowFactoryCallerMock.dbg.json +1 -1
  49. package/dist/artifacts/mocks/TitleEscrowFactoryGetterMock.sol/TitleEscrowFactoryGetterMock.dbg.json +1 -1
  50. package/dist/artifacts/mocks/TitleEscrowMock.sol/TitleEscrowMock.dbg.json +1 -1
  51. package/dist/artifacts/mocks/TitleEscrowMock.sol/TitleEscrowMock.json +83 -9
  52. package/dist/artifacts/mocks/TradeTrustTokenMock.sol/TradeTrustTokenMock.dbg.json +1 -1
  53. package/dist/artifacts/mocks/TradeTrustTokenMock.sol/TradeTrustTokenMock.json +125 -2
  54. package/dist/artifacts/presets/TitleEscrowSignable.sol/TitleEscrowSignable.dbg.json +1 -1
  55. package/dist/artifacts/presets/TitleEscrowSignable.sol/TitleEscrowSignable.json +87 -8
  56. package/dist/artifacts/presets/TradeTrustTokenStandard.sol/TradeTrustTokenStandard.dbg.json +1 -1
  57. package/dist/artifacts/presets/TradeTrustTokenStandard.sol/TradeTrustTokenStandard.json +88 -2
  58. package/dist/artifacts/utils/SigHelper.sol/SigHelper.dbg.json +1 -1
  59. package/dist/artifacts/utils/TDocDeployer.sol/TDocDeployer.dbg.json +1 -1
  60. package/dist/artifacts/utils/TDocDeployer.sol/TDocDeployer.json +2 -2
  61. package/dist/constants/default-address.js +5 -3
  62. package/dist/constants/role-hash.js +5 -3
  63. package/dist/contracts/@openzeppelin/contracts/index.ts +2 -0
  64. package/dist/contracts/@openzeppelin/contracts/metatx/ERC2771Context.js +5 -0
  65. package/dist/contracts/@openzeppelin/contracts/metatx/ERC2771Context.ts +111 -0
  66. package/dist/contracts/@openzeppelin/contracts/metatx/index.js +5 -0
  67. package/dist/contracts/@openzeppelin/contracts/{proxy/utils → metatx}/index.ts +1 -1
  68. package/dist/contracts/@openzeppelin/contracts/proxy/Clones.js +5 -0
  69. package/dist/contracts/@openzeppelin/contracts/proxy/Clones.ts +70 -0
  70. package/dist/contracts/@openzeppelin/contracts/proxy/index.ts +1 -2
  71. package/dist/contracts/@openzeppelin/contracts/utils/Create2.js +5 -0
  72. package/dist/contracts/@openzeppelin/contracts/utils/Create2.ts +70 -0
  73. package/dist/contracts/@openzeppelin/contracts/utils/index.ts +1 -0
  74. package/dist/contracts/@openzeppelin/contracts-upgradeable/index.ts +2 -0
  75. package/dist/contracts/@openzeppelin/{contracts/proxy/utils/Initializable.ts → contracts-upgradeable/metatx/ERC2771ContextUpgradeable.ts} +46 -5
  76. package/dist/contracts/@openzeppelin/contracts-upgradeable/metatx/index.ts +5 -0
  77. package/dist/contracts/contracts/TitleEscrow.ts +62 -12
  78. package/dist/contracts/contracts/TitleEscrowFactory.ts +18 -1
  79. package/dist/contracts/contracts/TradeTrustToken.js +2 -1
  80. package/dist/contracts/contracts/TradeTrustToken.ts +120 -0
  81. package/dist/contracts/contracts/base/TradeTrustSBT.ts +29 -0
  82. package/dist/contracts/contracts/base/TradeTrustTokenBase.js +2 -1
  83. package/dist/contracts/contracts/base/TradeTrustTokenBase.ts +88 -0
  84. package/dist/contracts/contracts/base/TradeTrustTokenBaseURI.ts +29 -0
  85. package/dist/contracts/contracts/base/TradeTrustTokenBurnable.ts +29 -0
  86. package/dist/contracts/contracts/base/TradeTrustTokenMintable.js +2 -1
  87. package/dist/contracts/contracts/base/TradeTrustTokenMintable.ts +88 -0
  88. package/dist/contracts/contracts/base/TradeTrustTokenRestorable.ts +29 -0
  89. package/dist/contracts/contracts/interfaces/ITitleEscrow.ts +30 -12
  90. package/dist/contracts/contracts/interfaces/ITitleEscrowSignable.ts +30 -12
  91. package/dist/contracts/contracts/interfaces/ITradeTrustToken.ts +22 -0
  92. package/dist/contracts/contracts/interfaces/ITradeTrustTokenMintable.ts +22 -1
  93. package/dist/contracts/contracts/mocks/TitleEscrowMock.ts +62 -12
  94. package/dist/contracts/contracts/mocks/TradeTrustTokenMock.js +2 -1
  95. package/dist/contracts/contracts/mocks/TradeTrustTokenMock.ts +120 -0
  96. package/dist/contracts/contracts/presets/TitleEscrowSignable.ts +62 -12
  97. package/dist/contracts/contracts/presets/TradeTrustTokenStandard.js +2 -1
  98. package/dist/contracts/contracts/presets/TradeTrustTokenStandard.ts +88 -0
  99. package/dist/contracts/factories/@openzeppelin/contracts/access/IAccessControl__factory.js +3 -1
  100. package/dist/contracts/factories/@openzeppelin/contracts/index.js +4 -3
  101. package/dist/contracts/factories/@openzeppelin/contracts/index.ts +1 -0
  102. package/dist/contracts/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.js +3 -1
  103. package/dist/contracts/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.js +3 -1
  104. package/dist/contracts/factories/@openzeppelin/contracts/interfaces/index.js +1 -2
  105. package/dist/contracts/factories/@openzeppelin/contracts/metatx/ERC2771Context__factory.js +45 -0
  106. package/dist/contracts/factories/@openzeppelin/contracts/metatx/ERC2771Context__factory.ts +58 -0
  107. package/dist/contracts/factories/@openzeppelin/contracts/metatx/index.js +12 -0
  108. package/dist/contracts/factories/@openzeppelin/contracts/{proxy/utils → metatx}/index.ts +1 -1
  109. package/dist/contracts/factories/@openzeppelin/contracts/proxy/Clones__factory.js +44 -0
  110. package/dist/contracts/factories/@openzeppelin/contracts/proxy/Clones__factory.ts +70 -0
  111. package/dist/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.js +4 -2
  112. package/dist/contracts/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.ts +1 -1
  113. package/dist/contracts/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.js +3 -1
  114. package/dist/contracts/factories/@openzeppelin/contracts/proxy/index.js +9 -5
  115. package/dist/contracts/factories/@openzeppelin/contracts/proxy/index.ts +1 -1
  116. package/dist/contracts/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.js +3 -1
  117. package/dist/contracts/factories/@openzeppelin/contracts/token/index.js +1 -2
  118. package/dist/contracts/factories/@openzeppelin/contracts/utils/Address__factory.js +4 -2
  119. package/dist/contracts/factories/@openzeppelin/contracts/utils/Address__factory.ts +1 -1
  120. package/dist/contracts/factories/@openzeppelin/contracts/utils/Create2__factory.js +44 -0
  121. package/dist/contracts/factories/@openzeppelin/contracts/utils/Create2__factory.ts +70 -0
  122. package/dist/contracts/factories/@openzeppelin/contracts/utils/Errors__factory.js +3 -1
  123. package/dist/contracts/factories/@openzeppelin/contracts/utils/Pausable__factory.js +3 -1
  124. package/dist/contracts/factories/@openzeppelin/contracts/utils/Strings__factory.js +12 -2
  125. package/dist/contracts/factories/@openzeppelin/contracts/utils/Strings__factory.ts +11 -1
  126. package/dist/contracts/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.js +3 -1
  127. package/dist/contracts/factories/@openzeppelin/contracts/utils/index.js +8 -2
  128. package/dist/contracts/factories/@openzeppelin/contracts/utils/index.ts +1 -0
  129. package/dist/contracts/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.js +3 -1
  130. package/dist/contracts/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.js +3 -1
  131. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable__factory.js +3 -1
  132. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable__factory.js +3 -1
  133. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/index.js +4 -3
  134. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/index.ts +1 -0
  135. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/metatx/ERC2771ContextUpgradeable__factory.js +63 -0
  136. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/metatx/ERC2771ContextUpgradeable__factory.ts +85 -0
  137. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/metatx/index.js +12 -0
  138. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/metatx/index.ts +5 -0
  139. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/proxy/index.js +1 -2
  140. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.js +3 -1
  141. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.js +3 -1
  142. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.js +3 -1
  143. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable__factory.js +3 -1
  144. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/utils/index.js +1 -2
  145. package/dist/contracts/factories/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable__factory.js +3 -1
  146. package/dist/contracts/factories/@openzeppelin/index.js +1 -2
  147. package/dist/contracts/factories/contracts/TitleEscrowFactory__factory.js +23 -7
  148. package/dist/contracts/factories/contracts/TitleEscrowFactory__factory.ts +34 -6
  149. package/dist/contracts/factories/contracts/TitleEscrow__factory.js +72 -12
  150. package/dist/contracts/factories/contracts/TitleEscrow__factory.ts +95 -12
  151. package/dist/contracts/factories/contracts/TradeTrustToken__factory.js +102 -6
  152. package/dist/contracts/factories/contracts/TradeTrustToken__factory.ts +128 -1
  153. package/dist/contracts/factories/contracts/base/RegistryAccess__factory.js +3 -1
  154. package/dist/contracts/factories/contracts/base/SBTUpgradeable__factory.js +4 -2
  155. package/dist/contracts/factories/contracts/base/SBTUpgradeable__factory.ts +1 -1
  156. package/dist/contracts/factories/contracts/base/TradeTrustSBT__factory.js +35 -1
  157. package/dist/contracts/factories/contracts/base/TradeTrustSBT__factory.ts +43 -0
  158. package/dist/contracts/factories/contracts/base/TradeTrustTokenBaseURI__factory.js +35 -1
  159. package/dist/contracts/factories/contracts/base/TradeTrustTokenBaseURI__factory.ts +43 -0
  160. package/dist/contracts/factories/contracts/base/TradeTrustTokenBase__factory.js +69 -1
  161. package/dist/contracts/factories/contracts/base/TradeTrustTokenBase__factory.ts +86 -0
  162. package/dist/contracts/factories/contracts/base/TradeTrustTokenBurnable__factory.js +35 -1
  163. package/dist/contracts/factories/contracts/base/TradeTrustTokenBurnable__factory.ts +43 -0
  164. package/dist/contracts/factories/contracts/base/TradeTrustTokenMintable__factory.js +69 -1
  165. package/dist/contracts/factories/contracts/base/TradeTrustTokenMintable__factory.ts +86 -0
  166. package/dist/contracts/factories/contracts/base/TradeTrustTokenRestorable__factory.js +35 -1
  167. package/dist/contracts/factories/contracts/base/TradeTrustTokenRestorable__factory.ts +43 -0
  168. package/dist/contracts/factories/contracts/index.js +1 -2
  169. package/dist/contracts/factories/contracts/interfaces/IERC721MetadataUpgradeable__factory.js +3 -1
  170. package/dist/contracts/factories/contracts/interfaces/ISBTUpgradeable__factory.js +3 -1
  171. package/dist/contracts/factories/contracts/interfaces/ITitleEscrowFactory__factory.js +3 -1
  172. package/dist/contracts/factories/contracts/interfaces/ITitleEscrowSignable__factory.js +38 -6
  173. package/dist/contracts/factories/contracts/interfaces/ITitleEscrowSignable__factory.ts +42 -6
  174. package/dist/contracts/factories/contracts/interfaces/ITitleEscrow__factory.js +38 -6
  175. package/dist/contracts/factories/contracts/interfaces/ITitleEscrow__factory.ts +42 -6
  176. package/dist/contracts/factories/contracts/interfaces/ITradeTrustSBT__factory.js +3 -1
  177. package/dist/contracts/factories/contracts/interfaces/ITradeTrustTokenBurnable__factory.js +3 -1
  178. package/dist/contracts/factories/contracts/interfaces/ITradeTrustTokenMintable__factory.js +17 -1
  179. package/dist/contracts/factories/contracts/interfaces/ITradeTrustTokenMintable__factory.ts +18 -0
  180. package/dist/contracts/factories/contracts/interfaces/ITradeTrustTokenRestorable__factory.js +3 -1
  181. package/dist/contracts/factories/contracts/interfaces/ITradeTrustToken__factory.js +17 -1
  182. package/dist/contracts/factories/contracts/interfaces/ITradeTrustToken__factory.ts +18 -0
  183. package/dist/contracts/factories/contracts/interfaces/RegistryAccessErrors__factory.js +3 -1
  184. package/dist/contracts/factories/contracts/interfaces/SigHelperErrors__factory.js +3 -1
  185. package/dist/contracts/factories/contracts/interfaces/TDocDeployerErrors__factory.js +3 -1
  186. package/dist/contracts/factories/contracts/interfaces/TitleEscrowErrors__factory.js +3 -1
  187. package/dist/contracts/factories/contracts/interfaces/TitleEscrowFactoryErrors__factory.js +3 -1
  188. package/dist/contracts/factories/contracts/interfaces/TitleEscrowSignableErrors__factory.js +3 -1
  189. package/dist/contracts/factories/contracts/interfaces/TradeTrustTokenErrors__factory.js +7 -1
  190. package/dist/contracts/factories/contracts/interfaces/TradeTrustTokenErrors__factory.ts +5 -0
  191. package/dist/contracts/factories/contracts/mocks/ERC721ReceiverMock__factory.js +4 -2
  192. package/dist/contracts/factories/contracts/mocks/ERC721ReceiverMock__factory.ts +1 -1
  193. package/dist/contracts/factories/contracts/mocks/SBTUpgradeableMock__factory.js +4 -2
  194. package/dist/contracts/factories/contracts/mocks/SBTUpgradeableMock__factory.ts +1 -1
  195. package/dist/contracts/factories/contracts/mocks/SigHelperMock__factory.js +3 -1
  196. package/dist/contracts/factories/contracts/mocks/SimpleCaller__factory.js +3 -1
  197. package/dist/contracts/factories/contracts/mocks/TitleEscrowFactoryCallerMock__factory.js +3 -1
  198. package/dist/contracts/factories/contracts/mocks/TitleEscrowFactoryGetterMock__factory.js +3 -1
  199. package/dist/contracts/factories/contracts/mocks/TitleEscrowMock__factory.js +72 -12
  200. package/dist/contracts/factories/contracts/mocks/TitleEscrowMock__factory.ts +95 -12
  201. package/dist/contracts/factories/contracts/mocks/TradeTrustTokenMock__factory.js +102 -6
  202. package/dist/contracts/factories/contracts/mocks/TradeTrustTokenMock__factory.ts +128 -1
  203. package/dist/contracts/factories/contracts/presets/TitleEscrowSignable__factory.js +75 -11
  204. package/dist/contracts/factories/contracts/presets/TitleEscrowSignable__factory.ts +99 -11
  205. package/dist/contracts/factories/contracts/presets/TradeTrustTokenStandard__factory.js +70 -2
  206. package/dist/contracts/factories/contracts/presets/TradeTrustTokenStandard__factory.ts +87 -1
  207. package/dist/contracts/factories/contracts/utils/SigHelper__factory.js +3 -1
  208. package/dist/contracts/factories/contracts/utils/TDocDeployer__factory.js +4 -2
  209. package/dist/contracts/factories/contracts/utils/TDocDeployer__factory.ts +1 -1
  210. package/dist/contracts/factories/index.js +1 -2
  211. package/dist/contracts/hardhat.d.ts +70 -16
  212. package/dist/contracts/index.js +29 -2
  213. package/dist/contracts/index.ts +8 -0
  214. package/dist/index.js +1 -2
  215. package/dist/models/common.js +5 -0
  216. package/dist/models/freightForwarder.js +5 -0
  217. package/dist/models/shipOwner.js +5 -0
  218. package/dist/services/admin/adminRepository.js +77 -0
  219. package/dist/services/crypto.js +215 -0
  220. package/dist/services/database.js +36 -0
  221. package/dist/services/freightForwarder/freightForwarderRepository.js +94 -0
  222. package/dist/services/shipOwner/shipOwnerController.js +77 -0
  223. package/dist/services/shipOwner/shipOwnerRepository.js +94 -0
  224. package/dist/services/shipOwner/shipOwnerRoutes.js +18 -0
  225. package/dist/types/app.d.ts +1 -0
  226. package/dist/types/constants/contract-address.d.ts +43 -3
  227. package/dist/types/models/common.d.ts +23 -0
  228. package/dist/types/models/freightForwarder.d.ts +15 -0
  229. package/dist/types/models/shipOwner.d.ts +25 -0
  230. package/dist/types/services/admin/adminRepository.d.ts +9 -0
  231. package/dist/types/services/crypto.d.ts +27 -0
  232. package/dist/types/services/database.d.ts +3 -0
  233. package/dist/types/services/freightForwarder/freightForwarderRepository.d.ts +10 -0
  234. package/dist/types/services/shipOwner/shipOwnerController.d.ts +6 -0
  235. package/dist/types/services/shipOwner/shipOwnerRepository.d.ts +10 -0
  236. package/dist/types/services/shipOwner/shipOwnerRoutes.d.ts +2 -0
  237. package/dist/types/utils/extractFactoryAddress.d.ts +10 -0
  238. package/dist/types/utils/extractTokenAddress.d.ts +10 -0
  239. package/dist/types/utils/get-event-from-receipt.d.ts +1 -1
  240. package/dist/types/utils/index.d.ts +1 -0
  241. package/dist/types/utils/run.d.ts +9 -0
  242. package/dist/utils/compute-interface-id.js +5 -3
  243. package/dist/utils/compute-title-escrow-address.js +5 -3
  244. package/dist/utils/encode-init-params.js +5 -3
  245. package/dist/utils/extractFactoryAddress.js +58 -0
  246. package/dist/utils/extractTokenAddress.js +58 -0
  247. package/dist/utils/get-event-from-receipt.js +5 -3
  248. package/dist/utils/index.js +11 -0
  249. package/dist/utils/run.js +36 -0
  250. package/package.json +16 -3
  251. package/dist/contracts/factories/@openzeppelin/contracts/proxy/utils/Initializable__factory.js +0 -37
  252. package/dist/contracts/factories/@openzeppelin/contracts/proxy/utils/Initializable__factory.ts +0 -49
  253. package/dist/contracts/factories/@openzeppelin/contracts/proxy/utils/index.js +0 -12
  254. /package/dist/contracts/@openzeppelin/{contracts/proxy/utils/Initializable.js → contracts-upgradeable/metatx/ERC2771ContextUpgradeable.js} +0 -0
  255. /package/dist/contracts/@openzeppelin/{contracts/proxy/utils → contracts-upgradeable/metatx}/index.js +0 -0
@@ -312,7 +312,7 @@ const _abi = [
312
312
  ] as const;
313
313
 
314
314
  const _bytecode =
315
- "0x60806040523480156200001157600080fd5b50604051620029443803806200294483398181016040528101906200003791906200046e565b600062000049620001e460201b60201c565b905060008160000160089054906101000a900460ff1615905060008260000160009054906101000a900467ffffffffffffffff1690506000808267ffffffffffffffff16148015620000985750825b9050600060018367ffffffffffffffff16148015620000ce575060003073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015620000dd575080155b1562000115576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018560000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315620001665760018560000160086101000a81548160ff0219169083151502179055505b6200017887876200020c60201b60201c565b8315620001d75760008560000160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051620001ce919062000554565b60405180910390a15b5050505050505062000899565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b6200021c6200023260201b60201c565b6200022e82826200027b60201b60201c565b5050565b62000242620002b360201b60201c565b62000279576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6200028b6200023260201b60201c565b81600090816200029c9190620007b2565b508060019081620002ae9190620007b2565b505050565b6000620002c5620001e460201b60201c565b60000160089054906101000a900460ff16905090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200034482620002f9565b810181811067ffffffffffffffff821117156200036657620003656200030a565b5b80604052505050565b60006200037b620002db565b905062000389828262000339565b919050565b600067ffffffffffffffff821115620003ac57620003ab6200030a565b5b620003b782620002f9565b9050602081019050919050565b60005b83811015620003e4578082015181840152602081019050620003c7565b60008484015250505050565b60006200040762000401846200038e565b6200036f565b905082815260208101848484011115620004265762000425620002f4565b5b62000433848285620003c4565b509392505050565b600082601f830112620004535762000452620002ef565b5b815162000465848260208601620003f0565b91505092915050565b60008060408385031215620004885762000487620002e5565b5b600083015167ffffffffffffffff811115620004a957620004a8620002ea565b5b620004b7858286016200043b565b925050602083015167ffffffffffffffff811115620004db57620004da620002ea565b5b620004e9858286016200043b565b9150509250929050565b6000819050919050565b600067ffffffffffffffff82169050919050565b6000819050919050565b60006200053c620005366200053084620004f3565b62000511565b620004fd565b9050919050565b6200054e816200051b565b82525050565b60006020820190506200056b600083018462000543565b92915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005c457607f821691505b602082108103620005da57620005d96200057c565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006447fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000605565b62000650868362000605565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620006936200068d620006878462000668565b62000511565b62000668565b9050919050565b6000819050919050565b620006af8362000672565b620006c7620006be826200069a565b84845462000612565b825550505050565b600090565b620006de620006cf565b620006eb818484620006a4565b505050565b5b81811015620007135762000707600082620006d4565b600181019050620006f1565b5050565b601f82111562000762576200072c81620005e0565b6200073784620005f5565b8101602085101562000747578190505b6200075f6200075685620005f5565b830182620006f0565b50505b505050565b600082821c905092915050565b6000620007876000198460080262000767565b1980831691505092915050565b6000620007a2838362000774565b9150826002028217905092915050565b620007bd8262000571565b67ffffffffffffffff811115620007d957620007d86200030a565b5b620007e58254620005ab565b620007f282828562000717565b600060209050601f8311600181146200082a576000841562000815578287015190505b62000821858262000794565b86555062000891565b601f1984166200083a86620005e0565b60005b8281101562000864578489015182556001820191506020850194506020810190506200083d565b8683101562000884578489015162000880601f89168262000774565b8355505b6001600288020188555050505b505050505050565b61209b80620008a96000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c578063ab67aa5811610066578063ab67aa5814610226578063c87b56dd14610242578063e213f10b14610272578063ec94e0ba14610290576100cf565b806370a08231146101ba57806395d89b41146101ea578063a47d1f5e14610208576100cf565b806301ffc9a7146100d457806306fdde0314610104578063122b780f146101225780633fba56c61461015257806342966c681461016e5780636352211e1461018a575b600080fd5b6100ee60048036038101906100e991906113b4565b6102ac565b6040516100fb91906113fc565b60405180910390f35b61010c61038e565b60405161011991906114a7565b60405180910390f35b61013c600480360381019061013791906114ff565b610420565b60405161014991906113fc565b60405180910390f35b61016c600480360381019061016791906116bf565b610432565b005b610188600480360381019061018391906114ff565b610442565b005b6101a4600480360381019061019f91906114ff565b61044e565b6040516101b1919061173d565b60405180910390f35b6101d460048036038101906101cf9190611758565b6104ff565b6040516101e19190611794565b60405180910390f35b6101f26105b6565b6040516101ff91906114a7565b60405180910390f35b610210610648565b60405161021d9190611804565b60405180910390f35b610240600480360381019061023b9190611826565b6106d6565b005b61025c600480360381019061025791906114ff565b610738565b60405161026991906114a7565b60405180910390f35b61027a6107df565b60405161028791906114a7565b60405180910390f35b6102aa60048036038101906102a591906118a9565b6107ee565b005b60007fb8950977000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061037757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103875750610386826107fc565b5b9050919050565b60606000805461039d90611918565b80601f01602080910402602001604051908101604052809291908181526020018280546103c990611918565b80156104165780601f106103eb57610100808354040283529160200191610416565b820191906000526020600020905b8154815290600101906020018083116103f957829003601f168201915b5050505050905090565b600061042b82610866565b9050919050565b61043d8383836108d2565b505050565b61044b8161092d565b50565b6000806003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036104f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ed906119bb565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361056f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056690611a4d565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600180546105c590611918565b80601f01602080910402602001604051908101604052809291908181526020018280546105f190611918565b801561063e5780601f106106135761010080835404028352916020019161063e565b820191906000526020600020905b81548152906001019060200180831161062157829003601f168201915b5050505050905090565b6002805461065590611918565b80601f016020809104026020016040519081016040528092919081815260200182805461068190611918565b80156106ce5780601f106106a3576101008083540402835291602001916106ce565b820191906000526020600020905b8154815290600101906020018083116106b157829003601f168201915b505050505081565b6106e76106e1610a3f565b83610a47565b610726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071d90611adf565b60405180910390fd5b61073284848484610ad6565b50505050565b606061074382610866565b610782576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077990611b71565b60405180910390fd5b600061078c610b32565b905060008151116107ac57604051806020016040528060008152506107d7565b806107b684610b49565b6040516020016107c7929190611bcd565b6040516020818303038152906040525b915050919050565b60606107e9610b32565b905090565b6107f88282610c17565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6108dc8383610c35565b6108e96000848484610e0e565b610928576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091f90611c63565b60405180910390fd5b505050565b60006109388261044e565b905061094681600084610f90565b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109969190611cb2565b925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610a3b81600084610f95565b5050565b600033905090565b6000610a5282610866565b610a91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8890611d58565b60405180910390fd5b6000610a9c8361044e565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161491505092915050565b610ae1848484610f9a565b610aed84848484610e0e565b610b2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2390611c63565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b606060006001610b58846111f5565b01905060008167ffffffffffffffff811115610b7757610b76611594565b5b6040519080825280601f01601f191660200182016040528015610ba95781602001600182028036833780820191505090505b509050600082602001820190505b600115610c0c578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581610c0057610bff611d78565b5b04945060008503610bb7575b819350505050919050565b610c318282604051806020016040528060008152506108d2565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ca4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9b90611df3565b60405180910390fd5b610cad81610866565b15610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce490611e5f565b60405180910390fd5b610cf960008383610f90565b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d499190611e7f565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610e0a60008383610f95565b5050565b6000808473ffffffffffffffffffffffffffffffffffffffff163b1115610f83578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02610e53610a3f565b8786866040518563ffffffff1660e01b8152600401610e759493929190611eb3565b6020604051808303816000875af1925050508015610eb157506040513d601f19601f82011682018060405250810190610eae9190611f14565b60015b610f33573d8060008114610ee1576040519150601f19603f3d011682016040523d82523d6000602084013e610ee6565b606091505b506000815103610f2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2290611c63565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050610f88565b600190505b949350505050565b505050565b505050565b8273ffffffffffffffffffffffffffffffffffffffff16610fba8261044e565b73ffffffffffffffffffffffffffffffffffffffff1614611010576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100790611fb3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361107f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107690612045565b60405180910390fd5b61108a838383610f90565b6001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546110da9190611cb2565b925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111319190611e7f565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46111f0838383610f95565b505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611253577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161124957611248611d78565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611290576d04ee2d6d415b85acef8100000000838161128657611285611d78565b5b0492506020810190505b662386f26fc1000083106112bf57662386f26fc1000083816112b5576112b4611d78565b5b0492506010810190505b6305f5e10083106112e8576305f5e10083816112de576112dd611d78565b5b0492506008810190505b612710831061130d57612710838161130357611302611d78565b5b0492506004810190505b60648310611330576064838161132657611325611d78565b5b0492506002810190505b600a831061133f576001810190505b80915050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6113918161135c565b811461139c57600080fd5b50565b6000813590506113ae81611388565b92915050565b6000602082840312156113ca576113c9611352565b5b60006113d88482850161139f565b91505092915050565b60008115159050919050565b6113f6816113e1565b82525050565b600060208201905061141160008301846113ed565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611451578082015181840152602081019050611436565b60008484015250505050565b6000601f19601f8301169050919050565b600061147982611417565b6114838185611422565b9350611493818560208601611433565b61149c8161145d565b840191505092915050565b600060208201905081810360008301526114c1818461146e565b905092915050565b6000819050919050565b6114dc816114c9565b81146114e757600080fd5b50565b6000813590506114f9816114d3565b92915050565b60006020828403121561151557611514611352565b5b6000611523848285016114ea565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115578261152c565b9050919050565b6115678161154c565b811461157257600080fd5b50565b6000813590506115848161155e565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6115cc8261145d565b810181811067ffffffffffffffff821117156115eb576115ea611594565b5b80604052505050565b60006115fe611348565b905061160a82826115c3565b919050565b600067ffffffffffffffff82111561162a57611629611594565b5b6116338261145d565b9050602081019050919050565b82818337600083830152505050565b600061166261165d8461160f565b6115f4565b90508281526020810184848401111561167e5761167d61158f565b5b611689848285611640565b509392505050565b600082601f8301126116a6576116a561158a565b5b81356116b684826020860161164f565b91505092915050565b6000806000606084860312156116d8576116d7611352565b5b60006116e686828701611575565b93505060206116f7868287016114ea565b925050604084013567ffffffffffffffff81111561171857611717611357565b5b61172486828701611691565b9150509250925092565b6117378161154c565b82525050565b6000602082019050611752600083018461172e565b92915050565b60006020828403121561176e5761176d611352565b5b600061177c84828501611575565b91505092915050565b61178e816114c9565b82525050565b60006020820190506117a96000830184611785565b92915050565b600081519050919050565b600082825260208201905092915050565b60006117d6826117af565b6117e081856117ba565b93506117f0818560208601611433565b6117f98161145d565b840191505092915050565b6000602082019050818103600083015261181e81846117cb565b905092915050565b600080600080608085870312156118405761183f611352565b5b600061184e87828801611575565b945050602061185f87828801611575565b9350506040611870878288016114ea565b925050606085013567ffffffffffffffff81111561189157611890611357565b5b61189d87828801611691565b91505092959194509250565b600080604083850312156118c0576118bf611352565b5b60006118ce85828601611575565b92505060206118df858286016114ea565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061193057607f821691505b602082108103611943576119426118e9565b5b50919050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b60006119a5602983611422565b91506119b082611949565b604082019050919050565b600060208201905081810360008301526119d481611998565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b6000611a37602a83611422565b9150611a42826119db565b604082019050919050565b60006020820190508181036000830152611a6681611a2a565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b6000611ac9603183611422565b9150611ad482611a6d565b604082019050919050565b60006020820190508181036000830152611af881611abc565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000611b5b602f83611422565b9150611b6682611aff565b604082019050919050565b60006020820190508181036000830152611b8a81611b4e565b9050919050565b600081905092915050565b6000611ba782611417565b611bb18185611b91565b9350611bc1818560208601611433565b80840191505092915050565b6000611bd98285611b9c565b9150611be58284611b9c565b91508190509392505050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000611c4d603283611422565b9150611c5882611bf1565b604082019050919050565b60006020820190508181036000830152611c7c81611c40565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611cbd826114c9565b9150611cc8836114c9565b9250828203905081811115611ce057611cdf611c83565b5b92915050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000611d42602c83611422565b9150611d4d82611ce6565b604082019050919050565b60006020820190508181036000830152611d7181611d35565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000611ddd602083611422565b9150611de882611da7565b602082019050919050565b60006020820190508181036000830152611e0c81611dd0565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000611e49601c83611422565b9150611e5482611e13565b602082019050919050565b60006020820190508181036000830152611e7881611e3c565b9050919050565b6000611e8a826114c9565b9150611e95836114c9565b9250828201905080821115611ead57611eac611c83565b5b92915050565b6000608082019050611ec8600083018761172e565b611ed5602083018661172e565b611ee26040830185611785565b8181036060830152611ef481846117cb565b905095945050505050565b600081519050611f0e81611388565b92915050565b600060208284031215611f2a57611f29611352565b5b6000611f3884828501611eff565b91505092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000611f9d602583611422565b9150611fa882611f41565b604082019050919050565b60006020820190508181036000830152611fcc81611f90565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061202f602483611422565b915061203a82611fd3565b604082019050919050565b6000602082019050818103600083015261205e81612022565b905091905056fea2646970667358221220690e709ec84fc5c145f3449da4f457153f967f60fb59d5caee4d420cdf08d03864736f6c63430008160033";
315
+ "0x60806040523480156200001157600080fd5b50604051620029633803806200296383398181016040528101906200003791906200048d565b600062000049620001e460201b60201c565b905060008160000160089054906101000a900460ff1615905060008260000160009054906101000a900467ffffffffffffffff1690506000808267ffffffffffffffff16148015620000985750825b9050600060018367ffffffffffffffff16148015620000ce575060003073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015620000dd575080155b1562000115576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018560000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315620001665760018560000160086101000a81548160ff0219169083151502179055505b6200017887876200020060201b60201c565b8315620001d75760008560000160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051620001ce919062000573565b60405180910390a15b50505050505050620008b8565b600080620001f76200022660201b60201c565b90508091505090565b620002106200025160201b60201c565b6200022282826200029a60201b60201c565b5050565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b905090565b62000261620002d260201b60201c565b62000298576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b620002aa6200025160201b60201c565b8160009081620002bb9190620007d1565b508060019081620002cd9190620007d1565b505050565b6000620002e4620001e460201b60201c565b60000160089054906101000a900460ff16905090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620003638262000318565b810181811067ffffffffffffffff8211171562000385576200038462000329565b5b80604052505050565b60006200039a620002fa565b9050620003a8828262000358565b919050565b600067ffffffffffffffff821115620003cb57620003ca62000329565b5b620003d68262000318565b9050602081019050919050565b60005b8381101562000403578082015181840152602081019050620003e6565b60008484015250505050565b6000620004266200042084620003ad565b6200038e565b90508281526020810184848401111562000445576200044462000313565b5b62000452848285620003e3565b509392505050565b600082601f8301126200047257620004716200030e565b5b8151620004848482602086016200040f565b91505092915050565b60008060408385031215620004a757620004a662000304565b5b600083015167ffffffffffffffff811115620004c857620004c762000309565b5b620004d6858286016200045a565b925050602083015167ffffffffffffffff811115620004fa57620004f962000309565b5b62000508858286016200045a565b9150509250929050565b6000819050919050565b600067ffffffffffffffff82169050919050565b6000819050919050565b60006200055b620005556200054f8462000512565b62000530565b6200051c565b9050919050565b6200056d816200053a565b82525050565b60006020820190506200058a600083018462000562565b92915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005e357607f821691505b602082108103620005f957620005f86200059b565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006637fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000624565b6200066f868362000624565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620006b2620006ac620006a68462000687565b62000530565b62000687565b9050919050565b6000819050919050565b620006ce8362000691565b620006e6620006dd82620006b9565b84845462000631565b825550505050565b600090565b620006fd620006ee565b6200070a818484620006c3565b505050565b5b81811015620007325762000726600082620006f3565b60018101905062000710565b5050565b601f82111562000781576200074b81620005ff565b620007568462000614565b8101602085101562000766578190505b6200077e620007758562000614565b8301826200070f565b50505b505050565b600082821c905092915050565b6000620007a66000198460080262000786565b1980831691505092915050565b6000620007c1838362000793565b9150826002028217905092915050565b620007dc8262000590565b67ffffffffffffffff811115620007f857620007f762000329565b5b620008048254620005ca565b6200081182828562000736565b600060209050601f83116001811462000849576000841562000834578287015190505b620008408582620007b3565b865550620008b0565b601f1984166200085986620005ff565b60005b8281101562000883578489015182556001820191506020850194506020810190506200085c565b86831015620008a357848901516200089f601f89168262000793565b8355505b6001600288020188555050505b505050505050565b61209b80620008c86000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c578063ab67aa5811610066578063ab67aa5814610226578063c87b56dd14610242578063e213f10b14610272578063ec94e0ba14610290576100cf565b806370a08231146101ba57806395d89b41146101ea578063a47d1f5e14610208576100cf565b806301ffc9a7146100d457806306fdde0314610104578063122b780f146101225780633fba56c61461015257806342966c681461016e5780636352211e1461018a575b600080fd5b6100ee60048036038101906100e991906113b4565b6102ac565b6040516100fb91906113fc565b60405180910390f35b61010c61038e565b60405161011991906114a7565b60405180910390f35b61013c600480360381019061013791906114ff565b610420565b60405161014991906113fc565b60405180910390f35b61016c600480360381019061016791906116bf565b610432565b005b610188600480360381019061018391906114ff565b610442565b005b6101a4600480360381019061019f91906114ff565b61044e565b6040516101b1919061173d565b60405180910390f35b6101d460048036038101906101cf9190611758565b6104ff565b6040516101e19190611794565b60405180910390f35b6101f26105b6565b6040516101ff91906114a7565b60405180910390f35b610210610648565b60405161021d9190611804565b60405180910390f35b610240600480360381019061023b9190611826565b6106d6565b005b61025c600480360381019061025791906114ff565b610738565b60405161026991906114a7565b60405180910390f35b61027a6107df565b60405161028791906114a7565b60405180910390f35b6102aa60048036038101906102a591906118a9565b6107ee565b005b60007fb8950977000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061037757507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806103875750610386826107fc565b5b9050919050565b60606000805461039d90611918565b80601f01602080910402602001604051908101604052809291908181526020018280546103c990611918565b80156104165780601f106103eb57610100808354040283529160200191610416565b820191906000526020600020905b8154815290600101906020018083116103f957829003601f168201915b5050505050905090565b600061042b82610866565b9050919050565b61043d8383836108d2565b505050565b61044b8161092d565b50565b6000806003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036104f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ed906119bb565b60405180910390fd5b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361056f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161056690611a4d565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6060600180546105c590611918565b80601f01602080910402602001604051908101604052809291908181526020018280546105f190611918565b801561063e5780601f106106135761010080835404028352916020019161063e565b820191906000526020600020905b81548152906001019060200180831161062157829003601f168201915b5050505050905090565b6002805461065590611918565b80601f016020809104026020016040519081016040528092919081815260200182805461068190611918565b80156106ce5780601f106106a3576101008083540402835291602001916106ce565b820191906000526020600020905b8154815290600101906020018083116106b157829003601f168201915b505050505081565b6106e76106e1610a3f565b83610a47565b610726576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161071d90611adf565b60405180910390fd5b61073284848484610ad6565b50505050565b606061074382610866565b610782576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077990611b71565b60405180910390fd5b600061078c610b32565b905060008151116107ac57604051806020016040528060008152506107d7565b806107b684610b49565b6040516020016107c7929190611bcd565b6040516020818303038152906040525b915050919050565b60606107e9610b32565b905090565b6107f88282610c17565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b6108dc8383610c35565b6108e96000848484610e0e565b610928576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091f90611c63565b60405180910390fd5b505050565b60006109388261044e565b905061094681600084610f90565b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109969190611cb2565b925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610a3b81600084610f95565b5050565b600033905090565b6000610a5282610866565b610a91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8890611d58565b60405180910390fd5b6000610a9c8361044e565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161491505092915050565b610ae1848484610f9a565b610aed84848484610e0e565b610b2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b2390611c63565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b606060006001610b58846111f5565b01905060008167ffffffffffffffff811115610b7757610b76611594565b5b6040519080825280601f01601f191660200182016040528015610ba95781602001600182028036833780820191505090505b509050600082602083010190505b600115610c0c578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581610c0057610bff611d78565b5b04945060008503610bb7575b819350505050919050565b610c318282604051806020016040528060008152506108d2565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ca4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9b90611df3565b60405180910390fd5b610cad81610866565b15610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce490611e5f565b60405180910390fd5b610cf960008383610f90565b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d499190611e7f565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4610e0a60008383610f95565b5050565b6000808473ffffffffffffffffffffffffffffffffffffffff163b1115610f83578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02610e53610a3f565b8786866040518563ffffffff1660e01b8152600401610e759493929190611eb3565b6020604051808303816000875af1925050508015610eb157506040513d601f19601f82011682018060405250810190610eae9190611f14565b60015b610f33573d8060008114610ee1576040519150601f19603f3d011682016040523d82523d6000602084013e610ee6565b606091505b506000815103610f2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2290611c63565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050610f88565b600190505b949350505050565b505050565b505050565b8273ffffffffffffffffffffffffffffffffffffffff16610fba8261044e565b73ffffffffffffffffffffffffffffffffffffffff1614611010576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100790611fb3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361107f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107690612045565b60405180910390fd5b61108a838383610f90565b6001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546110da9190611cb2565b925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546111319190611e7f565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46111f0838383610f95565b505050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310611253577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000838161124957611248611d78565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310611290576d04ee2d6d415b85acef8100000000838161128657611285611d78565b5b0492506020810190505b662386f26fc1000083106112bf57662386f26fc1000083816112b5576112b4611d78565b5b0492506010810190505b6305f5e10083106112e8576305f5e10083816112de576112dd611d78565b5b0492506008810190505b612710831061130d57612710838161130357611302611d78565b5b0492506004810190505b60648310611330576064838161132657611325611d78565b5b0492506002810190505b600a831061133f576001810190505b80915050919050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6113918161135c565b811461139c57600080fd5b50565b6000813590506113ae81611388565b92915050565b6000602082840312156113ca576113c9611352565b5b60006113d88482850161139f565b91505092915050565b60008115159050919050565b6113f6816113e1565b82525050565b600060208201905061141160008301846113ed565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611451578082015181840152602081019050611436565b60008484015250505050565b6000601f19601f8301169050919050565b600061147982611417565b6114838185611422565b9350611493818560208601611433565b61149c8161145d565b840191505092915050565b600060208201905081810360008301526114c1818461146e565b905092915050565b6000819050919050565b6114dc816114c9565b81146114e757600080fd5b50565b6000813590506114f9816114d3565b92915050565b60006020828403121561151557611514611352565b5b6000611523848285016114ea565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115578261152c565b9050919050565b6115678161154c565b811461157257600080fd5b50565b6000813590506115848161155e565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6115cc8261145d565b810181811067ffffffffffffffff821117156115eb576115ea611594565b5b80604052505050565b60006115fe611348565b905061160a82826115c3565b919050565b600067ffffffffffffffff82111561162a57611629611594565b5b6116338261145d565b9050602081019050919050565b82818337600083830152505050565b600061166261165d8461160f565b6115f4565b90508281526020810184848401111561167e5761167d61158f565b5b611689848285611640565b509392505050565b600082601f8301126116a6576116a561158a565b5b81356116b684826020860161164f565b91505092915050565b6000806000606084860312156116d8576116d7611352565b5b60006116e686828701611575565b93505060206116f7868287016114ea565b925050604084013567ffffffffffffffff81111561171857611717611357565b5b61172486828701611691565b9150509250925092565b6117378161154c565b82525050565b6000602082019050611752600083018461172e565b92915050565b60006020828403121561176e5761176d611352565b5b600061177c84828501611575565b91505092915050565b61178e816114c9565b82525050565b60006020820190506117a96000830184611785565b92915050565b600081519050919050565b600082825260208201905092915050565b60006117d6826117af565b6117e081856117ba565b93506117f0818560208601611433565b6117f98161145d565b840191505092915050565b6000602082019050818103600083015261181e81846117cb565b905092915050565b600080600080608085870312156118405761183f611352565b5b600061184e87828801611575565b945050602061185f87828801611575565b9350506040611870878288016114ea565b925050606085013567ffffffffffffffff81111561189157611890611357565b5b61189d87828801611691565b91505092959194509250565b600080604083850312156118c0576118bf611352565b5b60006118ce85828601611575565b92505060206118df858286016114ea565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061193057607f821691505b602082108103611943576119426118e9565b5b50919050565b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b60006119a5602983611422565b91506119b082611949565b604082019050919050565b600060208201905081810360008301526119d481611998565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b6000611a37602a83611422565b9150611a42826119db565b604082019050919050565b60006020820190508181036000830152611a6681611a2a565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b6000611ac9603183611422565b9150611ad482611a6d565b604082019050919050565b60006020820190508181036000830152611af881611abc565b9050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000611b5b602f83611422565b9150611b6682611aff565b604082019050919050565b60006020820190508181036000830152611b8a81611b4e565b9050919050565b600081905092915050565b6000611ba782611417565b611bb18185611b91565b9350611bc1818560208601611433565b80840191505092915050565b6000611bd98285611b9c565b9150611be58284611b9c565b91508190509392505050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000611c4d603283611422565b9150611c5882611bf1565b604082019050919050565b60006020820190508181036000830152611c7c81611c40565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611cbd826114c9565b9150611cc8836114c9565b9250828203905081811115611ce057611cdf611c83565b5b92915050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000611d42602c83611422565b9150611d4d82611ce6565b604082019050919050565b60006020820190508181036000830152611d7181611d35565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b6000611ddd602083611422565b9150611de882611da7565b602082019050919050565b60006020820190508181036000830152611e0c81611dd0565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000611e49601c83611422565b9150611e5482611e13565b602082019050919050565b60006020820190508181036000830152611e7881611e3c565b9050919050565b6000611e8a826114c9565b9150611e95836114c9565b9250828201905080821115611ead57611eac611c83565b5b92915050565b6000608082019050611ec8600083018761172e565b611ed5602083018661172e565b611ee26040830185611785565b8181036060830152611ef481846117cb565b905095945050505050565b600081519050611f0e81611388565b92915050565b600060208284031215611f2a57611f29611352565b5b6000611f3884828501611eff565b91505092915050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000611f9d602583611422565b9150611fa882611f41565b604082019050919050565b60006020820190508181036000830152611fcc81611f90565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061202f602483611422565b915061203a82611fd3565b604082019050919050565b6000602082019050818103600083015261205e81612022565b905091905056fea26469706673582212201e99eb5e6461356dbf5b453b91b7e45fe06eaceb53ebd9830db2f5fb3ef4de3d64736f6c63430008160033";
316
316
 
317
317
  type SBTUpgradeableMockConstructorParams =
318
318
  | [signer?: Signer]
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.SigHelperMock__factory = void 0;
7
7
  var _ethers = require("ethers");
8
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
8
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
9
11
  const _abi = [{
10
12
  inputs: [{
11
13
  internalType: "string",
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.SimpleCaller__factory = void 0;
7
7
  var _ethers = require("ethers");
8
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
8
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
9
11
  const _abi = [{
10
12
  inputs: [{
11
13
  internalType: "address",
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.TitleEscrowFactoryCallerMock__factory = void 0;
7
7
  var _ethers = require("ethers");
8
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
8
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
9
11
  const _abi = [{
10
12
  inputs: [{
11
13
  internalType: "address",
@@ -5,7 +5,9 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.TitleEscrowFactoryGetterMock__factory = void 0;
7
7
  var _ethers = require("ethers");
8
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
8
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
9
11
  const _abi = [{
10
12
  inputs: [{
11
13
  internalType: "address",
@@ -5,9 +5,15 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.TitleEscrowMock__factory = void 0;
7
7
  var _ethers = require("ethers");
8
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
8
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ // @ts-nocheck
9
11
  const _abi = [{
10
- inputs: [],
12
+ inputs: [{
13
+ internalType: "address",
14
+ name: "trustedForwarder",
15
+ type: "address"
16
+ }],
11
17
  stateMutability: "nonpayable",
12
18
  type: "constructor"
13
19
  }, {
@@ -105,6 +111,11 @@ const _abi = [{
105
111
  }, {
106
112
  anonymous: false,
107
113
  inputs: [{
114
+ indexed: true,
115
+ internalType: "address",
116
+ name: "actor",
117
+ type: "address"
118
+ }, {
108
119
  indexed: true,
109
120
  internalType: "address",
110
121
  name: "fromBeneficiary",
@@ -135,6 +146,11 @@ const _abi = [{
135
146
  }, {
136
147
  anonymous: false,
137
148
  inputs: [{
149
+ indexed: true,
150
+ internalType: "address",
151
+ name: "actor",
152
+ type: "address"
153
+ }, {
138
154
  indexed: true,
139
155
  internalType: "address",
140
156
  name: "fromHolder",
@@ -175,6 +191,11 @@ const _abi = [{
175
191
  }, {
176
192
  anonymous: false,
177
193
  inputs: [{
194
+ indexed: true,
195
+ internalType: "address",
196
+ name: "actor",
197
+ type: "address"
198
+ }, {
178
199
  indexed: true,
179
200
  internalType: "address",
180
201
  name: "prevNominee",
@@ -205,6 +226,11 @@ const _abi = [{
205
226
  }, {
206
227
  anonymous: false,
207
228
  inputs: [{
229
+ indexed: true,
230
+ internalType: "address",
231
+ name: "actor",
232
+ type: "address"
233
+ }, {
208
234
  indexed: true,
209
235
  internalType: "address",
210
236
  name: "fromBeneficiary",
@@ -235,6 +261,11 @@ const _abi = [{
235
261
  }, {
236
262
  anonymous: false,
237
263
  inputs: [{
264
+ indexed: true,
265
+ internalType: "address",
266
+ name: "actor",
267
+ type: "address"
268
+ }, {
238
269
  indexed: true,
239
270
  internalType: "address",
240
271
  name: "fromHolder",
@@ -265,6 +296,11 @@ const _abi = [{
265
296
  }, {
266
297
  anonymous: false,
267
298
  inputs: [{
299
+ indexed: false,
300
+ internalType: "address",
301
+ name: "actor",
302
+ type: "address"
303
+ }, {
268
304
  indexed: true,
269
305
  internalType: "address",
270
306
  name: "fromBeneficiary",
@@ -294,11 +330,6 @@ const _abi = [{
294
330
  internalType: "uint256",
295
331
  name: "tokenId",
296
332
  type: "uint256"
297
- }, {
298
- indexed: false,
299
- internalType: "bytes",
300
- name: "remark",
301
- type: "bytes"
302
333
  }],
303
334
  name: "RejectTransferOwners",
304
335
  type: "event"
@@ -350,6 +381,11 @@ const _abi = [{
350
381
  }, {
351
382
  anonymous: false,
352
383
  inputs: [{
384
+ indexed: false,
385
+ internalType: "address",
386
+ name: "actor",
387
+ type: "address"
388
+ }, {
353
389
  indexed: true,
354
390
  internalType: "address",
355
391
  name: "beneficiary",
@@ -462,6 +498,20 @@ const _abi = [{
462
498
  }],
463
499
  stateMutability: "view",
464
500
  type: "function"
501
+ }, {
502
+ inputs: [{
503
+ internalType: "address",
504
+ name: "forwarder",
505
+ type: "address"
506
+ }],
507
+ name: "isTrustedForwarder",
508
+ outputs: [{
509
+ internalType: "bool",
510
+ name: "",
511
+ type: "bool"
512
+ }],
513
+ stateMutability: "view",
514
+ type: "function"
465
515
  }, {
466
516
  inputs: [{
467
517
  internalType: "address",
@@ -682,8 +732,18 @@ const _abi = [{
682
732
  outputs: [],
683
733
  stateMutability: "nonpayable",
684
734
  type: "function"
735
+ }, {
736
+ inputs: [],
737
+ name: "trustedForwarder",
738
+ outputs: [{
739
+ internalType: "address",
740
+ name: "",
741
+ type: "address"
742
+ }],
743
+ stateMutability: "view",
744
+ type: "function"
685
745
  }];
686
- const _bytecode = "0x60806040523480156200001157600080fd5b50600062000024620001ab60201b60201c565b905060008160000160089054906101000a900460ff1615905060008260000160009054906101000a900467ffffffffffffffff1690506000808267ffffffffffffffff16148015620000735750825b9050600060018367ffffffffffffffff16148015620000a9575060003073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015620000b8575080155b15620000f0576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018560000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315620001415760018560000160086101000a81548160ff0219169083151502179055505b8315620001a05760008560000160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2600160405162000197919062000234565b60405180910390a15b505050505062000251565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b6000819050919050565b600067ffffffffffffffff82169050919050565b6000819050919050565b60006200021c620002166200021084620001d3565b620001f1565b620001dd565b9050919050565b6200022e81620001fb565b82525050565b60006020820190506200024b600083018462000223565b92915050565b6146c180620002616000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c80637b103999116100c3578063bd1d07b51161007c578063bd1d07b51461038b578063c9437e5e146103a9578063cb3cfb29146103c7578063cd6dc687146103e3578063e3d79a6e146103ff578063e534155d1461041b57610158565b80637b103999146102df57806383d38fcb146102fd5780638fb33c3c14610319578063a47d1f5e14610335578063acec338a14610353578063baf139751461036f57610158565b806320f99c0a1161011557806320f99c0a14610233578063299e11d814610251578063308f8e1c1461026d57806334427f611461028957806338af3eed146102a5578063452736fd146102c357610158565b806301ffc9a71461015d57806302fb0c5e1461018d578063035aedfa146101ab57806305de0a2e146101c9578063150b7a02146101e557806317d70f7c14610215575b600080fd5b6101776004803603810190610172919061386a565b610439565b60405161018491906138b2565b60405180910390f35b6101956104a3565b6040516101a291906138b2565b60405180910390f35b6101b36104b6565b6040516101c0919061390e565b60405180910390f35b6101e360048036038101906101de919061398e565b6104dc565b005b6101ff60048036038101906101fa9190613a3d565b6109aa565b60405161020c9190613ad4565b60405180910390f35b61021d610ea7565b60405161022a9190613afe565b60405180910390f35b61023b610ead565b604051610248919061390e565b60405180910390f35b61026b60048036038101906102669190613b19565b610ed3565b005b61028760048036038101906102829190613b94565b610fff565b005b6102a3600480360381019061029e9190613bf4565b61148a565b005b6102ad6114a6565b6040516102ba919061390e565b60405180910390f35b6102dd60048036038101906102d8919061398e565b6114cc565b005b6102e7611acb565b6040516102f4919061390e565b60405180910390f35b6103176004803603810190610312919061398e565b611aef565b005b610333600480360381019061032e919061398e565b611f6b565b005b61033d612253565b60405161034a9190613cf8565b60405180910390f35b61036d60048036038101906103689190613d46565b6122e1565b005b61038960048036038101906103849190613b94565b6122fe565b005b610393612787565b6040516103a0919061390e565b60405180910390f35b6103b16127ad565b6040516103be91906138b2565b60405180910390f35b6103e160048036038101906103dc919061398e565b6127bc565b005b6103fd60048036038101906103f89190613d73565b612c8a565b005b61041960048036038101906104149190613b94565b612e1b565b005b6104236132a4565b604051610430919061390e565b60405180910390f35b60007f3e143f7b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600660149054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561054a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061056e9190613dc8565b905080156105a8576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff166105ee576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610675576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61067d6132ca565b6106b3576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828260788282905011156106f3576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff160361077b576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610824576040517f8c90bf4500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84846007918261083592919061403b565b506000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506108d28188888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061339b565b6000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f279c68b511f19d28a79afc0687d9909fc941d6f7551e4b0e333a1171cc2eea5f60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548b8b6040516109999493929190614147565b60405180910390a350505050505050565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3c9190613dc8565b90508015610a76576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16610abc576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001548514610b0257846040517fed15e6cf000000000000000000000000000000000000000000000000000000008152600401610af99190613afe565b60405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b9257336040517f540b9601000000000000000000000000000000000000000000000000000000008152600401610b89919061390e565b60405180910390fd5b60008073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610c3e5750600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610d935760008585905003610c80576040517f10daa94f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060008787810190610c9491906142b7565b925092509250600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610d015750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15610d455782826040517fbd805e91000000000000000000000000000000000000000000000000000000008152600401610d3c929190614326565b60405180910390fd5b610d5e836040518060200160405280600081525061348d565b610d77826040518060200160405280600081525061339b565b8060079081610d86919061434f565b5060019350505050610da6565b848460079182610da492919061403b565b505b801515600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f44fc4ffe7e585a241451c67b41553546c65c2b07de6e9d33405e53f75357293b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001546007604051610e71939291906144a5565b60405180910390a47f150b7a023d4804d13e8c85fb27262cb750cf6ba9f9dd3bb30d90f482ceeb4b1f9250505095945050505050565b60015481565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b846000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508360018190555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600660146101000a81548160ff0219169083151502179055505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561106d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110919190613dc8565b905080156110cb576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16611111576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611198576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6111a06132ca565b6111d6576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115611216576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361127c576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061134757508573ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b61137d576040517f1c98cac300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084846007918261143392919061403b565b506114828686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061348d565b505050505050565b611495848383610fff565b6114a08383836122fe565b50505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561153a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155e9190613dc8565b90508015611598576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff166115de576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6115e66132ca565b61161c576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146116a3576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461172a576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8282607882829050111561176a576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806118155750600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561184c576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84846007918261185d92919061403b565b506000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050611948818a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061348d565b611996838a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061339b565b6000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f2812f41a966386b432bd1d43d72b6613f5eca9adf4ed9e193f95f5c91a1b66268660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548f8f604051611ab89594939291906144e3565b60405180910390a4505050505050505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b819190613dc8565b90508015611bbb576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16611c01576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611c88576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d0f576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611d176132ca565b611d4d576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115611d8d576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611da7600060405180602001604052806000815250613616565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ab67aa583060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001546040518463ffffffff1660e01b8152600401611e2693929190614557565b600060405180830381600087803b158015611e4057600080fd5b505af1158015611e54573d6000803e3d6000fd5b50505050848460079182611e6992919061403b565b506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff167fea17cbc366059ac6185e6bfc7eebd173d3260bb6bc373830f9d04260e72c244b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548888604051611f5c9493929190614147565b60405180910390a25050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ffd9190613dc8565b90508015612037576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff1661207d576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828260788282905011156120bd576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6120c56132ca565b156120fc576040517fd5475a0b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461218c57336040517f540b9601000000000000000000000000000000000000000000000000000000008152600401612183919061390e565b60405180910390fd5b6121a660006040518060200160405280600081525061348d565b6121c060006040518060200160405280600081525061339b565b6000600660146101000a81548160ff0219169083151502179055508484600791826121ec92919061403b565b507f49c56a060f3a16e899a045537fb86df850339c10c8c140a052aca89cbcc30c0b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660015487876040516122449493929190614147565b60405180910390a15050505050565b6007805461226090613e5e565b80601f016020809104026020016040519081016040528092919081815260200182805461228c90613e5e565b80156122d95780601f106122ae576101008083540402835291602001916122d9565b820191906000526020600020905b8154815290600101906020018083116122bc57829003601f168201915b505050505081565b80600660146101000a81548160ff02191690831515021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561236c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123909190613dc8565b905080156123ca576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16612410576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612497576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61249f6132ca565b6124d5576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115612515576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361257b576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612602576040517f702e6e6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036126bc576000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084846007918261273092919061403b565b5061277f8686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061339b565b505050505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006127b76132ca565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561282a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061284e9190613dc8565b90508015612888576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff166128ce576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612955576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61295d6132ca565b612993576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828260788282905011156129d3576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612a5b576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612b04576040517f8c90bf4500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b848460079182612b1592919061403b565b506000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050612bb28188888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061348d565b6000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f26cb5b08a00ade9c3c65737592d8344548bf60664af05af8ed04720b893eca2760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548b8b604051612c799493929190614147565b60405180910390a350505050505050565b6000612c94613708565b905060008160000160089054906101000a900460ff1615905060008260000160009054906101000a900467ffffffffffffffff1690506000808267ffffffffffffffff16148015612ce25750825b9050600060018367ffffffffffffffff16148015612d17575060003073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015612d25575080155b15612d5c576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018560000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315612dac5760018560000160086101000a81548160ff0219169083151502179055505b612db68787613730565b8315612e125760008560000160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051612e0991906145f0565b60405180910390a15b50505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612e89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ead9190613dc8565b90508015612ee7576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16612f2d576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612fb4576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612fbc6132ca565b612ff2576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115613032576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036130b9576040517fdd9f921d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603613140576040517f98f83ce800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff160361323c576000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b84846007918261324d92919061403b565b5061329c8686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613616565b505050505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e6001546040518263ffffffff1660e01b815260040161333e9190613afe565b602060405180830381865afa15801561335b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061337f9190614620565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b8173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f30426d047f8ae6511337356e511764b12f79993bd73501d0e993b3da7a780a4d60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154856040516134409392919061464d565b60405180910390a381600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b8173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f9081b884d1178ac5e4855291131f541f64a88854f90b8df23412ffd63c39be1d60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154856040516135329392919061464d565b60405180910390a3600073ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146135d1576135d060006040518060400160405280600281526020017f3078000000000000000000000000000000000000000000000000000000000000815250613616565b5b81600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b8173ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ffbe262229f456b8d55f1e1887503540dc0a1efcb4b048b6b739117e66d03121460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154856040516136bb9392919061464d565b60405180910390a381600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b61373861379e565b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806001819055506001600660146101000a81548160ff0219169083151502179055505050565b6137a66137de565b6137dc576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b60006137e8613708565b60000160089054906101000a900460ff16905090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61384781613812565b811461385257600080fd5b50565b6000813590506138648161383e565b92915050565b6000602082840312156138805761387f613808565b5b600061388e84828501613855565b91505092915050565b60008115159050919050565b6138ac81613897565b82525050565b60006020820190506138c760008301846138a3565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006138f8826138cd565b9050919050565b613908816138ed565b82525050565b600060208201905061392360008301846138ff565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261394e5761394d613929565b5b8235905067ffffffffffffffff81111561396b5761396a61392e565b5b60208301915083600182028301111561398757613986613933565b5b9250929050565b600080602083850312156139a5576139a4613808565b5b600083013567ffffffffffffffff8111156139c3576139c261380d565b5b6139cf85828601613938565b92509250509250929050565b6139e4816138ed565b81146139ef57600080fd5b50565b600081359050613a01816139db565b92915050565b6000819050919050565b613a1a81613a07565b8114613a2557600080fd5b50565b600081359050613a3781613a11565b92915050565b600080600080600060808688031215613a5957613a58613808565b5b6000613a67888289016139f2565b9550506020613a78888289016139f2565b9450506040613a8988828901613a28565b935050606086013567ffffffffffffffff811115613aaa57613aa961380d565b5b613ab688828901613938565b92509250509295509295909350565b613ace81613812565b82525050565b6000602082019050613ae96000830184613ac5565b92915050565b613af881613a07565b82525050565b6000602082019050613b136000830184613aef565b92915050565b600080600080600060a08688031215613b3557613b34613808565b5b6000613b43888289016139f2565b9550506020613b5488828901613a28565b9450506040613b65888289016139f2565b9350506060613b76888289016139f2565b9250506080613b87888289016139f2565b9150509295509295909350565b600080600060408486031215613bad57613bac613808565b5b6000613bbb868287016139f2565b935050602084013567ffffffffffffffff811115613bdc57613bdb61380d565b5b613be886828701613938565b92509250509250925092565b60008060008060608587031215613c0e57613c0d613808565b5b6000613c1c878288016139f2565b9450506020613c2d878288016139f2565b935050604085013567ffffffffffffffff811115613c4e57613c4d61380d565b5b613c5a87828801613938565b925092505092959194509250565b600081519050919050565b600082825260208201905092915050565b60005b83811015613ca2578082015181840152602081019050613c87565b60008484015250505050565b6000601f19601f8301169050919050565b6000613cca82613c68565b613cd48185613c73565b9350613ce4818560208601613c84565b613ced81613cae565b840191505092915050565b60006020820190508181036000830152613d128184613cbf565b905092915050565b613d2381613897565b8114613d2e57600080fd5b50565b600081359050613d4081613d1a565b92915050565b600060208284031215613d5c57613d5b613808565b5b6000613d6a84828501613d31565b91505092915050565b60008060408385031215613d8a57613d89613808565b5b6000613d98858286016139f2565b9250506020613da985828601613a28565b9150509250929050565b600081519050613dc281613d1a565b92915050565b600060208284031215613dde57613ddd613808565b5b6000613dec84828501613db3565b91505092915050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613e7657607f821691505b602082108103613e8957613e88613e2f565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302613ef17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613eb4565b613efb8683613eb4565b95508019841693508086168417925050509392505050565b6000819050919050565b6000613f38613f33613f2e84613a07565b613f13565b613a07565b9050919050565b6000819050919050565b613f5283613f1d565b613f66613f5e82613f3f565b848454613ec1565b825550505050565b600090565b613f7b613f6e565b613f86818484613f49565b505050565b5b81811015613faa57613f9f600082613f73565b600181019050613f8c565b5050565b601f821115613fef57613fc081613e8f565b613fc984613ea4565b81016020851015613fd8578190505b613fec613fe485613ea4565b830182613f8b565b50505b505050565b600082821c905092915050565b600061401260001984600802613ff4565b1980831691505092915050565b600061402b8383614001565b9150826002028217905092915050565b6140458383613df5565b67ffffffffffffffff81111561405e5761405d613e00565b5b6140688254613e5e565b614073828285613fae565b6000601f8311600181146140a25760008415614090578287013590505b61409a858261401f565b865550614102565b601f1984166140b086613e8f565b60005b828110156140d8578489013582556001820191506020850194506020810190506140b3565b868310156140f557848901356140f1601f891682614001565b8355505b6001600288020188555050505b50505050505050565b82818337600083830152505050565b60006141268385613c73565b935061413383858461410b565b61413c83613cae565b840190509392505050565b600060608201905061415c60008301876138ff565b6141696020830186613aef565b818103604083015261417c81848661411a565b905095945050505050565b6000614192826138cd565b9050919050565b6141a281614187565b81146141ad57600080fd5b50565b6000813590506141bf81614199565b92915050565b600080fd5b6141d382613cae565b810181811067ffffffffffffffff821117156141f2576141f1613e00565b5b80604052505050565b60006142056137fe565b905061421182826141ca565b919050565b600067ffffffffffffffff82111561423157614230613e00565b5b61423a82613cae565b9050602081019050919050565b600061425a61425584614216565b6141fb565b905082815260208101848484011115614276576142756141c5565b5b61428184828561410b565b509392505050565b600082601f83011261429e5761429d613929565b5b81356142ae848260208601614247565b91505092915050565b6000806000606084860312156142d0576142cf613808565b5b60006142de868287016141b0565b93505060206142ef868287016141b0565b925050604084013567ffffffffffffffff8111156143105761430f61380d565b5b61431c86828701614289565b9150509250925092565b600060408201905061433b60008301856138ff565b61434860208301846138ff565b9392505050565b61435882613c68565b67ffffffffffffffff81111561437157614370613e00565b5b61437b8254613e5e565b614386828285613fae565b600060209050601f8311600181146143b957600084156143a7578287015190505b6143b1858261401f565b865550614419565b601f1984166143c786613e8f565b60005b828110156143ef578489015182556001820191506020850194506020810190506143ca565b8683101561440c5784890151614408601f891682614001565b8355505b6001600288020188555050505b505050505050565b6000815461442e81613e5e565b6144388186613c73565b9450600182166000811461445357600181146144695761449c565b60ff19831686528115156020028601935061449c565b61447285613e8f565b60005b8381101561449457815481890152600182019150602081019050614475565b808801955050505b50505092915050565b60006060820190506144ba60008301866138ff565b6144c76020830185613aef565b81810360408301526144d98184614421565b9050949350505050565b60006080820190506144f860008301886138ff565b61450560208301876138ff565b6145126040830186613aef565b818103606083015261452581848661411a565b90509695505050505050565b50565b6000614541600083613c73565b915061454c82614531565b600082019050919050565b600060808201905061456c60008301866138ff565b61457960208301856138ff565b6145866040830184613aef565b818103606083015261459781614534565b9050949350505050565b6000819050919050565b600067ffffffffffffffff82169050919050565b60006145da6145d56145d0846145a1565b613f13565b6145ab565b9050919050565b6145ea816145bf565b82525050565b600060208201905061460560008301846145e1565b92915050565b60008151905061461a816139db565b92915050565b60006020828403121561463657614635613808565b5b60006146448482850161460b565b91505092915050565b600060608201905061466260008301866138ff565b61466f6020830185613aef565b81810360408301526146818184613cbf565b905094935050505056fea2646970667358221220941896e3d59e9ac06178cd3f6d81655ea98ab5673dcb4c9fbe36da3706825be364736f6c63430008160033";
746
+ const _bytecode = "0x60a06040523480156200001157600080fd5b5060405162004d1b38038062004d1b833981810160405281019062000037919062000241565b80808073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050506200007e6200008660201b60201c565b5050620002b5565b6000620000986200019060201b60201c565b90508060000160089054906101000a900460ff1615620000e4576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff80168160000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff16146200018d5767ffffffffffffffff8160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d267ffffffffffffffff60405162000184919062000298565b60405180910390a15b50565b600080620001a3620001ac60201b60201c565b90508091505090565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200020982620001dc565b9050919050565b6200021b81620001fc565b81146200022757600080fd5b50565b6000815190506200023b8162000210565b92915050565b6000602082840312156200025a5762000259620001d7565b5b60006200026a848285016200022a565b91505092915050565b600067ffffffffffffffff82169050919050565b620002928162000273565b82525050565b6000602082019050620002af600083018462000287565b92915050565b608051614a4a620002d16000396000611bfe0152614a4a6000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c80637b103999116100de578063baf1397511610097578063cb3cfb2911610071578063cb3cfb291461044b578063cd6dc68714610467578063e3d79a6e14610483578063e534155d1461049f5761018e565b8063baf13975146103f3578063bd1d07b51461040f578063c9437e5e1461042d5761018e565b80637b103999146103455780637da0a8771461036357806383d38fcb146103815780638fb33c3c1461039d578063a47d1f5e146103b9578063acec338a146103d75761018e565b806320f99c0a1161014b57806334427f611161012557806334427f61146102bf57806338af3eed146102db578063452736fd146102f9578063572b6c05146103155761018e565b806320f99c0a14610269578063299e11d814610287578063308f8e1c146102a35761018e565b806301ffc9a71461019357806302fb0c5e146101c3578063035aedfa146101e157806305de0a2e146101ff578063150b7a021461021b57806317d70f7c1461024b575b600080fd5b6101ad60048036038101906101a89190613af1565b6104bd565b6040516101ba9190613b39565b60405180910390f35b6101cb610527565b6040516101d89190613b39565b60405180910390f35b6101e961053a565b6040516101f69190613b95565b60405180910390f35b61021960048036038101906102149190613c15565b610560565b005b61023560048036038101906102309190613cc4565b610a53565b6040516102429190613d5b565b60405180910390f35b610253610f59565b6040516102609190613d85565b60405180910390f35b610271610f5f565b60405161027e9190613b95565b60405180910390f35b6102a1600480360381019061029c9190613da0565b610f85565b005b6102bd60048036038101906102b89190613e1b565b6110b1565b005b6102d960048036038101906102d49190613e7b565b611543565b005b6102e361155f565b6040516102f09190613b95565b60405180910390f35b610313600480360381019061030e9190613c15565b611585565b005b61032f600480360381019061032a9190613eef565b611b97565b60405161033c9190613b39565b60405180910390f35b61034d611bd6565b60405161035a9190613b95565b60405180910390f35b61036b611bfa565b6040516103789190613b95565b60405180910390f35b61039b60048036038101906103969190613c15565b611c22565b005b6103b760048036038101906103b29190613c15565b6120b3565b005b6103c161239b565b6040516103ce9190613fac565b60405180910390f35b6103f160048036038101906103ec9190613ffa565b612429565b005b61040d60048036038101906104089190613e1b565b612446565b005b6104176128d6565b6040516104249190613b95565b60405180910390f35b6104356128fc565b6040516104429190613b39565b60405180910390f35b61046560048036038101906104609190613c15565b61290b565b005b610481600480360381019061047c9190614027565b612dfe565b005b61049d60048036038101906104989190613e1b565b612f8f565b005b6104a761341f565b6040516104b49190613b95565b60405180910390f35b60007f3e143f7b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600660149054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f2919061407c565b9050801561062c576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16610672576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166106b3613445565b73ffffffffffffffffffffffffffffffffffffffff1614610700576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610708613454565b61073e576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8282607882829050111561077e576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610806576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036108af576040517f8c90bf4500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8484600791826108c09291906142ef565b506000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905061095d8188888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613525565b6000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff166109d5613445565b73ffffffffffffffffffffffffffffffffffffffff167f9d836937a837e685e1ce6796afaed48df16cd88219d6775dc46b6617b847dd1360008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548c8c604051610a4294939291906143fb565b60405180910390a450505050505050565b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ae5919061407c565b90508015610b1f576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16610b65576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001548514610bab57846040517fed15e6cf000000000000000000000000000000000000000000000000000000008152600401610ba29190613d85565b60405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c3b57336040517f540b9601000000000000000000000000000000000000000000000000000000008152600401610c329190613b95565b60405180910390fd5b60008073ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161480610ce75750600073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15610e3c5760008585905003610d29576040517f10daa94f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060008787810190610d3d919061456b565b925092509250600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610daa5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15610dee5782826040517fbd805e91000000000000000000000000000000000000000000000000000000008152600401610de59291906145da565b60405180910390fd5b610e078360405180602001604052806000815250613635565b610e208260405180602001604052806000815250613525565b8060079081610e2f9190614603565b5060019350505050610e4f565b848460079182610e4d9291906142ef565b505b801515600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f949aacc83c3ca79403342afa7cf9a504f34996bc163596e87d5f0bd365a60f7e610eed613445565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001546007604051610f239493929190614759565b60405180910390a47f150b7a023d4804d13e8c85fb27262cb750cf6ba9f9dd3bb30d90f482ceeb4b1f9250505095945050505050565b60015481565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b846000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508360018190555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600660146101000a81548160ff0219169083151502179055505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561111f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611143919061407c565b9050801561117d576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff166111c3576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611204613445565b73ffffffffffffffffffffffffffffffffffffffff1614611251576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611259613454565b61128f576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828260788282905011156112cf576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603611335576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148061140057508573ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b611436576040517f1c98cac300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508484600791826114ec9291906142ef565b5061153b8686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613635565b505050505050565b61154e8483836110b1565b611559838383612446565b50505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611617919061407c565b90508015611651576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16611697576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61169f613454565b6116d5576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611716613445565b73ffffffffffffffffffffffffffffffffffffffff1614611763576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166117a4613445565b73ffffffffffffffffffffffffffffffffffffffff16146117f1576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115611831576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806118dc5750600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15611913576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8484600791826119249291906142ef565b506000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050611a0f818a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613635565b611a5d838a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613525565b6000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f2e6f393db2fca12e96dfa806cf78ed2daddc38a90ffd973ef5a6b4fdbabae410611b4f613445565b8760008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154604051611b8494939291906147a5565b60405180910390a4505050505050505050565b6000611ba1611bfa565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cb4919061407c565b90508015611cee576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16611d34576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611d75613445565b73ffffffffffffffffffffffffffffffffffffffff1614611dc2576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611e03613445565b73ffffffffffffffffffffffffffffffffffffffff1614611e50576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611e58613454565b611e8e576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115611ece576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611ee86000604051806020016040528060008152506137dc565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ab67aa583060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001546040518463ffffffff1660e01b8152600401611f6793929190614810565b600060405180830381600087803b158015611f8157600080fd5b505af1158015611f95573d6000803e3d6000fd5b50505050848460079182611faa9291906142ef565b506000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612037613445565b73ffffffffffffffffffffffffffffffffffffffff167fea17cbc366059ac6185e6bfc7eebd173d3260bb6bc373830f9d04260e72c244b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660015488886040516120a494939291906143fb565b60405180910390a25050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612121573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612145919061407c565b9050801561217f576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff166121c5576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115612205576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61220d613454565b15612244576040517fd5475a0b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146122d457336040517f540b96010000000000000000000000000000000000000000000000000000000081526004016122cb9190613b95565b60405180910390fd5b6122ee600060405180602001604052806000815250613635565b612308600060405180602001604052806000815250613525565b6000600660146101000a81548160ff0219169083151502179055508484600791826123349291906142ef565b507f49c56a060f3a16e899a045537fb86df850339c10c8c140a052aca89cbcc30c0b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154878760405161238c94939291906143fb565b60405180910390a15050505050565b600780546123a890614112565b80601f01602080910402602001604051908101604052809291908181526020018280546123d490614112565b80156124215780601f106123f657610100808354040283529160200191612421565b820191906000526020600020905b81548152906001019060200180831161240457829003601f168201915b505050505081565b80600660146101000a81548160ff02191690831515021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124b4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124d8919061407c565b90508015612512576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16612558576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612599613445565b73ffffffffffffffffffffffffffffffffffffffff16146125e6576040517f667b3fbf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6125ee613454565b612624576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115612664576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036126ca576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612751576040517f702e6e6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff160361280b576000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084846007918261287f9291906142ef565b506128ce8686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613525565b505050505050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000612906613454565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612979573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061299d919061407c565b905080156129d7576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff16612a1d576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612a5e613445565b73ffffffffffffffffffffffffffffffffffffffff1614612aab576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612ab3613454565b612ae9576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82826078828290501115612b29576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612bb1576040517f2c75c45a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603612c5a576040517f8c90bf4500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b848460079182612c6b9291906142ef565b506000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050612d088188888080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050613635565b6000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16612d80613445565b73ffffffffffffffffffffffffffffffffffffffff167f5ede0a76a5fa7073243cab067bae342c2fbb26acd128b30356d94d1a4c1d20ea60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548c8c604051612ded94939291906143fb565b60405180910390a450505050505050565b6000612e086138ec565b905060008160000160089054906101000a900460ff1615905060008260000160009054906101000a900467ffffffffffffffff1690506000808267ffffffffffffffff16148015612e565750825b9050600060018367ffffffffffffffff16148015612e8b575060003073ffffffffffffffffffffffffffffffffffffffff163b145b905081158015612e99575080155b15612ed0576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018560000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508315612f205760018560000160086101000a81548160ff0219169083151502179055505b612f2a8787613900565b8315612f865760008560000160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d26001604051612f7d91906148a9565b60405180910390a15b50505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c975abb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ffd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613021919061407c565b9050801561305b576040517fad49811c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600660149054906101000a900460ff166130a1576040517f7c339b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166130e2613445565b73ffffffffffffffffffffffffffffffffffffffff161461312f576040517ff52018ac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613137613454565b61316d576040517f2fd3952300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b828260788282905011156131ad576040517f1408658400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603613234576040517fdd9f921d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036132bb576040517f98f83ce800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036133b7576000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8484600791826133c89291906142ef565b506134178686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506137dc565b505050505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061344f61396e565b905090565b60003073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636352211e6001546040518263ffffffff1660e01b81526004016134c89190613d85565b602060405180830381865afa1580156134e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061350991906148d9565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b8173ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661357d613445565b73ffffffffffffffffffffffffffffffffffffffff167f220142965e07ad032af0005eb4747d4a55acc8c786d04f087ce27e10ea2d140460008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154866040516135e893929190614906565b60405180910390a481600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b8173ffffffffffffffffffffffffffffffffffffffff16600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661368d613445565b73ffffffffffffffffffffffffffffffffffffffff167f48509251c4976d4cc0f5420ed39336d873f0713b399e0200c55069c04937b96860008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600154866040516136f893929190614906565b60405180910390a4600073ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146137975761379660006040518060400160405280600281526020017f30780000000000000000000000000000000000000000000000000000000000008152506137dc565b5b81600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b8173ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16613834613445565b73ffffffffffffffffffffffffffffffffffffffff167ff5b0435494e36d58667cba8d6d2b6983f1c65c50be1cb5a861fdf3ad76357a6e60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001548660405161389f93929190614906565b60405180910390a481600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000806138f76139da565b90508091505090565b613908613a05565b816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806001819055506001600660146101000a81548160ff0219169083151502179055505050565b600080600036905090506000613982613a45565b9050808210158015613999575061399833611b97565b5b156139ca576000368284039080926139b39392919061494e565b906139be91906149b5565b60601c925050506139d7565b6139d2613a54565b925050505b90565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0060001b905090565b613a0d613a5c565b613a43576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6000613a4f613a7c565b905090565b600033905090565b6000613a666138ec565b60000160089054906101000a900460ff16905090565b60006014905090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613ace81613a99565b8114613ad957600080fd5b50565b600081359050613aeb81613ac5565b92915050565b600060208284031215613b0757613b06613a8f565b5b6000613b1584828501613adc565b91505092915050565b60008115159050919050565b613b3381613b1e565b82525050565b6000602082019050613b4e6000830184613b2a565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613b7f82613b54565b9050919050565b613b8f81613b74565b82525050565b6000602082019050613baa6000830184613b86565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613bd557613bd4613bb0565b5b8235905067ffffffffffffffff811115613bf257613bf1613bb5565b5b602083019150836001820283011115613c0e57613c0d613bba565b5b9250929050565b60008060208385031215613c2c57613c2b613a8f565b5b600083013567ffffffffffffffff811115613c4a57613c49613a94565b5b613c5685828601613bbf565b92509250509250929050565b613c6b81613b74565b8114613c7657600080fd5b50565b600081359050613c8881613c62565b92915050565b6000819050919050565b613ca181613c8e565b8114613cac57600080fd5b50565b600081359050613cbe81613c98565b92915050565b600080600080600060808688031215613ce057613cdf613a8f565b5b6000613cee88828901613c79565b9550506020613cff88828901613c79565b9450506040613d1088828901613caf565b935050606086013567ffffffffffffffff811115613d3157613d30613a94565b5b613d3d88828901613bbf565b92509250509295509295909350565b613d5581613a99565b82525050565b6000602082019050613d706000830184613d4c565b92915050565b613d7f81613c8e565b82525050565b6000602082019050613d9a6000830184613d76565b92915050565b600080600080600060a08688031215613dbc57613dbb613a8f565b5b6000613dca88828901613c79565b9550506020613ddb88828901613caf565b9450506040613dec88828901613c79565b9350506060613dfd88828901613c79565b9250506080613e0e88828901613c79565b9150509295509295909350565b600080600060408486031215613e3457613e33613a8f565b5b6000613e4286828701613c79565b935050602084013567ffffffffffffffff811115613e6357613e62613a94565b5b613e6f86828701613bbf565b92509250509250925092565b60008060008060608587031215613e9557613e94613a8f565b5b6000613ea387828801613c79565b9450506020613eb487828801613c79565b935050604085013567ffffffffffffffff811115613ed557613ed4613a94565b5b613ee187828801613bbf565b925092505092959194509250565b600060208284031215613f0557613f04613a8f565b5b6000613f1384828501613c79565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613f56578082015181840152602081019050613f3b565b60008484015250505050565b6000601f19601f8301169050919050565b6000613f7e82613f1c565b613f888185613f27565b9350613f98818560208601613f38565b613fa181613f62565b840191505092915050565b60006020820190508181036000830152613fc68184613f73565b905092915050565b613fd781613b1e565b8114613fe257600080fd5b50565b600081359050613ff481613fce565b92915050565b6000602082840312156140105761400f613a8f565b5b600061401e84828501613fe5565b91505092915050565b6000806040838503121561403e5761403d613a8f565b5b600061404c85828601613c79565b925050602061405d85828601613caf565b9150509250929050565b60008151905061407681613fce565b92915050565b60006020828403121561409257614091613a8f565b5b60006140a084828501614067565b91505092915050565b600082905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061412a57607f821691505b60208210810361413d5761413c6140e3565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026141a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614168565b6141af8683614168565b95508019841693508086168417925050509392505050565b6000819050919050565b60006141ec6141e76141e284613c8e565b6141c7565b613c8e565b9050919050565b6000819050919050565b614206836141d1565b61421a614212826141f3565b848454614175565b825550505050565b600090565b61422f614222565b61423a8184846141fd565b505050565b5b8181101561425e57614253600082614227565b600181019050614240565b5050565b601f8211156142a35761427481614143565b61427d84614158565b8101602085101561428c578190505b6142a061429885614158565b83018261423f565b50505b505050565b600082821c905092915050565b60006142c6600019846008026142a8565b1980831691505092915050565b60006142df83836142b5565b9150826002028217905092915050565b6142f983836140a9565b67ffffffffffffffff811115614312576143116140b4565b5b61431c8254614112565b614327828285614262565b6000601f8311600181146143565760008415614344578287013590505b61434e85826142d3565b8655506143b6565b601f19841661436486614143565b60005b8281101561438c57848901358255600182019150602085019450602081019050614367565b868310156143a957848901356143a5601f8916826142b5565b8355505b6001600288020188555050505b50505050505050565b82818337600083830152505050565b60006143da8385613f27565b93506143e78385846143bf565b6143f083613f62565b840190509392505050565b60006060820190506144106000830187613b86565b61441d6020830186613d76565b81810360408301526144308184866143ce565b905095945050505050565b600061444682613b54565b9050919050565b6144568161443b565b811461446157600080fd5b50565b6000813590506144738161444d565b92915050565b600080fd5b61448782613f62565b810181811067ffffffffffffffff821117156144a6576144a56140b4565b5b80604052505050565b60006144b9613a85565b90506144c5828261447e565b919050565b600067ffffffffffffffff8211156144e5576144e46140b4565b5b6144ee82613f62565b9050602081019050919050565b600061450e614509846144ca565b6144af565b90508281526020810184848401111561452a57614529614479565b5b6145358482856143bf565b509392505050565b600082601f83011261455257614551613bb0565b5b81356145628482602086016144fb565b91505092915050565b60008060006060848603121561458457614583613a8f565b5b600061459286828701614464565b93505060206145a386828701614464565b925050604084013567ffffffffffffffff8111156145c4576145c3613a94565b5b6145d08682870161453d565b9150509250925092565b60006040820190506145ef6000830185613b86565b6145fc6020830184613b86565b9392505050565b61460c82613f1c565b67ffffffffffffffff811115614625576146246140b4565b5b61462f8254614112565b61463a828285614262565b600060209050601f83116001811461466d576000841561465b578287015190505b61466585826142d3565b8655506146cd565b601f19841661467b86614143565b60005b828110156146a35784890151825560018201915060208501945060208101905061467e565b868310156146c057848901516146bc601f8916826142b5565b8355505b6001600288020188555050505b505050505050565b600081546146e281614112565b6146ec8186613f27565b94506001821660008114614707576001811461471d57614750565b60ff198316865281151560200286019350614750565b61472685614143565b60005b8381101561474857815481890152600182019150602081019050614729565b808801955050505b50505092915050565b600060808201905061476e6000830187613b86565b61477b6020830186613b86565b6147886040830185613d76565b818103606083015261479a81846146d5565b905095945050505050565b60006080820190506147ba6000830187613b86565b6147c76020830186613b86565b6147d46040830185613b86565b6147e16060830184613d76565b95945050505050565b50565b60006147fa600083613f27565b9150614805826147ea565b600082019050919050565b60006080820190506148256000830186613b86565b6148326020830185613b86565b61483f6040830184613d76565b8181036060830152614850816147ed565b9050949350505050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600061489361488e6148898461485a565b6141c7565b614864565b9050919050565b6148a381614878565b82525050565b60006020820190506148be600083018461489a565b92915050565b6000815190506148d381613c62565b92915050565b6000602082840312156148ef576148ee613a8f565b5b60006148fd848285016148c4565b91505092915050565b600060608201905061491b6000830186613b86565b6149286020830185613d76565b818103604083015261493a8184613f73565b9050949350505050565b600080fd5b600080fd5b6000808585111561496257614961614944565b5b8386111561497357614972614949565b5b6001850283019150848603905094509492505050565b60007fffffffffffffffffffffffffffffffffffffffff00000000000000000000000082169050919050565b60006149c183836140a9565b826149cc8135614989565b92506014821015614a0c57614a077fffffffffffffffffffffffffffffffffffffffff00000000000000000000000083601403600802614168565b831692505b50509291505056fea2646970667358221220be0c9de9843fd10f0530f4521807fdfede01ee188e8922cfd1d4a5e6719191f664736f6c63430008160033";
687
747
  const isSuperArgs = xs => xs.length > 1;
688
748
  class TitleEscrowMock__factory extends _ethers.ContractFactory {
689
749
  constructor(...args) {
@@ -693,11 +753,11 @@ class TitleEscrowMock__factory extends _ethers.ContractFactory {
693
753
  super(_abi, _bytecode, args[0]);
694
754
  }
695
755
  }
696
- getDeployTransaction(overrides) {
697
- return super.getDeployTransaction(overrides || {});
756
+ getDeployTransaction(trustedForwarder, overrides) {
757
+ return super.getDeployTransaction(trustedForwarder, overrides || {});
698
758
  }
699
- deploy(overrides) {
700
- return super.deploy(overrides || {});
759
+ deploy(trustedForwarder, overrides) {
760
+ return super.deploy(trustedForwarder, overrides || {});
701
761
  }
702
762
  connect(runner) {
703
763
  return super.connect(runner);