@superfluid-finance/ethereum-contracts 1.7.2-dev.09f3be3.0 → 1.7.2-dev.36bfd5f.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/artifacts/contracts/apps/SuperfluidLoaderLibrary.sol/SuperfluidLoaderLibrary.json +2 -2
  2. package/build/contracts/AccessControl.json +1 -1
  3. package/build/contracts/AccessControlEnumerable.json +1 -1
  4. package/build/contracts/Address.json +1 -1
  5. package/build/contracts/AgreementBase.json +18 -18
  6. package/build/contracts/AgreementLibrary.json +165 -165
  7. package/build/contracts/BaseRelayRecipient.json +57 -57
  8. package/build/contracts/BatchLiquidator.json +382 -382
  9. package/build/contracts/BatchOperation.json +614 -614
  10. package/build/contracts/CFAv1Forwarder.json +1250 -1250
  11. package/build/contracts/CFAv1ForwarderDeployerLibrary.json +2384 -2384
  12. package/build/contracts/CFAv1Library.json +389 -389
  13. package/build/contracts/CallUtils.json +198 -198
  14. package/build/contracts/ClosingOnUpdateFlowTestApp.json +1525 -1525
  15. package/build/contracts/ConstantFlowAgreementV1.json +1087 -1087
  16. package/build/contracts/ConstantInflowNFT.json +402 -402
  17. package/build/contracts/ConstantOutflowNFT.json +661 -661
  18. package/build/contracts/Context.json +1 -1
  19. package/build/contracts/ContextDefinitions.json +614 -614
  20. package/build/contracts/CustomSuperTokenBase.json +19 -19
  21. package/build/contracts/ERC165.json +1 -1
  22. package/build/contracts/ERC1820Implementer.json +1 -1
  23. package/build/contracts/ERC1820RegistryCompiled.json +22 -22
  24. package/build/contracts/ERC20.json +1 -1
  25. package/build/contracts/ERC20WithTokenInfo.json +23 -23
  26. package/build/contracts/ERC777Helper.json +384 -384
  27. package/build/contracts/ERC777RecipientDrainingGas.json +863 -863
  28. package/build/contracts/ERC777RecipientReverting.json +863 -863
  29. package/build/contracts/EnumerableSet.json +1 -1
  30. package/build/contracts/EventsEmitter.json +43 -43
  31. package/build/contracts/ExclusiveInflowTestApp.json +1525 -1525
  32. package/build/contracts/FixedSizeData.json +200 -200
  33. package/build/contracts/FlowExchangeTestApp.json +1526 -1526
  34. package/build/contracts/FlowNFTBase.json +1280 -1280
  35. package/build/contracts/FlowOperatorDefinitions.json +614 -614
  36. package/build/contracts/ForwarderBase.json +190 -190
  37. package/build/contracts/FullUpgradableSuperTokenProxy.json +116 -116
  38. package/build/contracts/IAccessControl.json +1 -1
  39. package/build/contracts/IAccessControlEnumerable.json +1 -1
  40. package/build/contracts/IConstantFlowAgreementV1.json +677 -677
  41. package/build/contracts/IConstantInflowNFT.json +54 -54
  42. package/build/contracts/IConstantOutflowNFT.json +107 -107
  43. package/build/contracts/IDAv1Forwarder.json +912 -912
  44. package/build/contracts/IDAv1ForwarderDeployerLibrary.json +2384 -2384
  45. package/build/contracts/IDAv1Library.json +430 -430
  46. package/build/contracts/IERC165.json +1 -1
  47. package/build/contracts/IERC1820Implementer.json +1 -1
  48. package/build/contracts/IERC1820Registry.json +1 -1
  49. package/build/contracts/IERC20.json +1 -1
  50. package/build/contracts/IERC20Metadata.json +1 -1
  51. package/build/contracts/IERC20Permit.json +1 -1
  52. package/build/contracts/IERC721.json +1 -1
  53. package/build/contracts/IERC721Metadata.json +1 -1
  54. package/build/contracts/IERC777.json +1 -1
  55. package/build/contracts/IERC777Recipient.json +1 -1
  56. package/build/contracts/IERC777Sender.json +1 -1
  57. package/build/contracts/IFlowNFTBase.json +115 -115
  58. package/build/contracts/IInstantDistributionAgreementV1.json +667 -667
  59. package/build/contracts/IMultiSigWallet.json +31 -31
  60. package/build/contracts/IPoolAdminNFT.json +7 -7
  61. package/build/contracts/IPoolMemberNFT.json +7 -7
  62. package/build/contracts/IPureSuperToken.json +62 -62
  63. package/build/contracts/IPureSuperTokenCustom.json +62 -62
  64. package/build/contracts/IRelayRecipient.json +27 -27
  65. package/build/contracts/IResolver.json +38 -38
  66. package/build/contracts/ISETH.json +67 -67
  67. package/build/contracts/ISETHCustom.json +67 -67
  68. package/build/contracts/ISuperAgreement.json +50 -50
  69. package/build/contracts/ISuperApp.json +191 -191
  70. package/build/contracts/ISuperToken.json +695 -695
  71. package/build/contracts/ISuperTokenFactory.json +225 -225
  72. package/build/contracts/ISuperfluid.json +904 -904
  73. package/build/contracts/ISuperfluidGovernance.json +251 -251
  74. package/build/contracts/ISuperfluidToken.json +407 -407
  75. package/build/contracts/ITOGAv1.json +1346 -1346
  76. package/build/contracts/ITOGAv2.json +1346 -1346
  77. package/build/contracts/ITOGAv3.json +1346 -1346
  78. package/build/contracts/Initializable.json +1 -1
  79. package/build/contracts/InstantDistributionAgreementV1.json +594 -594
  80. package/build/contracts/Math.json +1 -1
  81. package/build/contracts/NonClosableOutflowTestApp.json +1526 -1526
  82. package/build/contracts/Ownable.json +1 -1
  83. package/build/contracts/Proxy.json +1 -1
  84. package/build/contracts/ProxyDeployerLibrary.json +2382 -2382
  85. package/build/contracts/PureSuperToken.json +106 -106
  86. package/build/contracts/Resolver.json +98 -98
  87. package/build/contracts/SETHProxy.json +224 -224
  88. package/build/contracts/SafeCast.json +1 -1
  89. package/build/contracts/SafeERC20.json +1 -1
  90. package/build/contracts/SafeGasLibrary.json +51 -51
  91. package/build/contracts/SafeMath.json +1 -1
  92. package/build/contracts/SelfDeletingFlowTestApp.json +1525 -1525
  93. package/build/contracts/SlotsBitmapLibrary.json +457 -457
  94. package/build/contracts/StreamRedirector.json +704 -704
  95. package/build/contracts/Strings.json +1 -1
  96. package/build/contracts/SuperAppBase.json +42 -42
  97. package/build/contracts/SuperAppBaseFlow.json +138 -138
  98. package/build/contracts/SuperAppDefinitions.json +614 -614
  99. package/build/contracts/SuperToken.json +2714 -2714
  100. package/build/contracts/SuperTokenDeployerLibrary.json +2383 -2383
  101. package/build/contracts/SuperTokenFactory.json +1347 -1347
  102. package/build/contracts/SuperTokenFactoryBase.json +1329 -1329
  103. package/build/contracts/SuperTokenV1Library.json +1483 -1483
  104. package/build/contracts/SuperUpgrader.json +439 -439
  105. package/build/contracts/Superfluid.json +5196 -5196
  106. package/build/contracts/SuperfluidCFAv1DeployerLibrary.json +2383 -2383
  107. package/build/contracts/SuperfluidFrameworkDeployer.json +1260 -1260
  108. package/build/contracts/SuperfluidFrameworkDeploymentSteps.json +2382 -2382
  109. package/build/contracts/SuperfluidGovDeployerLibrary.json +2383 -2383
  110. package/build/contracts/SuperfluidGovernanceBase.json +2449 -2449
  111. package/build/contracts/SuperfluidGovernanceConfigs.json +614 -614
  112. package/build/contracts/SuperfluidGovernanceII.json +155 -155
  113. package/build/contracts/SuperfluidGovernanceIIProxy.json +135 -135
  114. package/build/contracts/SuperfluidHostDeployerLibrary.json +2382 -2382
  115. package/build/contracts/SuperfluidIDAv1DeployerLibrary.json +2383 -2383
  116. package/build/contracts/SuperfluidLoader.json +207 -207
  117. package/build/contracts/SuperfluidLoaderDeployerLibrary.json +2384 -2384
  118. package/build/contracts/SuperfluidLoaderLibrary.json +485 -351
  119. package/build/contracts/SuperfluidNFTLogicDeployerLibrary.json +2387 -2387
  120. package/build/contracts/SuperfluidPeripheryDeployerLibrary.json +2385 -2385
  121. package/build/contracts/SuperfluidToken.json +1423 -1423
  122. package/build/contracts/TOGA.json +1360 -1360
  123. package/build/contracts/TestGovernance.json +250 -250
  124. package/build/contracts/TestResolver.json +47 -47
  125. package/build/contracts/TestToken.json +102 -102
  126. package/build/contracts/TokenDeployerLibrary.json +2384 -2384
  127. package/build/contracts/TokenInfo.json +32 -32
  128. package/build/contracts/UUPSProxiable.json +139 -139
  129. package/build/contracts/UUPSProxy.json +81 -81
  130. package/build/contracts/UUPSUtils.json +37 -37
  131. package/build/contracts-sizes.txt +15 -15
  132. package/build/typechain/factories/contracts/apps/SuperfluidLoaderLibrary__factory.d.ts +1 -1
  133. package/build/typechain/factories/contracts/apps/SuperfluidLoaderLibrary__factory.d.ts.map +1 -1
  134. package/build/typechain/factories/contracts/apps/SuperfluidLoaderLibrary__factory.js +1 -1
  135. package/build/typechain/factories/contracts/apps/SuperfluidLoaderLibrary__factory.js.map +1 -1
  136. package/contracts/apps/SuperfluidLoaderLibrary.sol +4 -1
  137. package/package.json +3 -4
  138. package/ops-scripts/.eslintrc.js +0 -15
  139. package/ops-scripts/artifacts/ERC1820Registry.json +0 -5
  140. package/ops-scripts/deploy-aux-contracts.js +0 -99
  141. package/ops-scripts/deploy-deterministically.js +0 -169
  142. package/ops-scripts/deploy-erc1820.js +0 -83
  143. package/ops-scripts/deploy-framework.js +0 -895
  144. package/ops-scripts/deploy-mfa.ts +0 -27
  145. package/ops-scripts/deploy-super-token.js +0 -206
  146. package/ops-scripts/deploy-test-environment.js +0 -98
  147. package/ops-scripts/deploy-test-token.js +0 -86
  148. package/ops-scripts/deploy-unlisted-pure-super-token.js +0 -69
  149. package/ops-scripts/deploy-unlisted-super-token.js +0 -68
  150. package/ops-scripts/gov-create-new-app-registration-key.js +0 -75
  151. package/ops-scripts/gov-create-new-factory-registration.js +0 -49
  152. package/ops-scripts/gov-set-3Ps-config.js +0 -67
  153. package/ops-scripts/gov-set-reward-address.js +0 -60
  154. package/ops-scripts/gov-set-token-min-deposit.js +0 -53
  155. package/ops-scripts/gov-set-trusted-forwarder.js +0 -80
  156. package/ops-scripts/gov-transfer-framework-ownership.js +0 -90
  157. package/ops-scripts/gov-upgrade-governance.js +0 -87
  158. package/ops-scripts/gov-upgrade-super-token-logic.js +0 -193
  159. package/ops-scripts/info-inspect-account.js +0 -118
  160. package/ops-scripts/info-list-apps.js +0 -55
  161. package/ops-scripts/info-print-contract-addresses.js +0 -136
  162. package/ops-scripts/info-scan-deployments.js +0 -63
  163. package/ops-scripts/info-show-protocol.js +0 -400
  164. package/ops-scripts/libs/common.js +0 -436
  165. package/ops-scripts/libs/getConfig.js +0 -289
  166. package/ops-scripts/libs/truffleScriptRunnerFactory.js +0 -97
  167. package/ops-scripts/resolver-list-super-token.js +0 -73
  168. package/ops-scripts/resolver-register-token.js +0 -72
  169. package/ops-scripts/resolver-reset-deployment.js +0 -54
  170. package/ops-scripts/resolver-set-key-value.js +0 -69
  171. package/ops-scripts/resolver-unlist-super-token.js +0 -61
  172. package/ops-scripts/tmp-trigger-token-transfer.js +0 -33
  173. package/ops-scripts/validate-nft-addresses.ts +0 -49
@@ -58,7 +58,7 @@
58
58
  "bytecode": "0x60a060405234801561001057600080fd5b506040516104ea3803806104ea83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161046061008a600039600060b501526104606000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f490e2f014610030575b600080fd5b61004361003e366004610307565b61008f565b604051610086919081516001600160a01b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b60405180910390f35b6040805160808101825260008082526020820181905291810182905260608101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663693ec85e84846040516020016100f5929190610379565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161012091906103a0565b602060405180830381865afa15801561013d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101619190610406565b6001600160a01b03168082526040805163398d76b760e11b8152905163731aed6e916004808201926020929091908290030181865afa1580156101a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101cc9190610406565b6001600160a01b0390811660208301528151604051635b69006f60e11b81527fa9214cc96615e0085d3bb077758db69497dc2dce3b2b1e97bc93c3d18d83efd3600482015291169063b6d200de90602401602060405180830381865afa15801561023a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061025e9190610406565b6001600160a01b0390811660408381019190915282519051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a674600482015291169063b6d200de90602401602060405180830381865afa1580156102cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f39190610406565b6001600160a01b0316606082015292915050565b6000806020838503121561031a57600080fd5b823567ffffffffffffffff8082111561033257600080fd5b818501915085601f83011261034657600080fd5b81358181111561035557600080fd5b86602082850101111561036757600080fd5b60209290920196919550909350505050565b6a29bab832b933363ab4b21760a91b81528183600b83013760009101600b01908152919050565b600060208083528351808285015260005b818110156103cd578581018301518582016040015282016103b1565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461040357600080fd5b50565b60006020828403121561041857600080fd5b8151610423816103ee565b939250505056fea26469706673582212200a03789e2dbb32264df5ae643bf7203c3309902e7ae80dd4ca47e3249a1bfd0c64736f6c63430008130033",
59
59
  "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f490e2f014610030575b600080fd5b61004361003e366004610307565b61008f565b604051610086919081516001600160a01b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b60405180910390f35b6040805160808101825260008082526020820181905291810182905260608101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663693ec85e84846040516020016100f5929190610379565b6040516020818303038152906040526040518263ffffffff1660e01b815260040161012091906103a0565b602060405180830381865afa15801561013d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101619190610406565b6001600160a01b03168082526040805163398d76b760e11b8152905163731aed6e916004808201926020929091908290030181865afa1580156101a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101cc9190610406565b6001600160a01b0390811660208301528151604051635b69006f60e11b81527fa9214cc96615e0085d3bb077758db69497dc2dce3b2b1e97bc93c3d18d83efd3600482015291169063b6d200de90602401602060405180830381865afa15801561023a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061025e9190610406565b6001600160a01b0390811660408381019190915282519051635b69006f60e11b81527f8aedc3b5d4bf031e11a7e2940f7251c005698405d58e02e1c247fed3b1b3a674600482015291169063b6d200de90602401602060405180830381865afa1580156102cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f39190610406565b6001600160a01b0316606082015292915050565b6000806020838503121561031a57600080fd5b823567ffffffffffffffff8082111561033257600080fd5b818501915085601f83011261034657600080fd5b81358181111561035557600080fd5b86602082850101111561036757600080fd5b60209290920196919550909350505050565b6a29bab832b933363ab4b21760a91b81528183600b83013760009101600b01908152919050565b600060208083528351808285015260005b818110156103cd578581018301518582016040015282016103b1565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461040357600080fd5b50565b60006020828403121561041857600080fd5b8151610423816103ee565b939250505056fea26469706673582212200a03789e2dbb32264df5ae643bf7203c3309902e7ae80dd4ca47e3249a1bfd0c64736f6c63430008130033",
60
60
  "immutableReferences": {
61
- "51029": [
61
+ "51040": [
62
62
  {
63
63
  "length": 32,
64
64
  "start": 181
@@ -330,7 +330,7 @@
330
330
  }
331
331
  ]
332
332
  },
333
- "name": "abi_decode_tuple_t_contract$_IResolver_$25596_fromMemory",
333
+ "name": "abi_decode_tuple_t_contract$_IResolver_$25607_fromMemory",
334
334
  "nodeType": "YulFunctionDefinition",
335
335
  "parameters": [
336
336
  {
@@ -358,7 +358,7 @@
358
358
  }
359
359
  ]
360
360
  },
361
- "contents": "{\n { }\n function abi_decode_tuple_t_contract$_IResolver_$25596_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n}",
361
+ "contents": "{\n { }\n function abi_decode_tuple_t_contract$_IResolver_$25607_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n value0 := value\n }\n}",
362
362
  "id": 124,
363
363
  "language": "Yul",
364
364
  "name": "#utility.yul"
@@ -1365,7 +1365,7 @@
1365
1365
  }
1366
1366
  ]
1367
1367
  },
1368
- "name": "abi_encode_tuple_t_struct$_Framework_$51042_memory_ptr__to_t_struct$_Framework_$51042_memory_ptr__fromStack_reversed",
1368
+ "name": "abi_encode_tuple_t_struct$_Framework_$51053_memory_ptr__to_t_struct$_Framework_$51053_memory_ptr__fromStack_reversed",
1369
1369
  "nodeType": "YulFunctionDefinition",
1370
1370
  "parameters": [
1371
1371
  {
@@ -2567,7 +2567,7 @@
2567
2567
  }
2568
2568
  ]
2569
2569
  },
2570
- "name": "abi_decode_tuple_t_contract$_ISuperTokenFactory_$24513_fromMemory",
2570
+ "name": "abi_decode_tuple_t_contract$_ISuperTokenFactory_$24524_fromMemory",
2571
2571
  "nodeType": "YulFunctionDefinition",
2572
2572
  "parameters": [
2573
2573
  {
@@ -2834,7 +2834,7 @@
2834
2834
  }
2835
2835
  ]
2836
2836
  },
2837
- "name": "abi_decode_tuple_t_contract$_ISuperAgreement_$23795_fromMemory",
2837
+ "name": "abi_decode_tuple_t_contract$_ISuperAgreement_$23806_fromMemory",
2838
2838
  "nodeType": "YulFunctionDefinition",
2839
2839
  "parameters": [
2840
2840
  {
@@ -2862,7 +2862,7 @@
2862
2862
  }
2863
2863
  ]
2864
2864
  },
2865
- "contents": "{\n { }\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let length := calldataload(_2)\n if gt(length, _1) { revert(0, 0) }\n if gt(add(add(_2, length), 32), dataEnd) { revert(0, 0) }\n value0 := add(_2, 32)\n value1 := length\n }\n function abi_encode_tuple_t_struct$_Framework_$51042_memory_ptr__to_t_struct$_Framework_$51042_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 128)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(mload(value0), _1))\n mstore(add(headStart, 0x20), and(mload(add(value0, 0x20)), _1))\n mstore(add(headStart, 0x40), and(mload(add(value0, 0x40)), _1))\n mstore(add(headStart, 0x60), and(mload(add(value0, 0x60)), _1))\n }\n function abi_encode_tuple_packed_t_stringliteral_ccf6210afbd487f8aa94c84f25b982d4a329b89ca8db9ab89edc2e3792dd405e_t_string_calldata_ptr__to_t_bytes11_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \"Superfluid.\")\n calldatacopy(add(pos, 11), value0, value1)\n let _1 := add(add(pos, value1), 11)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let length := mload(value0)\n mstore(add(headStart, _1), length)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(headStart, i), 64), mload(add(add(value0, i), _1)))\n }\n mstore(add(add(headStart, length), 64), 0)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_decode_tuple_t_contract$_ISuperTokenFactory_$24513_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_contract$_ISuperAgreement_$23795_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n}",
2865
+ "contents": "{\n { }\n function abi_decode_tuple_t_string_calldata_ptr(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let offset := calldataload(headStart)\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n let _2 := add(headStart, offset)\n if iszero(slt(add(_2, 0x1f), dataEnd)) { revert(0, 0) }\n let length := calldataload(_2)\n if gt(length, _1) { revert(0, 0) }\n if gt(add(add(_2, length), 32), dataEnd) { revert(0, 0) }\n value0 := add(_2, 32)\n value1 := length\n }\n function abi_encode_tuple_t_struct$_Framework_$51053_memory_ptr__to_t_struct$_Framework_$51053_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 128)\n let _1 := sub(shl(160, 1), 1)\n mstore(headStart, and(mload(value0), _1))\n mstore(add(headStart, 0x20), and(mload(add(value0, 0x20)), _1))\n mstore(add(headStart, 0x40), and(mload(add(value0, 0x40)), _1))\n mstore(add(headStart, 0x60), and(mload(add(value0, 0x60)), _1))\n }\n function abi_encode_tuple_packed_t_stringliteral_ccf6210afbd487f8aa94c84f25b982d4a329b89ca8db9ab89edc2e3792dd405e_t_string_calldata_ptr__to_t_bytes11_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos, value1, value0) -> end\n {\n mstore(pos, \"Superfluid.\")\n calldatacopy(add(pos, 11), value0, value1)\n let _1 := add(add(pos, value1), 11)\n mstore(_1, 0)\n end := _1\n }\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n mstore(headStart, _1)\n let length := mload(value0)\n mstore(add(headStart, _1), length)\n let i := 0\n for { } lt(i, length) { i := add(i, _1) }\n {\n mstore(add(add(headStart, i), 64), mload(add(add(value0, i), _1)))\n }\n mstore(add(add(headStart, length), 64), 0)\n tail := add(add(headStart, and(add(length, 31), not(31))), 64)\n }\n function validator_revert_address(value)\n {\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_address_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_decode_tuple_t_contract$_ISuperTokenFactory_$24524_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_decode_tuple_t_contract$_ISuperAgreement_$23806_fromMemory(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n let value := mload(headStart)\n validator_revert_address(value)\n value0 := value\n }\n}",
2866
2866
  "id": 124,
2867
2867
  "language": "Yul",
2868
2868
  "name": "#utility.yul"
@@ -2876,27 +2876,27 @@
2876
2876
  "absolutePath": "project:/contracts/utils/SuperfluidLoader.sol",
2877
2877
  "exportedSymbols": {
2878
2878
  "IResolver": [
2879
- 25596
2879
+ 25607
2880
2880
  ],
2881
2881
  "ISuperAgreement": [
2882
- 23795
2882
+ 23806
2883
2883
  ],
2884
2884
  "ISuperTokenFactory": [
2885
- 24513
2885
+ 24524
2886
2886
  ],
2887
2887
  "ISuperfluid": [
2888
- 25037
2888
+ 25048
2889
2889
  ],
2890
2890
  "SuperfluidLoader": [
2891
- 51113
2891
+ 51124
2892
2892
  ]
2893
2893
  },
2894
- "id": 51114,
2894
+ "id": 51125,
2895
2895
  "license": "MIT",
2896
2896
  "nodeType": "SourceUnit",
2897
2897
  "nodes": [
2898
2898
  {
2899
- "id": 51019,
2899
+ "id": 51030,
2900
2900
  "literals": [
2901
2901
  "solidity",
2902
2902
  ">=",
@@ -2909,20 +2909,20 @@
2909
2909
  {
2910
2910
  "absolutePath": "project:/contracts/interfaces/utils/IResolver.sol",
2911
2911
  "file": "../interfaces/utils/IResolver.sol",
2912
- "id": 51021,
2912
+ "id": 51032,
2913
2913
  "nameLocation": "-1:-1:-1",
2914
2914
  "nodeType": "ImportDirective",
2915
- "scope": 51114,
2916
- "sourceUnit": 25597,
2915
+ "scope": 51125,
2916
+ "sourceUnit": 25608,
2917
2917
  "src": "58:62:119",
2918
2918
  "symbolAliases": [
2919
2919
  {
2920
2920
  "foreign": {
2921
- "id": 51020,
2921
+ "id": 51031,
2922
2922
  "name": "IResolver",
2923
2923
  "nodeType": "Identifier",
2924
2924
  "overloadedDeclarations": [],
2925
- "referencedDeclaration": 25596,
2925
+ "referencedDeclaration": 25607,
2926
2926
  "src": "67:9:119",
2927
2927
  "typeDescriptions": {}
2928
2928
  },
@@ -2934,20 +2934,20 @@
2934
2934
  {
2935
2935
  "absolutePath": "project:/contracts/interfaces/superfluid/ISuperfluid.sol",
2936
2936
  "file": "../interfaces/superfluid/ISuperfluid.sol",
2937
- "id": 51025,
2937
+ "id": 51036,
2938
2938
  "nameLocation": "-1:-1:-1",
2939
2939
  "nodeType": "ImportDirective",
2940
- "scope": 51114,
2941
- "sourceUnit": 25038,
2940
+ "scope": 51125,
2941
+ "sourceUnit": 25049,
2942
2942
  "src": "121:120:119",
2943
2943
  "symbolAliases": [
2944
2944
  {
2945
2945
  "foreign": {
2946
- "id": 51022,
2946
+ "id": 51033,
2947
2947
  "name": "ISuperfluid",
2948
2948
  "nodeType": "Identifier",
2949
2949
  "overloadedDeclarations": [],
2950
- "referencedDeclaration": 25037,
2950
+ "referencedDeclaration": 25048,
2951
2951
  "src": "134:11:119",
2952
2952
  "typeDescriptions": {}
2953
2953
  },
@@ -2955,11 +2955,11 @@
2955
2955
  },
2956
2956
  {
2957
2957
  "foreign": {
2958
- "id": 51023,
2958
+ "id": 51034,
2959
2959
  "name": "ISuperTokenFactory",
2960
2960
  "nodeType": "Identifier",
2961
2961
  "overloadedDeclarations": [],
2962
- "referencedDeclaration": 24513,
2962
+ "referencedDeclaration": 24524,
2963
2963
  "src": "151:18:119",
2964
2964
  "typeDescriptions": {}
2965
2965
  },
@@ -2967,11 +2967,11 @@
2967
2967
  },
2968
2968
  {
2969
2969
  "foreign": {
2970
- "id": 51024,
2970
+ "id": 51035,
2971
2971
  "name": "ISuperAgreement",
2972
2972
  "nodeType": "Identifier",
2973
2973
  "overloadedDeclarations": [],
2974
- "referencedDeclaration": 23795,
2974
+ "referencedDeclaration": 23806,
2975
2975
  "src": "175:15:119",
2976
2976
  "typeDescriptions": {}
2977
2977
  },
@@ -2987,15 +2987,15 @@
2987
2987
  "contractDependencies": [],
2988
2988
  "contractKind": "contract",
2989
2989
  "documentation": {
2990
- "id": 51026,
2990
+ "id": 51037,
2991
2991
  "nodeType": "StructuredDocumentation",
2992
2992
  "src": "243:334:119",
2993
2993
  "text": " @title Superfluid loader contract\n @author Superfluid\n @dev A on-chain utility contract for loading framework objects in one view function.\n NOTE:\n Q: Why don't we just use https://www.npmjs.com/package/ethereum-multicall?\n A: Well, no strong reason other than also allowing on-chain one view function loading."
2994
2994
  },
2995
2995
  "fullyImplemented": true,
2996
- "id": 51113,
2996
+ "id": 51124,
2997
2997
  "linearizedBaseContracts": [
2998
- 51113
2998
+ 51124
2999
2999
  ],
3000
3000
  "name": "SuperfluidLoader",
3001
3001
  "nameLocation": "587:16:119",
@@ -3003,36 +3003,36 @@
3003
3003
  "nodes": [
3004
3004
  {
3005
3005
  "constant": false,
3006
- "id": 51029,
3006
+ "id": 51040,
3007
3007
  "mutability": "immutable",
3008
3008
  "name": "_resolver",
3009
3009
  "nameLocation": "639:9:119",
3010
3010
  "nodeType": "VariableDeclaration",
3011
- "scope": 51113,
3011
+ "scope": 51124,
3012
3012
  "src": "611:37:119",
3013
3013
  "stateVariable": true,
3014
3014
  "storageLocation": "default",
3015
3015
  "typeDescriptions": {
3016
- "typeIdentifier": "t_contract$_IResolver_$25596",
3016
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3017
3017
  "typeString": "contract IResolver"
3018
3018
  },
3019
3019
  "typeName": {
3020
- "id": 51028,
3020
+ "id": 51039,
3021
3021
  "nodeType": "UserDefinedTypeName",
3022
3022
  "pathNode": {
3023
- "id": 51027,
3023
+ "id": 51038,
3024
3024
  "name": "IResolver",
3025
3025
  "nameLocations": [
3026
3026
  "611:9:119"
3027
3027
  ],
3028
3028
  "nodeType": "IdentifierPath",
3029
- "referencedDeclaration": 25596,
3029
+ "referencedDeclaration": 25607,
3030
3030
  "src": "611:9:119"
3031
3031
  },
3032
- "referencedDeclaration": 25596,
3032
+ "referencedDeclaration": 25607,
3033
3033
  "src": "611:9:119",
3034
3034
  "typeDescriptions": {
3035
- "typeIdentifier": "t_contract$_IResolver_$25596",
3035
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3036
3036
  "typeString": "contract IResolver"
3037
3037
  }
3038
3038
  },
@@ -3040,40 +3040,40 @@
3040
3040
  },
3041
3041
  {
3042
3042
  "canonicalName": "SuperfluidLoader.Framework",
3043
- "id": 51042,
3043
+ "id": 51053,
3044
3044
  "members": [
3045
3045
  {
3046
3046
  "constant": false,
3047
- "id": 51032,
3047
+ "id": 51043,
3048
3048
  "mutability": "mutable",
3049
3049
  "name": "superfluid",
3050
3050
  "nameLocation": "694:10:119",
3051
3051
  "nodeType": "VariableDeclaration",
3052
- "scope": 51042,
3052
+ "scope": 51053,
3053
3053
  "src": "682:22:119",
3054
3054
  "stateVariable": false,
3055
3055
  "storageLocation": "default",
3056
3056
  "typeDescriptions": {
3057
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3057
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3058
3058
  "typeString": "contract ISuperfluid"
3059
3059
  },
3060
3060
  "typeName": {
3061
- "id": 51031,
3061
+ "id": 51042,
3062
3062
  "nodeType": "UserDefinedTypeName",
3063
3063
  "pathNode": {
3064
- "id": 51030,
3064
+ "id": 51041,
3065
3065
  "name": "ISuperfluid",
3066
3066
  "nameLocations": [
3067
3067
  "682:11:119"
3068
3068
  ],
3069
3069
  "nodeType": "IdentifierPath",
3070
- "referencedDeclaration": 25037,
3070
+ "referencedDeclaration": 25048,
3071
3071
  "src": "682:11:119"
3072
3072
  },
3073
- "referencedDeclaration": 25037,
3073
+ "referencedDeclaration": 25048,
3074
3074
  "src": "682:11:119",
3075
3075
  "typeDescriptions": {
3076
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3076
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3077
3077
  "typeString": "contract ISuperfluid"
3078
3078
  }
3079
3079
  },
@@ -3081,36 +3081,36 @@
3081
3081
  },
3082
3082
  {
3083
3083
  "constant": false,
3084
- "id": 51035,
3084
+ "id": 51046,
3085
3085
  "mutability": "mutable",
3086
3086
  "name": "superTokenFactory",
3087
3087
  "nameLocation": "733:17:119",
3088
3088
  "nodeType": "VariableDeclaration",
3089
- "scope": 51042,
3089
+ "scope": 51053,
3090
3090
  "src": "714:36:119",
3091
3091
  "stateVariable": false,
3092
3092
  "storageLocation": "default",
3093
3093
  "typeDescriptions": {
3094
- "typeIdentifier": "t_contract$_ISuperTokenFactory_$24513",
3094
+ "typeIdentifier": "t_contract$_ISuperTokenFactory_$24524",
3095
3095
  "typeString": "contract ISuperTokenFactory"
3096
3096
  },
3097
3097
  "typeName": {
3098
- "id": 51034,
3098
+ "id": 51045,
3099
3099
  "nodeType": "UserDefinedTypeName",
3100
3100
  "pathNode": {
3101
- "id": 51033,
3101
+ "id": 51044,
3102
3102
  "name": "ISuperTokenFactory",
3103
3103
  "nameLocations": [
3104
3104
  "714:18:119"
3105
3105
  ],
3106
3106
  "nodeType": "IdentifierPath",
3107
- "referencedDeclaration": 24513,
3107
+ "referencedDeclaration": 24524,
3108
3108
  "src": "714:18:119"
3109
3109
  },
3110
- "referencedDeclaration": 24513,
3110
+ "referencedDeclaration": 24524,
3111
3111
  "src": "714:18:119",
3112
3112
  "typeDescriptions": {
3113
- "typeIdentifier": "t_contract$_ISuperTokenFactory_$24513",
3113
+ "typeIdentifier": "t_contract$_ISuperTokenFactory_$24524",
3114
3114
  "typeString": "contract ISuperTokenFactory"
3115
3115
  }
3116
3116
  },
@@ -3118,36 +3118,36 @@
3118
3118
  },
3119
3119
  {
3120
3120
  "constant": false,
3121
- "id": 51038,
3121
+ "id": 51049,
3122
3122
  "mutability": "mutable",
3123
3123
  "name": "agreementCFAv1",
3124
3124
  "nameLocation": "776:14:119",
3125
3125
  "nodeType": "VariableDeclaration",
3126
- "scope": 51042,
3126
+ "scope": 51053,
3127
3127
  "src": "760:30:119",
3128
3128
  "stateVariable": false,
3129
3129
  "storageLocation": "default",
3130
3130
  "typeDescriptions": {
3131
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3131
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3132
3132
  "typeString": "contract ISuperAgreement"
3133
3133
  },
3134
3134
  "typeName": {
3135
- "id": 51037,
3135
+ "id": 51048,
3136
3136
  "nodeType": "UserDefinedTypeName",
3137
3137
  "pathNode": {
3138
- "id": 51036,
3138
+ "id": 51047,
3139
3139
  "name": "ISuperAgreement",
3140
3140
  "nameLocations": [
3141
3141
  "760:15:119"
3142
3142
  ],
3143
3143
  "nodeType": "IdentifierPath",
3144
- "referencedDeclaration": 23795,
3144
+ "referencedDeclaration": 23806,
3145
3145
  "src": "760:15:119"
3146
3146
  },
3147
- "referencedDeclaration": 23795,
3147
+ "referencedDeclaration": 23806,
3148
3148
  "src": "760:15:119",
3149
3149
  "typeDescriptions": {
3150
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3150
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3151
3151
  "typeString": "contract ISuperAgreement"
3152
3152
  }
3153
3153
  },
@@ -3155,36 +3155,36 @@
3155
3155
  },
3156
3156
  {
3157
3157
  "constant": false,
3158
- "id": 51041,
3158
+ "id": 51052,
3159
3159
  "mutability": "mutable",
3160
3160
  "name": "agreementIDAv1",
3161
3161
  "nameLocation": "816:14:119",
3162
3162
  "nodeType": "VariableDeclaration",
3163
- "scope": 51042,
3163
+ "scope": 51053,
3164
3164
  "src": "800:30:119",
3165
3165
  "stateVariable": false,
3166
3166
  "storageLocation": "default",
3167
3167
  "typeDescriptions": {
3168
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3168
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3169
3169
  "typeString": "contract ISuperAgreement"
3170
3170
  },
3171
3171
  "typeName": {
3172
- "id": 51040,
3172
+ "id": 51051,
3173
3173
  "nodeType": "UserDefinedTypeName",
3174
3174
  "pathNode": {
3175
- "id": 51039,
3175
+ "id": 51050,
3176
3176
  "name": "ISuperAgreement",
3177
3177
  "nameLocations": [
3178
3178
  "800:15:119"
3179
3179
  ],
3180
3180
  "nodeType": "IdentifierPath",
3181
- "referencedDeclaration": 23795,
3181
+ "referencedDeclaration": 23806,
3182
3182
  "src": "800:15:119"
3183
3183
  },
3184
- "referencedDeclaration": 23795,
3184
+ "referencedDeclaration": 23806,
3185
3185
  "src": "800:15:119",
3186
3186
  "typeDescriptions": {
3187
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3187
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3188
3188
  "typeString": "contract ISuperAgreement"
3189
3189
  }
3190
3190
  },
@@ -3194,62 +3194,62 @@
3194
3194
  "name": "Framework",
3195
3195
  "nameLocation": "662:9:119",
3196
3196
  "nodeType": "StructDefinition",
3197
- "scope": 51113,
3197
+ "scope": 51124,
3198
3198
  "src": "655:182:119",
3199
3199
  "visibility": "public"
3200
3200
  },
3201
3201
  {
3202
3202
  "body": {
3203
- "id": 51052,
3203
+ "id": 51063,
3204
3204
  "nodeType": "Block",
3205
3205
  "src": "875:37:119",
3206
3206
  "statements": [
3207
3207
  {
3208
3208
  "expression": {
3209
- "id": 51050,
3209
+ "id": 51061,
3210
3210
  "isConstant": false,
3211
3211
  "isLValue": false,
3212
3212
  "isPure": false,
3213
3213
  "lValueRequested": false,
3214
3214
  "leftHandSide": {
3215
- "id": 51048,
3215
+ "id": 51059,
3216
3216
  "name": "_resolver",
3217
3217
  "nodeType": "Identifier",
3218
3218
  "overloadedDeclarations": [],
3219
- "referencedDeclaration": 51029,
3219
+ "referencedDeclaration": 51040,
3220
3220
  "src": "885:9:119",
3221
3221
  "typeDescriptions": {
3222
- "typeIdentifier": "t_contract$_IResolver_$25596",
3222
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3223
3223
  "typeString": "contract IResolver"
3224
3224
  }
3225
3225
  },
3226
3226
  "nodeType": "Assignment",
3227
3227
  "operator": "=",
3228
3228
  "rightHandSide": {
3229
- "id": 51049,
3229
+ "id": 51060,
3230
3230
  "name": "resolver",
3231
3231
  "nodeType": "Identifier",
3232
3232
  "overloadedDeclarations": [],
3233
- "referencedDeclaration": 51045,
3233
+ "referencedDeclaration": 51056,
3234
3234
  "src": "897:8:119",
3235
3235
  "typeDescriptions": {
3236
- "typeIdentifier": "t_contract$_IResolver_$25596",
3236
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3237
3237
  "typeString": "contract IResolver"
3238
3238
  }
3239
3239
  },
3240
3240
  "src": "885:20:119",
3241
3241
  "typeDescriptions": {
3242
- "typeIdentifier": "t_contract$_IResolver_$25596",
3242
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3243
3243
  "typeString": "contract IResolver"
3244
3244
  }
3245
3245
  },
3246
- "id": 51051,
3246
+ "id": 51062,
3247
3247
  "nodeType": "ExpressionStatement",
3248
3248
  "src": "885:20:119"
3249
3249
  }
3250
3250
  ]
3251
3251
  },
3252
- "id": 51053,
3252
+ "id": 51064,
3253
3253
  "implemented": true,
3254
3254
  "kind": "constructor",
3255
3255
  "modifiers": [],
@@ -3257,41 +3257,41 @@
3257
3257
  "nameLocation": "-1:-1:-1",
3258
3258
  "nodeType": "FunctionDefinition",
3259
3259
  "parameters": {
3260
- "id": 51046,
3260
+ "id": 51057,
3261
3261
  "nodeType": "ParameterList",
3262
3262
  "parameters": [
3263
3263
  {
3264
3264
  "constant": false,
3265
- "id": 51045,
3265
+ "id": 51056,
3266
3266
  "mutability": "mutable",
3267
3267
  "name": "resolver",
3268
3268
  "nameLocation": "865:8:119",
3269
3269
  "nodeType": "VariableDeclaration",
3270
- "scope": 51053,
3270
+ "scope": 51064,
3271
3271
  "src": "855:18:119",
3272
3272
  "stateVariable": false,
3273
3273
  "storageLocation": "default",
3274
3274
  "typeDescriptions": {
3275
- "typeIdentifier": "t_contract$_IResolver_$25596",
3275
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3276
3276
  "typeString": "contract IResolver"
3277
3277
  },
3278
3278
  "typeName": {
3279
- "id": 51044,
3279
+ "id": 51055,
3280
3280
  "nodeType": "UserDefinedTypeName",
3281
3281
  "pathNode": {
3282
- "id": 51043,
3282
+ "id": 51054,
3283
3283
  "name": "IResolver",
3284
3284
  "nameLocations": [
3285
3285
  "855:9:119"
3286
3286
  ],
3287
3287
  "nodeType": "IdentifierPath",
3288
- "referencedDeclaration": 25596,
3288
+ "referencedDeclaration": 25607,
3289
3289
  "src": "855:9:119"
3290
3290
  },
3291
- "referencedDeclaration": 25596,
3291
+ "referencedDeclaration": 25607,
3292
3292
  "src": "855:9:119",
3293
3293
  "typeDescriptions": {
3294
- "typeIdentifier": "t_contract$_IResolver_$25596",
3294
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3295
3295
  "typeString": "contract IResolver"
3296
3296
  }
3297
3297
  },
@@ -3301,12 +3301,12 @@
3301
3301
  "src": "854:20:119"
3302
3302
  },
3303
3303
  "returnParameters": {
3304
- "id": 51047,
3304
+ "id": 51058,
3305
3305
  "nodeType": "ParameterList",
3306
3306
  "parameters": [],
3307
3307
  "src": "875:0:119"
3308
3308
  },
3309
- "scope": 51113,
3309
+ "scope": 51124,
3310
3310
  "src": "843:69:119",
3311
3311
  "stateMutability": "nonpayable",
3312
3312
  "virtual": false,
@@ -3314,31 +3314,31 @@
3314
3314
  },
3315
3315
  {
3316
3316
  "body": {
3317
- "id": 51111,
3317
+ "id": 51122,
3318
3318
  "nodeType": "Block",
3319
3319
  "src": "1164:584:119",
3320
3320
  "statements": [
3321
3321
  {
3322
3322
  "expression": {
3323
- "id": 51076,
3323
+ "id": 51087,
3324
3324
  "isConstant": false,
3325
3325
  "isLValue": false,
3326
3326
  "isPure": false,
3327
3327
  "lValueRequested": false,
3328
3328
  "leftHandSide": {
3329
3329
  "expression": {
3330
- "id": 51062,
3330
+ "id": 51073,
3331
3331
  "name": "result",
3332
3332
  "nodeType": "Identifier",
3333
3333
  "overloadedDeclarations": [],
3334
- "referencedDeclaration": 51060,
3334
+ "referencedDeclaration": 51071,
3335
3335
  "src": "1215:6:119",
3336
3336
  "typeDescriptions": {
3337
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3337
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3338
3338
  "typeString": "struct SuperfluidLoader.Framework memory"
3339
3339
  }
3340
3340
  },
3341
- "id": 51064,
3341
+ "id": 51075,
3342
3342
  "isConstant": false,
3343
3343
  "isLValue": true,
3344
3344
  "isPure": false,
@@ -3346,10 +3346,10 @@
3346
3346
  "memberLocation": "1222:10:119",
3347
3347
  "memberName": "superfluid",
3348
3348
  "nodeType": "MemberAccess",
3349
- "referencedDeclaration": 51032,
3349
+ "referencedDeclaration": 51043,
3350
3350
  "src": "1215:17:119",
3351
3351
  "typeDescriptions": {
3352
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3352
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3353
3353
  "typeString": "contract ISuperfluid"
3354
3354
  }
3355
3355
  },
@@ -3363,7 +3363,7 @@
3363
3363
  "arguments": [
3364
3364
  {
3365
3365
  "hexValue": "5375706572666c7569642e",
3366
- "id": 51071,
3366
+ "id": 51082,
3367
3367
  "isConstant": false,
3368
3368
  "isLValue": false,
3369
3369
  "isPure": true,
@@ -3378,11 +3378,11 @@
3378
3378
  "value": "Superfluid."
3379
3379
  },
3380
3380
  {
3381
- "id": 51072,
3381
+ "id": 51083,
3382
3382
  "name": "releaseVersion",
3383
3383
  "nodeType": "Identifier",
3384
3384
  "overloadedDeclarations": [],
3385
- "referencedDeclaration": 51056,
3385
+ "referencedDeclaration": 51067,
3386
3386
  "src": "1303:14:119",
3387
3387
  "typeDescriptions": {
3388
3388
  "typeIdentifier": "t_string_calldata_ptr",
@@ -3402,7 +3402,7 @@
3402
3402
  }
3403
3403
  ],
3404
3404
  "expression": {
3405
- "id": 51069,
3405
+ "id": 51080,
3406
3406
  "isConstant": false,
3407
3407
  "isLValue": false,
3408
3408
  "isPure": true,
@@ -3414,14 +3414,14 @@
3414
3414
  "typeString": "type(string storage pointer)"
3415
3415
  },
3416
3416
  "typeName": {
3417
- "id": 51068,
3417
+ "id": 51079,
3418
3418
  "name": "string",
3419
3419
  "nodeType": "ElementaryTypeName",
3420
3420
  "src": "1274:6:119",
3421
3421
  "typeDescriptions": {}
3422
3422
  }
3423
3423
  },
3424
- "id": 51070,
3424
+ "id": 51081,
3425
3425
  "isConstant": false,
3426
3426
  "isLValue": false,
3427
3427
  "isPure": false,
@@ -3435,7 +3435,7 @@
3435
3435
  "typeString": "function () pure returns (string memory)"
3436
3436
  }
3437
3437
  },
3438
- "id": 51073,
3438
+ "id": 51084,
3439
3439
  "isConstant": false,
3440
3440
  "isLValue": false,
3441
3441
  "isPure": false,
@@ -3460,18 +3460,18 @@
3460
3460
  }
3461
3461
  ],
3462
3462
  "expression": {
3463
- "id": 51066,
3463
+ "id": 51077,
3464
3464
  "name": "_resolver",
3465
3465
  "nodeType": "Identifier",
3466
3466
  "overloadedDeclarations": [],
3467
- "referencedDeclaration": 51029,
3467
+ "referencedDeclaration": 51040,
3468
3468
  "src": "1247:9:119",
3469
3469
  "typeDescriptions": {
3470
- "typeIdentifier": "t_contract$_IResolver_$25596",
3470
+ "typeIdentifier": "t_contract$_IResolver_$25607",
3471
3471
  "typeString": "contract IResolver"
3472
3472
  }
3473
3473
  },
3474
- "id": 51067,
3474
+ "id": 51078,
3475
3475
  "isConstant": false,
3476
3476
  "isLValue": false,
3477
3477
  "isPure": false,
@@ -3479,14 +3479,14 @@
3479
3479
  "memberLocation": "1257:3:119",
3480
3480
  "memberName": "get",
3481
3481
  "nodeType": "MemberAccess",
3482
- "referencedDeclaration": 25595,
3482
+ "referencedDeclaration": 25606,
3483
3483
  "src": "1247:13:119",
3484
3484
  "typeDescriptions": {
3485
3485
  "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_address_$",
3486
3486
  "typeString": "function (string memory) view external returns (address)"
3487
3487
  }
3488
3488
  },
3489
- "id": 51074,
3489
+ "id": 51085,
3490
3490
  "isConstant": false,
3491
3491
  "isLValue": false,
3492
3492
  "isPure": false,
@@ -3510,18 +3510,18 @@
3510
3510
  "typeString": "address"
3511
3511
  }
3512
3512
  ],
3513
- "id": 51065,
3513
+ "id": 51076,
3514
3514
  "name": "ISuperfluid",
3515
3515
  "nodeType": "Identifier",
3516
3516
  "overloadedDeclarations": [],
3517
- "referencedDeclaration": 25037,
3517
+ "referencedDeclaration": 25048,
3518
3518
  "src": "1235:11:119",
3519
3519
  "typeDescriptions": {
3520
- "typeIdentifier": "t_type$_t_contract$_ISuperfluid_$25037_$",
3520
+ "typeIdentifier": "t_type$_t_contract$_ISuperfluid_$25048_$",
3521
3521
  "typeString": "type(contract ISuperfluid)"
3522
3522
  }
3523
3523
  },
3524
- "id": 51075,
3524
+ "id": 51086,
3525
3525
  "isConstant": false,
3526
3526
  "isLValue": false,
3527
3527
  "isPure": false,
@@ -3533,41 +3533,41 @@
3533
3533
  "src": "1235:94:119",
3534
3534
  "tryCall": false,
3535
3535
  "typeDescriptions": {
3536
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3536
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3537
3537
  "typeString": "contract ISuperfluid"
3538
3538
  }
3539
3539
  },
3540
3540
  "src": "1215:114:119",
3541
3541
  "typeDescriptions": {
3542
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3542
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3543
3543
  "typeString": "contract ISuperfluid"
3544
3544
  }
3545
3545
  },
3546
- "id": 51077,
3546
+ "id": 51088,
3547
3547
  "nodeType": "ExpressionStatement",
3548
3548
  "src": "1215:114:119"
3549
3549
  },
3550
3550
  {
3551
3551
  "expression": {
3552
- "id": 51085,
3552
+ "id": 51096,
3553
3553
  "isConstant": false,
3554
3554
  "isLValue": false,
3555
3555
  "isPure": false,
3556
3556
  "lValueRequested": false,
3557
3557
  "leftHandSide": {
3558
3558
  "expression": {
3559
- "id": 51078,
3559
+ "id": 51089,
3560
3560
  "name": "result",
3561
3561
  "nodeType": "Identifier",
3562
3562
  "overloadedDeclarations": [],
3563
- "referencedDeclaration": 51060,
3563
+ "referencedDeclaration": 51071,
3564
3564
  "src": "1339:6:119",
3565
3565
  "typeDescriptions": {
3566
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3566
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3567
3567
  "typeString": "struct SuperfluidLoader.Framework memory"
3568
3568
  }
3569
3569
  },
3570
- "id": 51080,
3570
+ "id": 51091,
3571
3571
  "isConstant": false,
3572
3572
  "isLValue": true,
3573
3573
  "isPure": false,
@@ -3575,10 +3575,10 @@
3575
3575
  "memberLocation": "1346:17:119",
3576
3576
  "memberName": "superTokenFactory",
3577
3577
  "nodeType": "MemberAccess",
3578
- "referencedDeclaration": 51035,
3578
+ "referencedDeclaration": 51046,
3579
3579
  "src": "1339:24:119",
3580
3580
  "typeDescriptions": {
3581
- "typeIdentifier": "t_contract$_ISuperTokenFactory_$24513",
3581
+ "typeIdentifier": "t_contract$_ISuperTokenFactory_$24524",
3582
3582
  "typeString": "contract ISuperTokenFactory"
3583
3583
  }
3584
3584
  },
@@ -3590,18 +3590,18 @@
3590
3590
  "argumentTypes": [],
3591
3591
  "expression": {
3592
3592
  "expression": {
3593
- "id": 51081,
3593
+ "id": 51092,
3594
3594
  "name": "result",
3595
3595
  "nodeType": "Identifier",
3596
3596
  "overloadedDeclarations": [],
3597
- "referencedDeclaration": 51060,
3597
+ "referencedDeclaration": 51071,
3598
3598
  "src": "1366:6:119",
3599
3599
  "typeDescriptions": {
3600
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3600
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3601
3601
  "typeString": "struct SuperfluidLoader.Framework memory"
3602
3602
  }
3603
3603
  },
3604
- "id": 51082,
3604
+ "id": 51093,
3605
3605
  "isConstant": false,
3606
3606
  "isLValue": true,
3607
3607
  "isPure": false,
@@ -3609,14 +3609,14 @@
3609
3609
  "memberLocation": "1373:10:119",
3610
3610
  "memberName": "superfluid",
3611
3611
  "nodeType": "MemberAccess",
3612
- "referencedDeclaration": 51032,
3612
+ "referencedDeclaration": 51043,
3613
3613
  "src": "1366:17:119",
3614
3614
  "typeDescriptions": {
3615
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3615
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3616
3616
  "typeString": "contract ISuperfluid"
3617
3617
  }
3618
3618
  },
3619
- "id": 51083,
3619
+ "id": 51094,
3620
3620
  "isConstant": false,
3621
3621
  "isLValue": false,
3622
3622
  "isPure": false,
@@ -3624,14 +3624,14 @@
3624
3624
  "memberLocation": "1384:20:119",
3625
3625
  "memberName": "getSuperTokenFactory",
3626
3626
  "nodeType": "MemberAccess",
3627
- "referencedDeclaration": 24711,
3627
+ "referencedDeclaration": 24722,
3628
3628
  "src": "1366:38:119",
3629
3629
  "typeDescriptions": {
3630
- "typeIdentifier": "t_function_external_view$__$returns$_t_contract$_ISuperTokenFactory_$24513_$",
3630
+ "typeIdentifier": "t_function_external_view$__$returns$_t_contract$_ISuperTokenFactory_$24524_$",
3631
3631
  "typeString": "function () view external returns (contract ISuperTokenFactory)"
3632
3632
  }
3633
3633
  },
3634
- "id": 51084,
3634
+ "id": 51095,
3635
3635
  "isConstant": false,
3636
3636
  "isLValue": false,
3637
3637
  "isPure": false,
@@ -3643,41 +3643,41 @@
3643
3643
  "src": "1366:40:119",
3644
3644
  "tryCall": false,
3645
3645
  "typeDescriptions": {
3646
- "typeIdentifier": "t_contract$_ISuperTokenFactory_$24513",
3646
+ "typeIdentifier": "t_contract$_ISuperTokenFactory_$24524",
3647
3647
  "typeString": "contract ISuperTokenFactory"
3648
3648
  }
3649
3649
  },
3650
3650
  "src": "1339:67:119",
3651
3651
  "typeDescriptions": {
3652
- "typeIdentifier": "t_contract$_ISuperTokenFactory_$24513",
3652
+ "typeIdentifier": "t_contract$_ISuperTokenFactory_$24524",
3653
3653
  "typeString": "contract ISuperTokenFactory"
3654
3654
  }
3655
3655
  },
3656
- "id": 51086,
3656
+ "id": 51097,
3657
3657
  "nodeType": "ExpressionStatement",
3658
3658
  "src": "1339:67:119"
3659
3659
  },
3660
3660
  {
3661
3661
  "expression": {
3662
- "id": 51097,
3662
+ "id": 51108,
3663
3663
  "isConstant": false,
3664
3664
  "isLValue": false,
3665
3665
  "isPure": false,
3666
3666
  "lValueRequested": false,
3667
3667
  "leftHandSide": {
3668
3668
  "expression": {
3669
- "id": 51087,
3669
+ "id": 51098,
3670
3670
  "name": "result",
3671
3671
  "nodeType": "Identifier",
3672
3672
  "overloadedDeclarations": [],
3673
- "referencedDeclaration": 51060,
3673
+ "referencedDeclaration": 51071,
3674
3674
  "src": "1416:6:119",
3675
3675
  "typeDescriptions": {
3676
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3676
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3677
3677
  "typeString": "struct SuperfluidLoader.Framework memory"
3678
3678
  }
3679
3679
  },
3680
- "id": 51089,
3680
+ "id": 51100,
3681
3681
  "isConstant": false,
3682
3682
  "isLValue": true,
3683
3683
  "isPure": false,
@@ -3685,10 +3685,10 @@
3685
3685
  "memberLocation": "1423:14:119",
3686
3686
  "memberName": "agreementCFAv1",
3687
3687
  "nodeType": "MemberAccess",
3688
- "referencedDeclaration": 51038,
3688
+ "referencedDeclaration": 51049,
3689
3689
  "src": "1416:21:119",
3690
3690
  "typeDescriptions": {
3691
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3691
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3692
3692
  "typeString": "contract ISuperAgreement"
3693
3693
  }
3694
3694
  },
@@ -3700,7 +3700,7 @@
3700
3700
  "arguments": [
3701
3701
  {
3702
3702
  "hexValue": "6f72672e7375706572666c7569642d66696e616e63652e61677265656d656e74732e436f6e7374616e74466c6f7741677265656d656e742e7631",
3703
- "id": 51094,
3703
+ "id": 51105,
3704
3704
  "isConstant": false,
3705
3705
  "isLValue": false,
3706
3706
  "isPure": true,
@@ -3722,7 +3722,7 @@
3722
3722
  "typeString": "literal_string \"org.superfluid-finance.agreements.ConstantFlowAgreement.v1\""
3723
3723
  }
3724
3724
  ],
3725
- "id": 51093,
3725
+ "id": 51104,
3726
3726
  "name": "keccak256",
3727
3727
  "nodeType": "Identifier",
3728
3728
  "overloadedDeclarations": [],
@@ -3733,7 +3733,7 @@
3733
3733
  "typeString": "function (bytes memory) pure returns (bytes32)"
3734
3734
  }
3735
3735
  },
3736
- "id": 51095,
3736
+ "id": 51106,
3737
3737
  "isConstant": false,
3738
3738
  "isLValue": false,
3739
3739
  "isPure": true,
@@ -3759,18 +3759,18 @@
3759
3759
  ],
3760
3760
  "expression": {
3761
3761
  "expression": {
3762
- "id": 51090,
3762
+ "id": 51101,
3763
3763
  "name": "result",
3764
3764
  "nodeType": "Identifier",
3765
3765
  "overloadedDeclarations": [],
3766
- "referencedDeclaration": 51060,
3766
+ "referencedDeclaration": 51071,
3767
3767
  "src": "1440:6:119",
3768
3768
  "typeDescriptions": {
3769
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3769
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3770
3770
  "typeString": "struct SuperfluidLoader.Framework memory"
3771
3771
  }
3772
3772
  },
3773
- "id": 51091,
3773
+ "id": 51102,
3774
3774
  "isConstant": false,
3775
3775
  "isLValue": true,
3776
3776
  "isPure": false,
@@ -3778,14 +3778,14 @@
3778
3778
  "memberLocation": "1447:10:119",
3779
3779
  "memberName": "superfluid",
3780
3780
  "nodeType": "MemberAccess",
3781
- "referencedDeclaration": 51032,
3781
+ "referencedDeclaration": 51043,
3782
3782
  "src": "1440:17:119",
3783
3783
  "typeDescriptions": {
3784
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3784
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3785
3785
  "typeString": "contract ISuperfluid"
3786
3786
  }
3787
3787
  },
3788
- "id": 51092,
3788
+ "id": 51103,
3789
3789
  "isConstant": false,
3790
3790
  "isLValue": false,
3791
3791
  "isPure": false,
@@ -3793,14 +3793,14 @@
3793
3793
  "memberLocation": "1458:17:119",
3794
3794
  "memberName": "getAgreementClass",
3795
3795
  "nodeType": "MemberAccess",
3796
- "referencedDeclaration": 24674,
3796
+ "referencedDeclaration": 24685,
3797
3797
  "src": "1440:35:119",
3798
3798
  "typeDescriptions": {
3799
- "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_contract$_ISuperAgreement_$23795_$",
3799
+ "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_contract$_ISuperAgreement_$23806_$",
3800
3800
  "typeString": "function (bytes32) view external returns (contract ISuperAgreement)"
3801
3801
  }
3802
3802
  },
3803
- "id": 51096,
3803
+ "id": 51107,
3804
3804
  "isConstant": false,
3805
3805
  "isLValue": false,
3806
3806
  "isPure": false,
@@ -3812,41 +3812,41 @@
3812
3812
  "src": "1440:130:119",
3813
3813
  "tryCall": false,
3814
3814
  "typeDescriptions": {
3815
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3815
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3816
3816
  "typeString": "contract ISuperAgreement"
3817
3817
  }
3818
3818
  },
3819
3819
  "src": "1416:154:119",
3820
3820
  "typeDescriptions": {
3821
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3821
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3822
3822
  "typeString": "contract ISuperAgreement"
3823
3823
  }
3824
3824
  },
3825
- "id": 51098,
3825
+ "id": 51109,
3826
3826
  "nodeType": "ExpressionStatement",
3827
3827
  "src": "1416:154:119"
3828
3828
  },
3829
3829
  {
3830
3830
  "expression": {
3831
- "id": 51109,
3831
+ "id": 51120,
3832
3832
  "isConstant": false,
3833
3833
  "isLValue": false,
3834
3834
  "isPure": false,
3835
3835
  "lValueRequested": false,
3836
3836
  "leftHandSide": {
3837
3837
  "expression": {
3838
- "id": 51099,
3838
+ "id": 51110,
3839
3839
  "name": "result",
3840
3840
  "nodeType": "Identifier",
3841
3841
  "overloadedDeclarations": [],
3842
- "referencedDeclaration": 51060,
3842
+ "referencedDeclaration": 51071,
3843
3843
  "src": "1580:6:119",
3844
3844
  "typeDescriptions": {
3845
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3845
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3846
3846
  "typeString": "struct SuperfluidLoader.Framework memory"
3847
3847
  }
3848
3848
  },
3849
- "id": 51101,
3849
+ "id": 51112,
3850
3850
  "isConstant": false,
3851
3851
  "isLValue": true,
3852
3852
  "isPure": false,
@@ -3854,10 +3854,10 @@
3854
3854
  "memberLocation": "1587:14:119",
3855
3855
  "memberName": "agreementIDAv1",
3856
3856
  "nodeType": "MemberAccess",
3857
- "referencedDeclaration": 51041,
3857
+ "referencedDeclaration": 51052,
3858
3858
  "src": "1580:21:119",
3859
3859
  "typeDescriptions": {
3860
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3860
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3861
3861
  "typeString": "contract ISuperAgreement"
3862
3862
  }
3863
3863
  },
@@ -3869,7 +3869,7 @@
3869
3869
  "arguments": [
3870
3870
  {
3871
3871
  "hexValue": "6f72672e7375706572666c7569642d66696e616e63652e61677265656d656e74732e496e7374616e74446973747269627574696f6e41677265656d656e742e7631",
3872
- "id": 51106,
3872
+ "id": 51117,
3873
3873
  "isConstant": false,
3874
3874
  "isLValue": false,
3875
3875
  "isPure": true,
@@ -3891,7 +3891,7 @@
3891
3891
  "typeString": "literal_string \"org.superfluid-finance.agreements.InstantDistributionAgreement.v1\""
3892
3892
  }
3893
3893
  ],
3894
- "id": 51105,
3894
+ "id": 51116,
3895
3895
  "name": "keccak256",
3896
3896
  "nodeType": "Identifier",
3897
3897
  "overloadedDeclarations": [],
@@ -3902,7 +3902,7 @@
3902
3902
  "typeString": "function (bytes memory) pure returns (bytes32)"
3903
3903
  }
3904
3904
  },
3905
- "id": 51107,
3905
+ "id": 51118,
3906
3906
  "isConstant": false,
3907
3907
  "isLValue": false,
3908
3908
  "isPure": true,
@@ -3928,18 +3928,18 @@
3928
3928
  ],
3929
3929
  "expression": {
3930
3930
  "expression": {
3931
- "id": 51102,
3931
+ "id": 51113,
3932
3932
  "name": "result",
3933
3933
  "nodeType": "Identifier",
3934
3934
  "overloadedDeclarations": [],
3935
- "referencedDeclaration": 51060,
3935
+ "referencedDeclaration": 51071,
3936
3936
  "src": "1604:6:119",
3937
3937
  "typeDescriptions": {
3938
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
3938
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
3939
3939
  "typeString": "struct SuperfluidLoader.Framework memory"
3940
3940
  }
3941
3941
  },
3942
- "id": 51103,
3942
+ "id": 51114,
3943
3943
  "isConstant": false,
3944
3944
  "isLValue": true,
3945
3945
  "isPure": false,
@@ -3947,14 +3947,14 @@
3947
3947
  "memberLocation": "1611:10:119",
3948
3948
  "memberName": "superfluid",
3949
3949
  "nodeType": "MemberAccess",
3950
- "referencedDeclaration": 51032,
3950
+ "referencedDeclaration": 51043,
3951
3951
  "src": "1604:17:119",
3952
3952
  "typeDescriptions": {
3953
- "typeIdentifier": "t_contract$_ISuperfluid_$25037",
3953
+ "typeIdentifier": "t_contract$_ISuperfluid_$25048",
3954
3954
  "typeString": "contract ISuperfluid"
3955
3955
  }
3956
3956
  },
3957
- "id": 51104,
3957
+ "id": 51115,
3958
3958
  "isConstant": false,
3959
3959
  "isLValue": false,
3960
3960
  "isPure": false,
@@ -3962,14 +3962,14 @@
3962
3962
  "memberLocation": "1622:17:119",
3963
3963
  "memberName": "getAgreementClass",
3964
3964
  "nodeType": "MemberAccess",
3965
- "referencedDeclaration": 24674,
3965
+ "referencedDeclaration": 24685,
3966
3966
  "src": "1604:35:119",
3967
3967
  "typeDescriptions": {
3968
- "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_contract$_ISuperAgreement_$23795_$",
3968
+ "typeIdentifier": "t_function_external_view$_t_bytes32_$returns$_t_contract$_ISuperAgreement_$23806_$",
3969
3969
  "typeString": "function (bytes32) view external returns (contract ISuperAgreement)"
3970
3970
  }
3971
3971
  },
3972
- "id": 51108,
3972
+ "id": 51119,
3973
3973
  "isConstant": false,
3974
3974
  "isLValue": false,
3975
3975
  "isPure": false,
@@ -3981,30 +3981,30 @@
3981
3981
  "src": "1604:137:119",
3982
3982
  "tryCall": false,
3983
3983
  "typeDescriptions": {
3984
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3984
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3985
3985
  "typeString": "contract ISuperAgreement"
3986
3986
  }
3987
3987
  },
3988
3988
  "src": "1580:161:119",
3989
3989
  "typeDescriptions": {
3990
- "typeIdentifier": "t_contract$_ISuperAgreement_$23795",
3990
+ "typeIdentifier": "t_contract$_ISuperAgreement_$23806",
3991
3991
  "typeString": "contract ISuperAgreement"
3992
3992
  }
3993
3993
  },
3994
- "id": 51110,
3994
+ "id": 51121,
3995
3995
  "nodeType": "ExpressionStatement",
3996
3996
  "src": "1580:161:119"
3997
3997
  }
3998
3998
  ]
3999
3999
  },
4000
4000
  "documentation": {
4001
- "id": 51054,
4001
+ "id": 51065,
4002
4002
  "nodeType": "StructuredDocumentation",
4003
4003
  "src": "918:118:119",
4004
4004
  "text": " @dev Load framework objects\n @param releaseVersion Protocol release version of the deployment"
4005
4005
  },
4006
4006
  "functionSelector": "f490e2f0",
4007
- "id": 51112,
4007
+ "id": 51123,
4008
4008
  "implemented": true,
4009
4009
  "kind": "function",
4010
4010
  "modifiers": [],
@@ -4012,17 +4012,17 @@
4012
4012
  "nameLocation": "1050:13:119",
4013
4013
  "nodeType": "FunctionDefinition",
4014
4014
  "parameters": {
4015
- "id": 51057,
4015
+ "id": 51068,
4016
4016
  "nodeType": "ParameterList",
4017
4017
  "parameters": [
4018
4018
  {
4019
4019
  "constant": false,
4020
- "id": 51056,
4020
+ "id": 51067,
4021
4021
  "mutability": "mutable",
4022
4022
  "name": "releaseVersion",
4023
4023
  "nameLocation": "1080:14:119",
4024
4024
  "nodeType": "VariableDeclaration",
4025
- "scope": 51112,
4025
+ "scope": 51123,
4026
4026
  "src": "1064:30:119",
4027
4027
  "stateVariable": false,
4028
4028
  "storageLocation": "calldata",
@@ -4031,7 +4031,7 @@
4031
4031
  "typeString": "string"
4032
4032
  },
4033
4033
  "typeName": {
4034
- "id": 51055,
4034
+ "id": 51066,
4035
4035
  "name": "string",
4036
4036
  "nodeType": "ElementaryTypeName",
4037
4037
  "src": "1064:6:119",
@@ -4046,41 +4046,41 @@
4046
4046
  "src": "1063:32:119"
4047
4047
  },
4048
4048
  "returnParameters": {
4049
- "id": 51061,
4049
+ "id": 51072,
4050
4050
  "nodeType": "ParameterList",
4051
4051
  "parameters": [
4052
4052
  {
4053
4053
  "constant": false,
4054
- "id": 51060,
4054
+ "id": 51071,
4055
4055
  "mutability": "mutable",
4056
4056
  "name": "result",
4057
4057
  "nameLocation": "1152:6:119",
4058
4058
  "nodeType": "VariableDeclaration",
4059
- "scope": 51112,
4059
+ "scope": 51123,
4060
4060
  "src": "1135:23:119",
4061
4061
  "stateVariable": false,
4062
4062
  "storageLocation": "memory",
4063
4063
  "typeDescriptions": {
4064
- "typeIdentifier": "t_struct$_Framework_$51042_memory_ptr",
4064
+ "typeIdentifier": "t_struct$_Framework_$51053_memory_ptr",
4065
4065
  "typeString": "struct SuperfluidLoader.Framework"
4066
4066
  },
4067
4067
  "typeName": {
4068
- "id": 51059,
4068
+ "id": 51070,
4069
4069
  "nodeType": "UserDefinedTypeName",
4070
4070
  "pathNode": {
4071
- "id": 51058,
4071
+ "id": 51069,
4072
4072
  "name": "Framework",
4073
4073
  "nameLocations": [
4074
4074
  "1135:9:119"
4075
4075
  ],
4076
4076
  "nodeType": "IdentifierPath",
4077
- "referencedDeclaration": 51042,
4077
+ "referencedDeclaration": 51053,
4078
4078
  "src": "1135:9:119"
4079
4079
  },
4080
- "referencedDeclaration": 51042,
4080
+ "referencedDeclaration": 51053,
4081
4081
  "src": "1135:9:119",
4082
4082
  "typeDescriptions": {
4083
- "typeIdentifier": "t_struct$_Framework_$51042_storage_ptr",
4083
+ "typeIdentifier": "t_struct$_Framework_$51053_storage_ptr",
4084
4084
  "typeString": "struct SuperfluidLoader.Framework"
4085
4085
  }
4086
4086
  },
@@ -4089,14 +4089,14 @@
4089
4089
  ],
4090
4090
  "src": "1134:25:119"
4091
4091
  },
4092
- "scope": 51113,
4092
+ "scope": 51124,
4093
4093
  "src": "1041:707:119",
4094
4094
  "stateMutability": "view",
4095
4095
  "virtual": false,
4096
4096
  "visibility": "external"
4097
4097
  }
4098
4098
  ],
4099
- "scope": 51114,
4099
+ "scope": 51125,
4100
4100
  "src": "578:1172:119",
4101
4101
  "usedErrors": []
4102
4102
  }
@@ -4109,7 +4109,7 @@
4109
4109
  },
4110
4110
  "networks": {},
4111
4111
  "schemaVersion": "3.4.13",
4112
- "updatedAt": "2023-06-28T11:03:19.588Z",
4112
+ "updatedAt": "2023-07-07T14:28:49.475Z",
4113
4113
  "devdoc": {
4114
4114
  "author": "Superfluid",
4115
4115
  "details": "A on-chain utility contract for loading framework objects in one view function. NOTE: Q: Why don't we just use https://www.npmjs.com/package/ethereum-multicall? A: Well, no strong reason other than also allowing on-chain one view function loading.",