impermax-sdk 1.0.1 → 1.0.2

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 (209) hide show
  1. package/lib/esm/abis/ImpermaxABI.d.ts +2 -0
  2. package/lib/esm/abis/ImpermaxABI.js +3 -0
  3. package/lib/esm/abis/contracts/ClaimAggregator.json +2015 -0
  4. package/lib/esm/abis/contracts/IBorrowable.json +13207 -0
  5. package/lib/esm/abis/contracts/IClaimable.json +406 -0
  6. package/lib/esm/abis/contracts/ICollateral.json +8952 -0
  7. package/lib/esm/abis/contracts/IERC20.json +2376 -0
  8. package/lib/esm/abis/contracts/IFactory.json +3660 -0
  9. package/lib/esm/abis/contracts/IFarmingPool.json +3584 -0
  10. package/lib/esm/abis/contracts/IMerkleDistributor.json +1134 -0
  11. package/lib/esm/abis/contracts/IRouter02.json +7283 -0
  12. package/lib/esm/abis/contracts/ISimpleUniswapOracle.json +1469 -0
  13. package/lib/esm/abis/contracts/IStakedLPToken.json +7309 -0
  14. package/lib/esm/abis/contracts/IStakingRewards.json +1036 -0
  15. package/lib/esm/abis/contracts/IUniswapV2Factory.json +1690 -0
  16. package/lib/esm/abis/contracts/IUniswapV2Pair.json +6761 -0
  17. package/lib/esm/abis/contracts/ImpermaxChef.json +20945 -0
  18. package/lib/esm/config/amms.d.ts +25 -0
  19. package/lib/esm/config/amms.js +196 -0
  20. package/lib/esm/config/contracts/claim-aggregators.d.ts +2 -0
  21. package/lib/esm/config/contracts/claim-aggregators.js +18 -0
  22. package/lib/esm/config/contracts/impermax-chef.d.ts +2 -0
  23. package/lib/esm/config/contracts/impermax-chef.js +18 -0
  24. package/lib/esm/config/contracts/imxes.d.ts +2 -0
  25. package/lib/esm/config/contracts/imxes.js +18 -0
  26. package/lib/esm/config/contracts/merkle-distributors.d.ts +4 -0
  27. package/lib/esm/config/contracts/merkle-distributors.js +13 -0
  28. package/lib/esm/config/contracts/routers.d.ts +2 -0
  29. package/lib/esm/config/contracts/routers.js +38 -0
  30. package/lib/esm/config/contracts/simple-uniswap-oracles.d.ts +2 -0
  31. package/lib/esm/config/contracts/simple-uniswap-oracles.js +35 -0
  32. package/lib/esm/config/contracts/weths.d.ts +2 -0
  33. package/lib/esm/config/contracts/weths.js +19 -0
  34. package/lib/esm/config/debank-ids.d.ts +2 -0
  35. package/lib/esm/config/debank-ids.js +17 -0
  36. package/lib/esm/config/endpoints/merkle-distributors.d.ts +4 -0
  37. package/lib/esm/config/endpoints/merkle-distributors.js +13 -0
  38. package/lib/esm/config/eth.d.ts +3 -0
  39. package/lib/esm/config/eth.js +32 -0
  40. package/lib/esm/config/factories.d.ts +6 -0
  41. package/lib/esm/config/factories.js +24 -0
  42. package/lib/esm/config/farms.d.ts +59 -0
  43. package/lib/esm/config/farms.js +114 -0
  44. package/lib/esm/config/general.d.ts +3 -0
  45. package/lib/esm/config/general.js +8 -0
  46. package/lib/esm/config/subgraphs.d.ts +5 -0
  47. package/lib/esm/config/subgraphs.js +68 -0
  48. package/lib/esm/config/types.d.ts +67 -0
  49. package/lib/esm/config/types.js +54 -0
  50. package/lib/esm/impermax-router/Account.d.ts +31 -0
  51. package/lib/esm/impermax-router/Account.js +154 -0
  52. package/lib/esm/impermax-router/AccountBorrowable.d.ts +22 -0
  53. package/lib/esm/impermax-router/AccountBorrowable.js +141 -0
  54. package/lib/esm/impermax-router/AccountCollateral.d.ts +11 -0
  55. package/lib/esm/impermax-router/AccountCollateral.js +63 -0
  56. package/lib/esm/impermax-router/AccountLendingPool.d.ts +57 -0
  57. package/lib/esm/impermax-router/AccountLendingPool.js +266 -0
  58. package/lib/esm/impermax-router/AccountPoolToken.d.ts +29 -0
  59. package/lib/esm/impermax-router/AccountPoolToken.js +89 -0
  60. package/lib/esm/impermax-router/Borrowable.d.ts +27 -0
  61. package/lib/esm/impermax-router/Borrowable.js +128 -0
  62. package/lib/esm/impermax-router/Collateral.d.ts +9 -0
  63. package/lib/esm/impermax-router/Collateral.js +45 -0
  64. package/lib/esm/impermax-router/ContractsHelper.d.ts +28 -0
  65. package/lib/esm/impermax-router/ContractsHelper.js +50 -0
  66. package/lib/esm/impermax-router/ImpermaxFactory.d.ts +15 -0
  67. package/lib/esm/impermax-router/ImpermaxFactory.js +42 -0
  68. package/lib/esm/impermax-router/Interactions.d.ts +16 -0
  69. package/lib/esm/impermax-router/Interactions.js +105 -0
  70. package/lib/esm/impermax-router/InteractionsLendingPool.d.ts +43 -0
  71. package/lib/esm/impermax-router/InteractionsLendingPool.js +124 -0
  72. package/lib/esm/impermax-router/InteractionsPoolToken.d.ts +23 -0
  73. package/lib/esm/impermax-router/InteractionsPoolToken.js +194 -0
  74. package/lib/esm/impermax-router/LendingPool.d.ts +69 -0
  75. package/lib/esm/impermax-router/LendingPool.js +291 -0
  76. package/lib/esm/impermax-router/PoolToken.d.ts +36 -0
  77. package/lib/esm/impermax-router/PoolToken.js +140 -0
  78. package/lib/esm/impermax-router/index.d.ts +20 -0
  79. package/lib/esm/impermax-router/index.js +34 -0
  80. package/lib/esm/impermax-router/interfaces.d.ts +218 -0
  81. package/lib/esm/impermax-router/interfaces.js +15 -0
  82. package/{index.ts → lib/esm/index.d.ts} +1 -3
  83. package/lib/esm/index.js +10 -0
  84. package/lib/esm/subgraph/Account.d.ts +18 -0
  85. package/lib/esm/subgraph/Account.js +111 -0
  86. package/lib/esm/subgraph/AccountLendingPool.d.ts +19 -0
  87. package/lib/esm/subgraph/AccountLendingPool.js +71 -0
  88. package/lib/esm/subgraph/AccountPoolToken.d.ts +14 -0
  89. package/lib/esm/subgraph/AccountPoolToken.js +75 -0
  90. package/lib/esm/subgraph/LendingPool.d.ts +38 -0
  91. package/lib/esm/subgraph/LendingPool.js +204 -0
  92. package/lib/esm/subgraph/PoolToken.d.ts +64 -0
  93. package/lib/esm/subgraph/PoolToken.js +462 -0
  94. package/lib/esm/subgraph/PriceHelper.d.ts +21 -0
  95. package/lib/esm/subgraph/PriceHelper.js +166 -0
  96. package/lib/esm/subgraph/SolidexHelper.d.ts +16 -0
  97. package/lib/esm/subgraph/SolidexHelper.js +58 -0
  98. package/lib/esm/subgraph/index.d.ts +73 -0
  99. package/lib/esm/subgraph/index.js +185 -0
  100. package/lib/esm/subgraph/initializer.d.ts +34 -0
  101. package/lib/esm/subgraph/initializer.js +517 -0
  102. package/lib/esm/subgraph/query.d.ts +10 -0
  103. package/lib/esm/subgraph/query.js +229 -0
  104. package/lib/esm/utils/ether-utils.d.ts +5 -0
  105. package/lib/esm/utils/ether-utils.js +26 -0
  106. package/lib/esm/utils/index.d.ts +3 -0
  107. package/lib/esm/utils/index.js +16 -0
  108. package/package.json +9 -3
  109. package/.idea/impermax-sdk.iml +0 -12
  110. package/.idea/misc.xml +0 -6
  111. package/.idea/modules.xml +0 -8
  112. package/.idea/workspace.xml +0 -642
  113. package/abis/ImpermaxABI.ts +0 -3
  114. package/abis/contracts/BAllowance.json +0 -4735
  115. package/abis/contracts/BDeployer.json +0 -1195
  116. package/abis/contracts/BInterestRateModel.json +0 -10796
  117. package/abis/contracts/BSetter.json +0 -6219
  118. package/abis/contracts/BStorage.json +0 -2613
  119. package/abis/contracts/Borrowable.json +0 -19937
  120. package/abis/contracts/CDeployer.json +0 -1104
  121. package/abis/contracts/CSetter.json +0 -5094
  122. package/abis/contracts/CStorage.json +0 -516
  123. package/abis/contracts/ClaimAggregator.json +0 -2015
  124. package/abis/contracts/Collateral.json +0 -21615
  125. package/abis/contracts/ERC20.json +0 -819
  126. package/abis/contracts/Factory.json +0 -21986
  127. package/abis/contracts/FarmingPool.json +0 -8601
  128. package/abis/contracts/IBDeployer.json +0 -351
  129. package/abis/contracts/IBorrowTracker.json +0 -346
  130. package/abis/contracts/IBorrowable.json +0 -13207
  131. package/abis/contracts/ICDeployer.json +0 -294
  132. package/abis/contracts/IClaimable.json +0 -406
  133. package/abis/contracts/ICollateral.json +0 -8952
  134. package/abis/contracts/IERC20.json +0 -2376
  135. package/abis/contracts/IFactory.json +0 -3660
  136. package/abis/contracts/IFarmingPool.json +0 -3584
  137. package/abis/contracts/IImpermaxCallee.json +0 -679
  138. package/abis/contracts/IMerkleDistributor.json +0 -1134
  139. package/abis/contracts/IPoolToken.json +0 -5343
  140. package/abis/contracts/IRouter01.json +0 -6891
  141. package/abis/contracts/IRouter02.json +0 -7283
  142. package/abis/contracts/ISimpleUniswapOracle.json +0 -1469
  143. package/abis/contracts/IStakedLPToken.json +0 -7309
  144. package/abis/contracts/IStakingRewards.json +0 -1036
  145. package/abis/contracts/IUniswapV2Callee.json +0 -403
  146. package/abis/contracts/IUniswapV2ERC20.json +0 -3155
  147. package/abis/contracts/IUniswapV2Factory.json +0 -1690
  148. package/abis/contracts/IUniswapV2Pair.json +0 -6761
  149. package/abis/contracts/IWETH.json +0 -561
  150. package/abis/contracts/ImpermaxChef.json +0 -20945
  151. package/abis/contracts/ImpermaxERC20.json +0 -12095
  152. package/abis/contracts/Math.json +0 -1966
  153. package/abis/contracts/MockERC20.json +0 -8884
  154. package/abis/contracts/PoolToken.json +0 -10784
  155. package/abis/contracts/Router01.json +0 -43963
  156. package/abis/contracts/SafeMath.json +0 -6828
  157. package/abis/contracts/SimpleUniswapOracle.json +0 -9640
  158. package/abis/contracts/TransferHelper.json +0 -4875
  159. package/abis/contracts/UQ112x112.json +0 -1201
  160. package/abis/contracts/UniswapV2ERC20.json +0 -10969
  161. package/abis/contracts/UniswapV2Factory.json +0 -5521
  162. package/abis/contracts/UniswapV2Library.json +0 -13789
  163. package/abis/contracts/UniswapV2Pair.json +0 -30782
  164. package/abis/contracts/WETH9.json +0 -6613
  165. package/config/amms.ts +0 -199
  166. package/config/contracts/claim-aggregators.ts +0 -16
  167. package/config/contracts/impermax-chef.ts +0 -16
  168. package/config/contracts/imxes.ts +0 -16
  169. package/config/contracts/merkle-distributors.ts +0 -13
  170. package/config/contracts/routers.ts +0 -36
  171. package/config/contracts/simple-uniswap-oracles.ts +0 -33
  172. package/config/contracts/weths.ts +0 -18
  173. package/config/debank-ids.ts +0 -15
  174. package/config/endpoints/merkle-distributors.ts +0 -13
  175. package/config/eth.ts +0 -32
  176. package/config/factories.ts +0 -26
  177. package/config/farms.ts +0 -119
  178. package/config/general.ts +0 -8
  179. package/config/subgraphs.ts +0 -69
  180. package/config/types.ts +0 -81
  181. package/impermax-router/Account.ts +0 -123
  182. package/impermax-router/AccountBorrowable.ts +0 -110
  183. package/impermax-router/AccountCollateral.ts +0 -40
  184. package/impermax-router/AccountLendingPool.ts +0 -231
  185. package/impermax-router/AccountPoolToken.ts +0 -76
  186. package/impermax-router/Borrowable.ts +0 -86
  187. package/impermax-router/Collateral.ts +0 -26
  188. package/impermax-router/ContractsHelper.ts +0 -64
  189. package/impermax-router/ImpermaxFactory.ts +0 -47
  190. package/impermax-router/Interactions.ts +0 -94
  191. package/impermax-router/InteractionsLendingPool.ts +0 -129
  192. package/impermax-router/InteractionsPoolToken.ts +0 -187
  193. package/impermax-router/LendingPool.ts +0 -256
  194. package/impermax-router/PoolToken.ts +0 -112
  195. package/impermax-router/index.ts +0 -49
  196. package/impermax-router/interfaces.ts +0 -233
  197. package/subgraph/Account.ts +0 -93
  198. package/subgraph/AccountLendingPool.ts +0 -60
  199. package/subgraph/AccountPoolToken.ts +0 -60
  200. package/subgraph/LendingPool.ts +0 -179
  201. package/subgraph/PoolToken.ts +0 -381
  202. package/subgraph/PriceHelper.ts +0 -150
  203. package/subgraph/SolidexHelper.ts +0 -54
  204. package/subgraph/index.ts +0 -166
  205. package/subgraph/initializer.ts +0 -509
  206. package/subgraph/query.ts +0 -224
  207. package/tsconfig.json +0 -16
  208. package/utils/ether-utils.ts +0 -22
  209. package/utils/index.ts +0 -12
@@ -1,1966 +0,0 @@
1
- {
2
- "contractName": "Math",
3
- "abi": [],
4
- "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/univ2-core/libraries/Math.sol\":\"Math\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/univ2-core/libraries/Math.sol\":{\"keccak256\":\"0x05927cb4aa14897bd567607522c18d2d518fa803ade6f870fac244c6f3702a3b\",\"urls\":[\"bzz-raw://b2805464c2d75cbdd726d6bd5c9b8d1f2c8566b606ec769ffa9a194a42248862\",\"dweb:/ipfs/QmWBa9BsCH8gbncvDFXmfMJX1USTHvAREtc8C7nz6miQpw\"]}},\"version\":1}",
5
- "bytecode": "0x60556023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158208eef1e89f6592dd298c84373eef8e970bc06c66dbc8fce8a32d6373b76e77f8764736f6c63430005100032",
6
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea265627a7a723158208eef1e89f6592dd298c84373eef8e970bc06c66dbc8fce8a32d6373b76e77f8764736f6c63430005100032",
7
- "sourceMap": "79:522:45:-;;132:2:-1;166:7;155:9;146:7;137:37;255:7;249:14;246:1;241:23;235:4;232:33;222:2;;269:9;222:2;293:9;290:1;283:20;323:4;314:7;306:22;347:7;338;331:24",
8
- "deployedSourceMap": "79:522:45:-;;;;;;;;",
9
- "source": "pragma solidity =0.5.16;\n\n// a library for performing various math operations\n\nlibrary Math {\n function min(uint x, uint y) internal pure returns (uint z) {\n z = x < y ? x : y;\n }\n\n // babylonian method (https://en.wikipedia.org/wiki/Methods_of_computing_square_roots#Babylonian_method)\n function sqrt(uint y) internal pure returns (uint z) {\n if (y > 3) {\n z = y;\n uint x = y / 2 + 1;\n while (x < z) {\n z = x;\n x = (y / x + x) / 2;\n }\n } else if (y != 0) {\n z = 1;\n }\n }\n}\n",
10
- "sourcePath": "C:\\Users\\simor\\Desktop\\impermax-x-uniswapv2-periphery\\test\\Contracts\\univ2-core\\libraries\\Math.sol",
11
- "ast": {
12
- "absolutePath": "/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/univ2-core/libraries/Math.sol",
13
- "exportedSymbols": {
14
- "Math": [
15
- 9668
16
- ]
17
- },
18
- "id": 9669,
19
- "nodeType": "SourceUnit",
20
- "nodes": [
21
- {
22
- "id": 9594,
23
- "literals": [
24
- "solidity",
25
- "=",
26
- "0.5",
27
- ".16"
28
- ],
29
- "nodeType": "PragmaDirective",
30
- "src": "0:24:45"
31
- },
32
- {
33
- "baseContracts": [],
34
- "contractDependencies": [],
35
- "contractKind": "library",
36
- "documentation": null,
37
- "fullyImplemented": true,
38
- "id": 9668,
39
- "linearizedBaseContracts": [
40
- 9668
41
- ],
42
- "name": "Math",
43
- "nodeType": "ContractDefinition",
44
- "nodes": [
45
- {
46
- "body": {
47
- "id": 9612,
48
- "nodeType": "Block",
49
- "src": "158:34:45",
50
- "statements": [
51
- {
52
- "expression": {
53
- "argumentTypes": null,
54
- "id": 9610,
55
- "isConstant": false,
56
- "isLValue": false,
57
- "isPure": false,
58
- "lValueRequested": false,
59
- "leftHandSide": {
60
- "argumentTypes": null,
61
- "id": 9603,
62
- "name": "z",
63
- "nodeType": "Identifier",
64
- "overloadedDeclarations": [],
65
- "referencedDeclaration": 9601,
66
- "src": "168:1:45",
67
- "typeDescriptions": {
68
- "typeIdentifier": "t_uint256",
69
- "typeString": "uint256"
70
- }
71
- },
72
- "nodeType": "Assignment",
73
- "operator": "=",
74
- "rightHandSide": {
75
- "argumentTypes": null,
76
- "condition": {
77
- "argumentTypes": null,
78
- "commonType": {
79
- "typeIdentifier": "t_uint256",
80
- "typeString": "uint256"
81
- },
82
- "id": 9606,
83
- "isConstant": false,
84
- "isLValue": false,
85
- "isPure": false,
86
- "lValueRequested": false,
87
- "leftExpression": {
88
- "argumentTypes": null,
89
- "id": 9604,
90
- "name": "x",
91
- "nodeType": "Identifier",
92
- "overloadedDeclarations": [],
93
- "referencedDeclaration": 9596,
94
- "src": "172:1:45",
95
- "typeDescriptions": {
96
- "typeIdentifier": "t_uint256",
97
- "typeString": "uint256"
98
- }
99
- },
100
- "nodeType": "BinaryOperation",
101
- "operator": "<",
102
- "rightExpression": {
103
- "argumentTypes": null,
104
- "id": 9605,
105
- "name": "y",
106
- "nodeType": "Identifier",
107
- "overloadedDeclarations": [],
108
- "referencedDeclaration": 9598,
109
- "src": "176:1:45",
110
- "typeDescriptions": {
111
- "typeIdentifier": "t_uint256",
112
- "typeString": "uint256"
113
- }
114
- },
115
- "src": "172:5:45",
116
- "typeDescriptions": {
117
- "typeIdentifier": "t_bool",
118
- "typeString": "bool"
119
- }
120
- },
121
- "falseExpression": {
122
- "argumentTypes": null,
123
- "id": 9608,
124
- "name": "y",
125
- "nodeType": "Identifier",
126
- "overloadedDeclarations": [],
127
- "referencedDeclaration": 9598,
128
- "src": "184:1:45",
129
- "typeDescriptions": {
130
- "typeIdentifier": "t_uint256",
131
- "typeString": "uint256"
132
- }
133
- },
134
- "id": 9609,
135
- "isConstant": false,
136
- "isLValue": false,
137
- "isPure": false,
138
- "lValueRequested": false,
139
- "nodeType": "Conditional",
140
- "src": "172:13:45",
141
- "trueExpression": {
142
- "argumentTypes": null,
143
- "id": 9607,
144
- "name": "x",
145
- "nodeType": "Identifier",
146
- "overloadedDeclarations": [],
147
- "referencedDeclaration": 9596,
148
- "src": "180:1:45",
149
- "typeDescriptions": {
150
- "typeIdentifier": "t_uint256",
151
- "typeString": "uint256"
152
- }
153
- },
154
- "typeDescriptions": {
155
- "typeIdentifier": "t_uint256",
156
- "typeString": "uint256"
157
- }
158
- },
159
- "src": "168:17:45",
160
- "typeDescriptions": {
161
- "typeIdentifier": "t_uint256",
162
- "typeString": "uint256"
163
- }
164
- },
165
- "id": 9611,
166
- "nodeType": "ExpressionStatement",
167
- "src": "168:17:45"
168
- }
169
- ]
170
- },
171
- "documentation": null,
172
- "id": 9613,
173
- "implemented": true,
174
- "kind": "function",
175
- "modifiers": [],
176
- "name": "min",
177
- "nodeType": "FunctionDefinition",
178
- "parameters": {
179
- "id": 9599,
180
- "nodeType": "ParameterList",
181
- "parameters": [
182
- {
183
- "constant": false,
184
- "id": 9596,
185
- "name": "x",
186
- "nodeType": "VariableDeclaration",
187
- "scope": 9613,
188
- "src": "111:6:45",
189
- "stateVariable": false,
190
- "storageLocation": "default",
191
- "typeDescriptions": {
192
- "typeIdentifier": "t_uint256",
193
- "typeString": "uint256"
194
- },
195
- "typeName": {
196
- "id": 9595,
197
- "name": "uint",
198
- "nodeType": "ElementaryTypeName",
199
- "src": "111:4:45",
200
- "typeDescriptions": {
201
- "typeIdentifier": "t_uint256",
202
- "typeString": "uint256"
203
- }
204
- },
205
- "value": null,
206
- "visibility": "internal"
207
- },
208
- {
209
- "constant": false,
210
- "id": 9598,
211
- "name": "y",
212
- "nodeType": "VariableDeclaration",
213
- "scope": 9613,
214
- "src": "119:6:45",
215
- "stateVariable": false,
216
- "storageLocation": "default",
217
- "typeDescriptions": {
218
- "typeIdentifier": "t_uint256",
219
- "typeString": "uint256"
220
- },
221
- "typeName": {
222
- "id": 9597,
223
- "name": "uint",
224
- "nodeType": "ElementaryTypeName",
225
- "src": "119:4:45",
226
- "typeDescriptions": {
227
- "typeIdentifier": "t_uint256",
228
- "typeString": "uint256"
229
- }
230
- },
231
- "value": null,
232
- "visibility": "internal"
233
- }
234
- ],
235
- "src": "110:16:45"
236
- },
237
- "returnParameters": {
238
- "id": 9602,
239
- "nodeType": "ParameterList",
240
- "parameters": [
241
- {
242
- "constant": false,
243
- "id": 9601,
244
- "name": "z",
245
- "nodeType": "VariableDeclaration",
246
- "scope": 9613,
247
- "src": "150:6:45",
248
- "stateVariable": false,
249
- "storageLocation": "default",
250
- "typeDescriptions": {
251
- "typeIdentifier": "t_uint256",
252
- "typeString": "uint256"
253
- },
254
- "typeName": {
255
- "id": 9600,
256
- "name": "uint",
257
- "nodeType": "ElementaryTypeName",
258
- "src": "150:4:45",
259
- "typeDescriptions": {
260
- "typeIdentifier": "t_uint256",
261
- "typeString": "uint256"
262
- }
263
- },
264
- "value": null,
265
- "visibility": "internal"
266
- }
267
- ],
268
- "src": "149:8:45"
269
- },
270
- "scope": 9668,
271
- "src": "98:94:45",
272
- "stateMutability": "pure",
273
- "superFunction": null,
274
- "visibility": "internal"
275
- },
276
- {
277
- "body": {
278
- "id": 9666,
279
- "nodeType": "Block",
280
- "src": "360:239:45",
281
- "statements": [
282
- {
283
- "condition": {
284
- "argumentTypes": null,
285
- "commonType": {
286
- "typeIdentifier": "t_uint256",
287
- "typeString": "uint256"
288
- },
289
- "id": 9622,
290
- "isConstant": false,
291
- "isLValue": false,
292
- "isPure": false,
293
- "lValueRequested": false,
294
- "leftExpression": {
295
- "argumentTypes": null,
296
- "id": 9620,
297
- "name": "y",
298
- "nodeType": "Identifier",
299
- "overloadedDeclarations": [],
300
- "referencedDeclaration": 9615,
301
- "src": "374:1:45",
302
- "typeDescriptions": {
303
- "typeIdentifier": "t_uint256",
304
- "typeString": "uint256"
305
- }
306
- },
307
- "nodeType": "BinaryOperation",
308
- "operator": ">",
309
- "rightExpression": {
310
- "argumentTypes": null,
311
- "hexValue": "33",
312
- "id": 9621,
313
- "isConstant": false,
314
- "isLValue": false,
315
- "isPure": true,
316
- "kind": "number",
317
- "lValueRequested": false,
318
- "nodeType": "Literal",
319
- "src": "378:1:45",
320
- "subdenomination": null,
321
- "typeDescriptions": {
322
- "typeIdentifier": "t_rational_3_by_1",
323
- "typeString": "int_const 3"
324
- },
325
- "value": "3"
326
- },
327
- "src": "374:5:45",
328
- "typeDescriptions": {
329
- "typeIdentifier": "t_bool",
330
- "typeString": "bool"
331
- }
332
- },
333
- "falseBody": {
334
- "condition": {
335
- "argumentTypes": null,
336
- "commonType": {
337
- "typeIdentifier": "t_uint256",
338
- "typeString": "uint256"
339
- },
340
- "id": 9658,
341
- "isConstant": false,
342
- "isLValue": false,
343
- "isPure": false,
344
- "lValueRequested": false,
345
- "leftExpression": {
346
- "argumentTypes": null,
347
- "id": 9656,
348
- "name": "y",
349
- "nodeType": "Identifier",
350
- "overloadedDeclarations": [],
351
- "referencedDeclaration": 9615,
352
- "src": "555:1:45",
353
- "typeDescriptions": {
354
- "typeIdentifier": "t_uint256",
355
- "typeString": "uint256"
356
- }
357
- },
358
- "nodeType": "BinaryOperation",
359
- "operator": "!=",
360
- "rightExpression": {
361
- "argumentTypes": null,
362
- "hexValue": "30",
363
- "id": 9657,
364
- "isConstant": false,
365
- "isLValue": false,
366
- "isPure": true,
367
- "kind": "number",
368
- "lValueRequested": false,
369
- "nodeType": "Literal",
370
- "src": "560:1:45",
371
- "subdenomination": null,
372
- "typeDescriptions": {
373
- "typeIdentifier": "t_rational_0_by_1",
374
- "typeString": "int_const 0"
375
- },
376
- "value": "0"
377
- },
378
- "src": "555:6:45",
379
- "typeDescriptions": {
380
- "typeIdentifier": "t_bool",
381
- "typeString": "bool"
382
- }
383
- },
384
- "falseBody": null,
385
- "id": 9664,
386
- "nodeType": "IfStatement",
387
- "src": "551:42:45",
388
- "trueBody": {
389
- "id": 9663,
390
- "nodeType": "Block",
391
- "src": "563:30:45",
392
- "statements": [
393
- {
394
- "expression": {
395
- "argumentTypes": null,
396
- "id": 9661,
397
- "isConstant": false,
398
- "isLValue": false,
399
- "isPure": false,
400
- "lValueRequested": false,
401
- "leftHandSide": {
402
- "argumentTypes": null,
403
- "id": 9659,
404
- "name": "z",
405
- "nodeType": "Identifier",
406
- "overloadedDeclarations": [],
407
- "referencedDeclaration": 9618,
408
- "src": "577:1:45",
409
- "typeDescriptions": {
410
- "typeIdentifier": "t_uint256",
411
- "typeString": "uint256"
412
- }
413
- },
414
- "nodeType": "Assignment",
415
- "operator": "=",
416
- "rightHandSide": {
417
- "argumentTypes": null,
418
- "hexValue": "31",
419
- "id": 9660,
420
- "isConstant": false,
421
- "isLValue": false,
422
- "isPure": true,
423
- "kind": "number",
424
- "lValueRequested": false,
425
- "nodeType": "Literal",
426
- "src": "581:1:45",
427
- "subdenomination": null,
428
- "typeDescriptions": {
429
- "typeIdentifier": "t_rational_1_by_1",
430
- "typeString": "int_const 1"
431
- },
432
- "value": "1"
433
- },
434
- "src": "577:5:45",
435
- "typeDescriptions": {
436
- "typeIdentifier": "t_uint256",
437
- "typeString": "uint256"
438
- }
439
- },
440
- "id": 9662,
441
- "nodeType": "ExpressionStatement",
442
- "src": "577:5:45"
443
- }
444
- ]
445
- }
446
- },
447
- "id": 9665,
448
- "nodeType": "IfStatement",
449
- "src": "370:223:45",
450
- "trueBody": {
451
- "id": 9655,
452
- "nodeType": "Block",
453
- "src": "381:164:45",
454
- "statements": [
455
- {
456
- "expression": {
457
- "argumentTypes": null,
458
- "id": 9625,
459
- "isConstant": false,
460
- "isLValue": false,
461
- "isPure": false,
462
- "lValueRequested": false,
463
- "leftHandSide": {
464
- "argumentTypes": null,
465
- "id": 9623,
466
- "name": "z",
467
- "nodeType": "Identifier",
468
- "overloadedDeclarations": [],
469
- "referencedDeclaration": 9618,
470
- "src": "395:1:45",
471
- "typeDescriptions": {
472
- "typeIdentifier": "t_uint256",
473
- "typeString": "uint256"
474
- }
475
- },
476
- "nodeType": "Assignment",
477
- "operator": "=",
478
- "rightHandSide": {
479
- "argumentTypes": null,
480
- "id": 9624,
481
- "name": "y",
482
- "nodeType": "Identifier",
483
- "overloadedDeclarations": [],
484
- "referencedDeclaration": 9615,
485
- "src": "399:1:45",
486
- "typeDescriptions": {
487
- "typeIdentifier": "t_uint256",
488
- "typeString": "uint256"
489
- }
490
- },
491
- "src": "395:5:45",
492
- "typeDescriptions": {
493
- "typeIdentifier": "t_uint256",
494
- "typeString": "uint256"
495
- }
496
- },
497
- "id": 9626,
498
- "nodeType": "ExpressionStatement",
499
- "src": "395:5:45"
500
- },
501
- {
502
- "assignments": [
503
- 9628
504
- ],
505
- "declarations": [
506
- {
507
- "constant": false,
508
- "id": 9628,
509
- "name": "x",
510
- "nodeType": "VariableDeclaration",
511
- "scope": 9655,
512
- "src": "414:6:45",
513
- "stateVariable": false,
514
- "storageLocation": "default",
515
- "typeDescriptions": {
516
- "typeIdentifier": "t_uint256",
517
- "typeString": "uint256"
518
- },
519
- "typeName": {
520
- "id": 9627,
521
- "name": "uint",
522
- "nodeType": "ElementaryTypeName",
523
- "src": "414:4:45",
524
- "typeDescriptions": {
525
- "typeIdentifier": "t_uint256",
526
- "typeString": "uint256"
527
- }
528
- },
529
- "value": null,
530
- "visibility": "internal"
531
- }
532
- ],
533
- "id": 9634,
534
- "initialValue": {
535
- "argumentTypes": null,
536
- "commonType": {
537
- "typeIdentifier": "t_uint256",
538
- "typeString": "uint256"
539
- },
540
- "id": 9633,
541
- "isConstant": false,
542
- "isLValue": false,
543
- "isPure": false,
544
- "lValueRequested": false,
545
- "leftExpression": {
546
- "argumentTypes": null,
547
- "commonType": {
548
- "typeIdentifier": "t_uint256",
549
- "typeString": "uint256"
550
- },
551
- "id": 9631,
552
- "isConstant": false,
553
- "isLValue": false,
554
- "isPure": false,
555
- "lValueRequested": false,
556
- "leftExpression": {
557
- "argumentTypes": null,
558
- "id": 9629,
559
- "name": "y",
560
- "nodeType": "Identifier",
561
- "overloadedDeclarations": [],
562
- "referencedDeclaration": 9615,
563
- "src": "423:1:45",
564
- "typeDescriptions": {
565
- "typeIdentifier": "t_uint256",
566
- "typeString": "uint256"
567
- }
568
- },
569
- "nodeType": "BinaryOperation",
570
- "operator": "/",
571
- "rightExpression": {
572
- "argumentTypes": null,
573
- "hexValue": "32",
574
- "id": 9630,
575
- "isConstant": false,
576
- "isLValue": false,
577
- "isPure": true,
578
- "kind": "number",
579
- "lValueRequested": false,
580
- "nodeType": "Literal",
581
- "src": "427:1:45",
582
- "subdenomination": null,
583
- "typeDescriptions": {
584
- "typeIdentifier": "t_rational_2_by_1",
585
- "typeString": "int_const 2"
586
- },
587
- "value": "2"
588
- },
589
- "src": "423:5:45",
590
- "typeDescriptions": {
591
- "typeIdentifier": "t_uint256",
592
- "typeString": "uint256"
593
- }
594
- },
595
- "nodeType": "BinaryOperation",
596
- "operator": "+",
597
- "rightExpression": {
598
- "argumentTypes": null,
599
- "hexValue": "31",
600
- "id": 9632,
601
- "isConstant": false,
602
- "isLValue": false,
603
- "isPure": true,
604
- "kind": "number",
605
- "lValueRequested": false,
606
- "nodeType": "Literal",
607
- "src": "431:1:45",
608
- "subdenomination": null,
609
- "typeDescriptions": {
610
- "typeIdentifier": "t_rational_1_by_1",
611
- "typeString": "int_const 1"
612
- },
613
- "value": "1"
614
- },
615
- "src": "423:9:45",
616
- "typeDescriptions": {
617
- "typeIdentifier": "t_uint256",
618
- "typeString": "uint256"
619
- }
620
- },
621
- "nodeType": "VariableDeclarationStatement",
622
- "src": "414:18:45"
623
- },
624
- {
625
- "body": {
626
- "id": 9653,
627
- "nodeType": "Block",
628
- "src": "460:75:45",
629
- "statements": [
630
- {
631
- "expression": {
632
- "argumentTypes": null,
633
- "id": 9640,
634
- "isConstant": false,
635
- "isLValue": false,
636
- "isPure": false,
637
- "lValueRequested": false,
638
- "leftHandSide": {
639
- "argumentTypes": null,
640
- "id": 9638,
641
- "name": "z",
642
- "nodeType": "Identifier",
643
- "overloadedDeclarations": [],
644
- "referencedDeclaration": 9618,
645
- "src": "478:1:45",
646
- "typeDescriptions": {
647
- "typeIdentifier": "t_uint256",
648
- "typeString": "uint256"
649
- }
650
- },
651
- "nodeType": "Assignment",
652
- "operator": "=",
653
- "rightHandSide": {
654
- "argumentTypes": null,
655
- "id": 9639,
656
- "name": "x",
657
- "nodeType": "Identifier",
658
- "overloadedDeclarations": [],
659
- "referencedDeclaration": 9628,
660
- "src": "482:1:45",
661
- "typeDescriptions": {
662
- "typeIdentifier": "t_uint256",
663
- "typeString": "uint256"
664
- }
665
- },
666
- "src": "478:5:45",
667
- "typeDescriptions": {
668
- "typeIdentifier": "t_uint256",
669
- "typeString": "uint256"
670
- }
671
- },
672
- "id": 9641,
673
- "nodeType": "ExpressionStatement",
674
- "src": "478:5:45"
675
- },
676
- {
677
- "expression": {
678
- "argumentTypes": null,
679
- "id": 9651,
680
- "isConstant": false,
681
- "isLValue": false,
682
- "isPure": false,
683
- "lValueRequested": false,
684
- "leftHandSide": {
685
- "argumentTypes": null,
686
- "id": 9642,
687
- "name": "x",
688
- "nodeType": "Identifier",
689
- "overloadedDeclarations": [],
690
- "referencedDeclaration": 9628,
691
- "src": "501:1:45",
692
- "typeDescriptions": {
693
- "typeIdentifier": "t_uint256",
694
- "typeString": "uint256"
695
- }
696
- },
697
- "nodeType": "Assignment",
698
- "operator": "=",
699
- "rightHandSide": {
700
- "argumentTypes": null,
701
- "commonType": {
702
- "typeIdentifier": "t_uint256",
703
- "typeString": "uint256"
704
- },
705
- "id": 9650,
706
- "isConstant": false,
707
- "isLValue": false,
708
- "isPure": false,
709
- "lValueRequested": false,
710
- "leftExpression": {
711
- "argumentTypes": null,
712
- "components": [
713
- {
714
- "argumentTypes": null,
715
- "commonType": {
716
- "typeIdentifier": "t_uint256",
717
- "typeString": "uint256"
718
- },
719
- "id": 9647,
720
- "isConstant": false,
721
- "isLValue": false,
722
- "isPure": false,
723
- "lValueRequested": false,
724
- "leftExpression": {
725
- "argumentTypes": null,
726
- "commonType": {
727
- "typeIdentifier": "t_uint256",
728
- "typeString": "uint256"
729
- },
730
- "id": 9645,
731
- "isConstant": false,
732
- "isLValue": false,
733
- "isPure": false,
734
- "lValueRequested": false,
735
- "leftExpression": {
736
- "argumentTypes": null,
737
- "id": 9643,
738
- "name": "y",
739
- "nodeType": "Identifier",
740
- "overloadedDeclarations": [],
741
- "referencedDeclaration": 9615,
742
- "src": "506:1:45",
743
- "typeDescriptions": {
744
- "typeIdentifier": "t_uint256",
745
- "typeString": "uint256"
746
- }
747
- },
748
- "nodeType": "BinaryOperation",
749
- "operator": "/",
750
- "rightExpression": {
751
- "argumentTypes": null,
752
- "id": 9644,
753
- "name": "x",
754
- "nodeType": "Identifier",
755
- "overloadedDeclarations": [],
756
- "referencedDeclaration": 9628,
757
- "src": "510:1:45",
758
- "typeDescriptions": {
759
- "typeIdentifier": "t_uint256",
760
- "typeString": "uint256"
761
- }
762
- },
763
- "src": "506:5:45",
764
- "typeDescriptions": {
765
- "typeIdentifier": "t_uint256",
766
- "typeString": "uint256"
767
- }
768
- },
769
- "nodeType": "BinaryOperation",
770
- "operator": "+",
771
- "rightExpression": {
772
- "argumentTypes": null,
773
- "id": 9646,
774
- "name": "x",
775
- "nodeType": "Identifier",
776
- "overloadedDeclarations": [],
777
- "referencedDeclaration": 9628,
778
- "src": "514:1:45",
779
- "typeDescriptions": {
780
- "typeIdentifier": "t_uint256",
781
- "typeString": "uint256"
782
- }
783
- },
784
- "src": "506:9:45",
785
- "typeDescriptions": {
786
- "typeIdentifier": "t_uint256",
787
- "typeString": "uint256"
788
- }
789
- }
790
- ],
791
- "id": 9648,
792
- "isConstant": false,
793
- "isInlineArray": false,
794
- "isLValue": false,
795
- "isPure": false,
796
- "lValueRequested": false,
797
- "nodeType": "TupleExpression",
798
- "src": "505:11:45",
799
- "typeDescriptions": {
800
- "typeIdentifier": "t_uint256",
801
- "typeString": "uint256"
802
- }
803
- },
804
- "nodeType": "BinaryOperation",
805
- "operator": "/",
806
- "rightExpression": {
807
- "argumentTypes": null,
808
- "hexValue": "32",
809
- "id": 9649,
810
- "isConstant": false,
811
- "isLValue": false,
812
- "isPure": true,
813
- "kind": "number",
814
- "lValueRequested": false,
815
- "nodeType": "Literal",
816
- "src": "519:1:45",
817
- "subdenomination": null,
818
- "typeDescriptions": {
819
- "typeIdentifier": "t_rational_2_by_1",
820
- "typeString": "int_const 2"
821
- },
822
- "value": "2"
823
- },
824
- "src": "505:15:45",
825
- "typeDescriptions": {
826
- "typeIdentifier": "t_uint256",
827
- "typeString": "uint256"
828
- }
829
- },
830
- "src": "501:19:45",
831
- "typeDescriptions": {
832
- "typeIdentifier": "t_uint256",
833
- "typeString": "uint256"
834
- }
835
- },
836
- "id": 9652,
837
- "nodeType": "ExpressionStatement",
838
- "src": "501:19:45"
839
- }
840
- ]
841
- },
842
- "condition": {
843
- "argumentTypes": null,
844
- "commonType": {
845
- "typeIdentifier": "t_uint256",
846
- "typeString": "uint256"
847
- },
848
- "id": 9637,
849
- "isConstant": false,
850
- "isLValue": false,
851
- "isPure": false,
852
- "lValueRequested": false,
853
- "leftExpression": {
854
- "argumentTypes": null,
855
- "id": 9635,
856
- "name": "x",
857
- "nodeType": "Identifier",
858
- "overloadedDeclarations": [],
859
- "referencedDeclaration": 9628,
860
- "src": "453:1:45",
861
- "typeDescriptions": {
862
- "typeIdentifier": "t_uint256",
863
- "typeString": "uint256"
864
- }
865
- },
866
- "nodeType": "BinaryOperation",
867
- "operator": "<",
868
- "rightExpression": {
869
- "argumentTypes": null,
870
- "id": 9636,
871
- "name": "z",
872
- "nodeType": "Identifier",
873
- "overloadedDeclarations": [],
874
- "referencedDeclaration": 9618,
875
- "src": "457:1:45",
876
- "typeDescriptions": {
877
- "typeIdentifier": "t_uint256",
878
- "typeString": "uint256"
879
- }
880
- },
881
- "src": "453:5:45",
882
- "typeDescriptions": {
883
- "typeIdentifier": "t_bool",
884
- "typeString": "bool"
885
- }
886
- },
887
- "id": 9654,
888
- "nodeType": "WhileStatement",
889
- "src": "446:89:45"
890
- }
891
- ]
892
- }
893
- }
894
- ]
895
- },
896
- "documentation": null,
897
- "id": 9667,
898
- "implemented": true,
899
- "kind": "function",
900
- "modifiers": [],
901
- "name": "sqrt",
902
- "nodeType": "FunctionDefinition",
903
- "parameters": {
904
- "id": 9616,
905
- "nodeType": "ParameterList",
906
- "parameters": [
907
- {
908
- "constant": false,
909
- "id": 9615,
910
- "name": "y",
911
- "nodeType": "VariableDeclaration",
912
- "scope": 9667,
913
- "src": "321:6:45",
914
- "stateVariable": false,
915
- "storageLocation": "default",
916
- "typeDescriptions": {
917
- "typeIdentifier": "t_uint256",
918
- "typeString": "uint256"
919
- },
920
- "typeName": {
921
- "id": 9614,
922
- "name": "uint",
923
- "nodeType": "ElementaryTypeName",
924
- "src": "321:4:45",
925
- "typeDescriptions": {
926
- "typeIdentifier": "t_uint256",
927
- "typeString": "uint256"
928
- }
929
- },
930
- "value": null,
931
- "visibility": "internal"
932
- }
933
- ],
934
- "src": "320:8:45"
935
- },
936
- "returnParameters": {
937
- "id": 9619,
938
- "nodeType": "ParameterList",
939
- "parameters": [
940
- {
941
- "constant": false,
942
- "id": 9618,
943
- "name": "z",
944
- "nodeType": "VariableDeclaration",
945
- "scope": 9667,
946
- "src": "352:6:45",
947
- "stateVariable": false,
948
- "storageLocation": "default",
949
- "typeDescriptions": {
950
- "typeIdentifier": "t_uint256",
951
- "typeString": "uint256"
952
- },
953
- "typeName": {
954
- "id": 9617,
955
- "name": "uint",
956
- "nodeType": "ElementaryTypeName",
957
- "src": "352:4:45",
958
- "typeDescriptions": {
959
- "typeIdentifier": "t_uint256",
960
- "typeString": "uint256"
961
- }
962
- },
963
- "value": null,
964
- "visibility": "internal"
965
- }
966
- ],
967
- "src": "351:8:45"
968
- },
969
- "scope": 9668,
970
- "src": "307:292:45",
971
- "stateMutability": "pure",
972
- "superFunction": null,
973
- "visibility": "internal"
974
- }
975
- ],
976
- "scope": 9669,
977
- "src": "79:522:45"
978
- }
979
- ],
980
- "src": "0:602:45"
981
- },
982
- "legacyAST": {
983
- "absolutePath": "/C/Users/simor/Desktop/impermax-x-uniswapv2-periphery/test/Contracts/univ2-core/libraries/Math.sol",
984
- "exportedSymbols": {
985
- "Math": [
986
- 9668
987
- ]
988
- },
989
- "id": 9669,
990
- "nodeType": "SourceUnit",
991
- "nodes": [
992
- {
993
- "id": 9594,
994
- "literals": [
995
- "solidity",
996
- "=",
997
- "0.5",
998
- ".16"
999
- ],
1000
- "nodeType": "PragmaDirective",
1001
- "src": "0:24:45"
1002
- },
1003
- {
1004
- "baseContracts": [],
1005
- "contractDependencies": [],
1006
- "contractKind": "library",
1007
- "documentation": null,
1008
- "fullyImplemented": true,
1009
- "id": 9668,
1010
- "linearizedBaseContracts": [
1011
- 9668
1012
- ],
1013
- "name": "Math",
1014
- "nodeType": "ContractDefinition",
1015
- "nodes": [
1016
- {
1017
- "body": {
1018
- "id": 9612,
1019
- "nodeType": "Block",
1020
- "src": "158:34:45",
1021
- "statements": [
1022
- {
1023
- "expression": {
1024
- "argumentTypes": null,
1025
- "id": 9610,
1026
- "isConstant": false,
1027
- "isLValue": false,
1028
- "isPure": false,
1029
- "lValueRequested": false,
1030
- "leftHandSide": {
1031
- "argumentTypes": null,
1032
- "id": 9603,
1033
- "name": "z",
1034
- "nodeType": "Identifier",
1035
- "overloadedDeclarations": [],
1036
- "referencedDeclaration": 9601,
1037
- "src": "168:1:45",
1038
- "typeDescriptions": {
1039
- "typeIdentifier": "t_uint256",
1040
- "typeString": "uint256"
1041
- }
1042
- },
1043
- "nodeType": "Assignment",
1044
- "operator": "=",
1045
- "rightHandSide": {
1046
- "argumentTypes": null,
1047
- "condition": {
1048
- "argumentTypes": null,
1049
- "commonType": {
1050
- "typeIdentifier": "t_uint256",
1051
- "typeString": "uint256"
1052
- },
1053
- "id": 9606,
1054
- "isConstant": false,
1055
- "isLValue": false,
1056
- "isPure": false,
1057
- "lValueRequested": false,
1058
- "leftExpression": {
1059
- "argumentTypes": null,
1060
- "id": 9604,
1061
- "name": "x",
1062
- "nodeType": "Identifier",
1063
- "overloadedDeclarations": [],
1064
- "referencedDeclaration": 9596,
1065
- "src": "172:1:45",
1066
- "typeDescriptions": {
1067
- "typeIdentifier": "t_uint256",
1068
- "typeString": "uint256"
1069
- }
1070
- },
1071
- "nodeType": "BinaryOperation",
1072
- "operator": "<",
1073
- "rightExpression": {
1074
- "argumentTypes": null,
1075
- "id": 9605,
1076
- "name": "y",
1077
- "nodeType": "Identifier",
1078
- "overloadedDeclarations": [],
1079
- "referencedDeclaration": 9598,
1080
- "src": "176:1:45",
1081
- "typeDescriptions": {
1082
- "typeIdentifier": "t_uint256",
1083
- "typeString": "uint256"
1084
- }
1085
- },
1086
- "src": "172:5:45",
1087
- "typeDescriptions": {
1088
- "typeIdentifier": "t_bool",
1089
- "typeString": "bool"
1090
- }
1091
- },
1092
- "falseExpression": {
1093
- "argumentTypes": null,
1094
- "id": 9608,
1095
- "name": "y",
1096
- "nodeType": "Identifier",
1097
- "overloadedDeclarations": [],
1098
- "referencedDeclaration": 9598,
1099
- "src": "184:1:45",
1100
- "typeDescriptions": {
1101
- "typeIdentifier": "t_uint256",
1102
- "typeString": "uint256"
1103
- }
1104
- },
1105
- "id": 9609,
1106
- "isConstant": false,
1107
- "isLValue": false,
1108
- "isPure": false,
1109
- "lValueRequested": false,
1110
- "nodeType": "Conditional",
1111
- "src": "172:13:45",
1112
- "trueExpression": {
1113
- "argumentTypes": null,
1114
- "id": 9607,
1115
- "name": "x",
1116
- "nodeType": "Identifier",
1117
- "overloadedDeclarations": [],
1118
- "referencedDeclaration": 9596,
1119
- "src": "180:1:45",
1120
- "typeDescriptions": {
1121
- "typeIdentifier": "t_uint256",
1122
- "typeString": "uint256"
1123
- }
1124
- },
1125
- "typeDescriptions": {
1126
- "typeIdentifier": "t_uint256",
1127
- "typeString": "uint256"
1128
- }
1129
- },
1130
- "src": "168:17:45",
1131
- "typeDescriptions": {
1132
- "typeIdentifier": "t_uint256",
1133
- "typeString": "uint256"
1134
- }
1135
- },
1136
- "id": 9611,
1137
- "nodeType": "ExpressionStatement",
1138
- "src": "168:17:45"
1139
- }
1140
- ]
1141
- },
1142
- "documentation": null,
1143
- "id": 9613,
1144
- "implemented": true,
1145
- "kind": "function",
1146
- "modifiers": [],
1147
- "name": "min",
1148
- "nodeType": "FunctionDefinition",
1149
- "parameters": {
1150
- "id": 9599,
1151
- "nodeType": "ParameterList",
1152
- "parameters": [
1153
- {
1154
- "constant": false,
1155
- "id": 9596,
1156
- "name": "x",
1157
- "nodeType": "VariableDeclaration",
1158
- "scope": 9613,
1159
- "src": "111:6:45",
1160
- "stateVariable": false,
1161
- "storageLocation": "default",
1162
- "typeDescriptions": {
1163
- "typeIdentifier": "t_uint256",
1164
- "typeString": "uint256"
1165
- },
1166
- "typeName": {
1167
- "id": 9595,
1168
- "name": "uint",
1169
- "nodeType": "ElementaryTypeName",
1170
- "src": "111:4:45",
1171
- "typeDescriptions": {
1172
- "typeIdentifier": "t_uint256",
1173
- "typeString": "uint256"
1174
- }
1175
- },
1176
- "value": null,
1177
- "visibility": "internal"
1178
- },
1179
- {
1180
- "constant": false,
1181
- "id": 9598,
1182
- "name": "y",
1183
- "nodeType": "VariableDeclaration",
1184
- "scope": 9613,
1185
- "src": "119:6:45",
1186
- "stateVariable": false,
1187
- "storageLocation": "default",
1188
- "typeDescriptions": {
1189
- "typeIdentifier": "t_uint256",
1190
- "typeString": "uint256"
1191
- },
1192
- "typeName": {
1193
- "id": 9597,
1194
- "name": "uint",
1195
- "nodeType": "ElementaryTypeName",
1196
- "src": "119:4:45",
1197
- "typeDescriptions": {
1198
- "typeIdentifier": "t_uint256",
1199
- "typeString": "uint256"
1200
- }
1201
- },
1202
- "value": null,
1203
- "visibility": "internal"
1204
- }
1205
- ],
1206
- "src": "110:16:45"
1207
- },
1208
- "returnParameters": {
1209
- "id": 9602,
1210
- "nodeType": "ParameterList",
1211
- "parameters": [
1212
- {
1213
- "constant": false,
1214
- "id": 9601,
1215
- "name": "z",
1216
- "nodeType": "VariableDeclaration",
1217
- "scope": 9613,
1218
- "src": "150:6:45",
1219
- "stateVariable": false,
1220
- "storageLocation": "default",
1221
- "typeDescriptions": {
1222
- "typeIdentifier": "t_uint256",
1223
- "typeString": "uint256"
1224
- },
1225
- "typeName": {
1226
- "id": 9600,
1227
- "name": "uint",
1228
- "nodeType": "ElementaryTypeName",
1229
- "src": "150:4:45",
1230
- "typeDescriptions": {
1231
- "typeIdentifier": "t_uint256",
1232
- "typeString": "uint256"
1233
- }
1234
- },
1235
- "value": null,
1236
- "visibility": "internal"
1237
- }
1238
- ],
1239
- "src": "149:8:45"
1240
- },
1241
- "scope": 9668,
1242
- "src": "98:94:45",
1243
- "stateMutability": "pure",
1244
- "superFunction": null,
1245
- "visibility": "internal"
1246
- },
1247
- {
1248
- "body": {
1249
- "id": 9666,
1250
- "nodeType": "Block",
1251
- "src": "360:239:45",
1252
- "statements": [
1253
- {
1254
- "condition": {
1255
- "argumentTypes": null,
1256
- "commonType": {
1257
- "typeIdentifier": "t_uint256",
1258
- "typeString": "uint256"
1259
- },
1260
- "id": 9622,
1261
- "isConstant": false,
1262
- "isLValue": false,
1263
- "isPure": false,
1264
- "lValueRequested": false,
1265
- "leftExpression": {
1266
- "argumentTypes": null,
1267
- "id": 9620,
1268
- "name": "y",
1269
- "nodeType": "Identifier",
1270
- "overloadedDeclarations": [],
1271
- "referencedDeclaration": 9615,
1272
- "src": "374:1:45",
1273
- "typeDescriptions": {
1274
- "typeIdentifier": "t_uint256",
1275
- "typeString": "uint256"
1276
- }
1277
- },
1278
- "nodeType": "BinaryOperation",
1279
- "operator": ">",
1280
- "rightExpression": {
1281
- "argumentTypes": null,
1282
- "hexValue": "33",
1283
- "id": 9621,
1284
- "isConstant": false,
1285
- "isLValue": false,
1286
- "isPure": true,
1287
- "kind": "number",
1288
- "lValueRequested": false,
1289
- "nodeType": "Literal",
1290
- "src": "378:1:45",
1291
- "subdenomination": null,
1292
- "typeDescriptions": {
1293
- "typeIdentifier": "t_rational_3_by_1",
1294
- "typeString": "int_const 3"
1295
- },
1296
- "value": "3"
1297
- },
1298
- "src": "374:5:45",
1299
- "typeDescriptions": {
1300
- "typeIdentifier": "t_bool",
1301
- "typeString": "bool"
1302
- }
1303
- },
1304
- "falseBody": {
1305
- "condition": {
1306
- "argumentTypes": null,
1307
- "commonType": {
1308
- "typeIdentifier": "t_uint256",
1309
- "typeString": "uint256"
1310
- },
1311
- "id": 9658,
1312
- "isConstant": false,
1313
- "isLValue": false,
1314
- "isPure": false,
1315
- "lValueRequested": false,
1316
- "leftExpression": {
1317
- "argumentTypes": null,
1318
- "id": 9656,
1319
- "name": "y",
1320
- "nodeType": "Identifier",
1321
- "overloadedDeclarations": [],
1322
- "referencedDeclaration": 9615,
1323
- "src": "555:1:45",
1324
- "typeDescriptions": {
1325
- "typeIdentifier": "t_uint256",
1326
- "typeString": "uint256"
1327
- }
1328
- },
1329
- "nodeType": "BinaryOperation",
1330
- "operator": "!=",
1331
- "rightExpression": {
1332
- "argumentTypes": null,
1333
- "hexValue": "30",
1334
- "id": 9657,
1335
- "isConstant": false,
1336
- "isLValue": false,
1337
- "isPure": true,
1338
- "kind": "number",
1339
- "lValueRequested": false,
1340
- "nodeType": "Literal",
1341
- "src": "560:1:45",
1342
- "subdenomination": null,
1343
- "typeDescriptions": {
1344
- "typeIdentifier": "t_rational_0_by_1",
1345
- "typeString": "int_const 0"
1346
- },
1347
- "value": "0"
1348
- },
1349
- "src": "555:6:45",
1350
- "typeDescriptions": {
1351
- "typeIdentifier": "t_bool",
1352
- "typeString": "bool"
1353
- }
1354
- },
1355
- "falseBody": null,
1356
- "id": 9664,
1357
- "nodeType": "IfStatement",
1358
- "src": "551:42:45",
1359
- "trueBody": {
1360
- "id": 9663,
1361
- "nodeType": "Block",
1362
- "src": "563:30:45",
1363
- "statements": [
1364
- {
1365
- "expression": {
1366
- "argumentTypes": null,
1367
- "id": 9661,
1368
- "isConstant": false,
1369
- "isLValue": false,
1370
- "isPure": false,
1371
- "lValueRequested": false,
1372
- "leftHandSide": {
1373
- "argumentTypes": null,
1374
- "id": 9659,
1375
- "name": "z",
1376
- "nodeType": "Identifier",
1377
- "overloadedDeclarations": [],
1378
- "referencedDeclaration": 9618,
1379
- "src": "577:1:45",
1380
- "typeDescriptions": {
1381
- "typeIdentifier": "t_uint256",
1382
- "typeString": "uint256"
1383
- }
1384
- },
1385
- "nodeType": "Assignment",
1386
- "operator": "=",
1387
- "rightHandSide": {
1388
- "argumentTypes": null,
1389
- "hexValue": "31",
1390
- "id": 9660,
1391
- "isConstant": false,
1392
- "isLValue": false,
1393
- "isPure": true,
1394
- "kind": "number",
1395
- "lValueRequested": false,
1396
- "nodeType": "Literal",
1397
- "src": "581:1:45",
1398
- "subdenomination": null,
1399
- "typeDescriptions": {
1400
- "typeIdentifier": "t_rational_1_by_1",
1401
- "typeString": "int_const 1"
1402
- },
1403
- "value": "1"
1404
- },
1405
- "src": "577:5:45",
1406
- "typeDescriptions": {
1407
- "typeIdentifier": "t_uint256",
1408
- "typeString": "uint256"
1409
- }
1410
- },
1411
- "id": 9662,
1412
- "nodeType": "ExpressionStatement",
1413
- "src": "577:5:45"
1414
- }
1415
- ]
1416
- }
1417
- },
1418
- "id": 9665,
1419
- "nodeType": "IfStatement",
1420
- "src": "370:223:45",
1421
- "trueBody": {
1422
- "id": 9655,
1423
- "nodeType": "Block",
1424
- "src": "381:164:45",
1425
- "statements": [
1426
- {
1427
- "expression": {
1428
- "argumentTypes": null,
1429
- "id": 9625,
1430
- "isConstant": false,
1431
- "isLValue": false,
1432
- "isPure": false,
1433
- "lValueRequested": false,
1434
- "leftHandSide": {
1435
- "argumentTypes": null,
1436
- "id": 9623,
1437
- "name": "z",
1438
- "nodeType": "Identifier",
1439
- "overloadedDeclarations": [],
1440
- "referencedDeclaration": 9618,
1441
- "src": "395:1:45",
1442
- "typeDescriptions": {
1443
- "typeIdentifier": "t_uint256",
1444
- "typeString": "uint256"
1445
- }
1446
- },
1447
- "nodeType": "Assignment",
1448
- "operator": "=",
1449
- "rightHandSide": {
1450
- "argumentTypes": null,
1451
- "id": 9624,
1452
- "name": "y",
1453
- "nodeType": "Identifier",
1454
- "overloadedDeclarations": [],
1455
- "referencedDeclaration": 9615,
1456
- "src": "399:1:45",
1457
- "typeDescriptions": {
1458
- "typeIdentifier": "t_uint256",
1459
- "typeString": "uint256"
1460
- }
1461
- },
1462
- "src": "395:5:45",
1463
- "typeDescriptions": {
1464
- "typeIdentifier": "t_uint256",
1465
- "typeString": "uint256"
1466
- }
1467
- },
1468
- "id": 9626,
1469
- "nodeType": "ExpressionStatement",
1470
- "src": "395:5:45"
1471
- },
1472
- {
1473
- "assignments": [
1474
- 9628
1475
- ],
1476
- "declarations": [
1477
- {
1478
- "constant": false,
1479
- "id": 9628,
1480
- "name": "x",
1481
- "nodeType": "VariableDeclaration",
1482
- "scope": 9655,
1483
- "src": "414:6:45",
1484
- "stateVariable": false,
1485
- "storageLocation": "default",
1486
- "typeDescriptions": {
1487
- "typeIdentifier": "t_uint256",
1488
- "typeString": "uint256"
1489
- },
1490
- "typeName": {
1491
- "id": 9627,
1492
- "name": "uint",
1493
- "nodeType": "ElementaryTypeName",
1494
- "src": "414:4:45",
1495
- "typeDescriptions": {
1496
- "typeIdentifier": "t_uint256",
1497
- "typeString": "uint256"
1498
- }
1499
- },
1500
- "value": null,
1501
- "visibility": "internal"
1502
- }
1503
- ],
1504
- "id": 9634,
1505
- "initialValue": {
1506
- "argumentTypes": null,
1507
- "commonType": {
1508
- "typeIdentifier": "t_uint256",
1509
- "typeString": "uint256"
1510
- },
1511
- "id": 9633,
1512
- "isConstant": false,
1513
- "isLValue": false,
1514
- "isPure": false,
1515
- "lValueRequested": false,
1516
- "leftExpression": {
1517
- "argumentTypes": null,
1518
- "commonType": {
1519
- "typeIdentifier": "t_uint256",
1520
- "typeString": "uint256"
1521
- },
1522
- "id": 9631,
1523
- "isConstant": false,
1524
- "isLValue": false,
1525
- "isPure": false,
1526
- "lValueRequested": false,
1527
- "leftExpression": {
1528
- "argumentTypes": null,
1529
- "id": 9629,
1530
- "name": "y",
1531
- "nodeType": "Identifier",
1532
- "overloadedDeclarations": [],
1533
- "referencedDeclaration": 9615,
1534
- "src": "423:1:45",
1535
- "typeDescriptions": {
1536
- "typeIdentifier": "t_uint256",
1537
- "typeString": "uint256"
1538
- }
1539
- },
1540
- "nodeType": "BinaryOperation",
1541
- "operator": "/",
1542
- "rightExpression": {
1543
- "argumentTypes": null,
1544
- "hexValue": "32",
1545
- "id": 9630,
1546
- "isConstant": false,
1547
- "isLValue": false,
1548
- "isPure": true,
1549
- "kind": "number",
1550
- "lValueRequested": false,
1551
- "nodeType": "Literal",
1552
- "src": "427:1:45",
1553
- "subdenomination": null,
1554
- "typeDescriptions": {
1555
- "typeIdentifier": "t_rational_2_by_1",
1556
- "typeString": "int_const 2"
1557
- },
1558
- "value": "2"
1559
- },
1560
- "src": "423:5:45",
1561
- "typeDescriptions": {
1562
- "typeIdentifier": "t_uint256",
1563
- "typeString": "uint256"
1564
- }
1565
- },
1566
- "nodeType": "BinaryOperation",
1567
- "operator": "+",
1568
- "rightExpression": {
1569
- "argumentTypes": null,
1570
- "hexValue": "31",
1571
- "id": 9632,
1572
- "isConstant": false,
1573
- "isLValue": false,
1574
- "isPure": true,
1575
- "kind": "number",
1576
- "lValueRequested": false,
1577
- "nodeType": "Literal",
1578
- "src": "431:1:45",
1579
- "subdenomination": null,
1580
- "typeDescriptions": {
1581
- "typeIdentifier": "t_rational_1_by_1",
1582
- "typeString": "int_const 1"
1583
- },
1584
- "value": "1"
1585
- },
1586
- "src": "423:9:45",
1587
- "typeDescriptions": {
1588
- "typeIdentifier": "t_uint256",
1589
- "typeString": "uint256"
1590
- }
1591
- },
1592
- "nodeType": "VariableDeclarationStatement",
1593
- "src": "414:18:45"
1594
- },
1595
- {
1596
- "body": {
1597
- "id": 9653,
1598
- "nodeType": "Block",
1599
- "src": "460:75:45",
1600
- "statements": [
1601
- {
1602
- "expression": {
1603
- "argumentTypes": null,
1604
- "id": 9640,
1605
- "isConstant": false,
1606
- "isLValue": false,
1607
- "isPure": false,
1608
- "lValueRequested": false,
1609
- "leftHandSide": {
1610
- "argumentTypes": null,
1611
- "id": 9638,
1612
- "name": "z",
1613
- "nodeType": "Identifier",
1614
- "overloadedDeclarations": [],
1615
- "referencedDeclaration": 9618,
1616
- "src": "478:1:45",
1617
- "typeDescriptions": {
1618
- "typeIdentifier": "t_uint256",
1619
- "typeString": "uint256"
1620
- }
1621
- },
1622
- "nodeType": "Assignment",
1623
- "operator": "=",
1624
- "rightHandSide": {
1625
- "argumentTypes": null,
1626
- "id": 9639,
1627
- "name": "x",
1628
- "nodeType": "Identifier",
1629
- "overloadedDeclarations": [],
1630
- "referencedDeclaration": 9628,
1631
- "src": "482:1:45",
1632
- "typeDescriptions": {
1633
- "typeIdentifier": "t_uint256",
1634
- "typeString": "uint256"
1635
- }
1636
- },
1637
- "src": "478:5:45",
1638
- "typeDescriptions": {
1639
- "typeIdentifier": "t_uint256",
1640
- "typeString": "uint256"
1641
- }
1642
- },
1643
- "id": 9641,
1644
- "nodeType": "ExpressionStatement",
1645
- "src": "478:5:45"
1646
- },
1647
- {
1648
- "expression": {
1649
- "argumentTypes": null,
1650
- "id": 9651,
1651
- "isConstant": false,
1652
- "isLValue": false,
1653
- "isPure": false,
1654
- "lValueRequested": false,
1655
- "leftHandSide": {
1656
- "argumentTypes": null,
1657
- "id": 9642,
1658
- "name": "x",
1659
- "nodeType": "Identifier",
1660
- "overloadedDeclarations": [],
1661
- "referencedDeclaration": 9628,
1662
- "src": "501:1:45",
1663
- "typeDescriptions": {
1664
- "typeIdentifier": "t_uint256",
1665
- "typeString": "uint256"
1666
- }
1667
- },
1668
- "nodeType": "Assignment",
1669
- "operator": "=",
1670
- "rightHandSide": {
1671
- "argumentTypes": null,
1672
- "commonType": {
1673
- "typeIdentifier": "t_uint256",
1674
- "typeString": "uint256"
1675
- },
1676
- "id": 9650,
1677
- "isConstant": false,
1678
- "isLValue": false,
1679
- "isPure": false,
1680
- "lValueRequested": false,
1681
- "leftExpression": {
1682
- "argumentTypes": null,
1683
- "components": [
1684
- {
1685
- "argumentTypes": null,
1686
- "commonType": {
1687
- "typeIdentifier": "t_uint256",
1688
- "typeString": "uint256"
1689
- },
1690
- "id": 9647,
1691
- "isConstant": false,
1692
- "isLValue": false,
1693
- "isPure": false,
1694
- "lValueRequested": false,
1695
- "leftExpression": {
1696
- "argumentTypes": null,
1697
- "commonType": {
1698
- "typeIdentifier": "t_uint256",
1699
- "typeString": "uint256"
1700
- },
1701
- "id": 9645,
1702
- "isConstant": false,
1703
- "isLValue": false,
1704
- "isPure": false,
1705
- "lValueRequested": false,
1706
- "leftExpression": {
1707
- "argumentTypes": null,
1708
- "id": 9643,
1709
- "name": "y",
1710
- "nodeType": "Identifier",
1711
- "overloadedDeclarations": [],
1712
- "referencedDeclaration": 9615,
1713
- "src": "506:1:45",
1714
- "typeDescriptions": {
1715
- "typeIdentifier": "t_uint256",
1716
- "typeString": "uint256"
1717
- }
1718
- },
1719
- "nodeType": "BinaryOperation",
1720
- "operator": "/",
1721
- "rightExpression": {
1722
- "argumentTypes": null,
1723
- "id": 9644,
1724
- "name": "x",
1725
- "nodeType": "Identifier",
1726
- "overloadedDeclarations": [],
1727
- "referencedDeclaration": 9628,
1728
- "src": "510:1:45",
1729
- "typeDescriptions": {
1730
- "typeIdentifier": "t_uint256",
1731
- "typeString": "uint256"
1732
- }
1733
- },
1734
- "src": "506:5:45",
1735
- "typeDescriptions": {
1736
- "typeIdentifier": "t_uint256",
1737
- "typeString": "uint256"
1738
- }
1739
- },
1740
- "nodeType": "BinaryOperation",
1741
- "operator": "+",
1742
- "rightExpression": {
1743
- "argumentTypes": null,
1744
- "id": 9646,
1745
- "name": "x",
1746
- "nodeType": "Identifier",
1747
- "overloadedDeclarations": [],
1748
- "referencedDeclaration": 9628,
1749
- "src": "514:1:45",
1750
- "typeDescriptions": {
1751
- "typeIdentifier": "t_uint256",
1752
- "typeString": "uint256"
1753
- }
1754
- },
1755
- "src": "506:9:45",
1756
- "typeDescriptions": {
1757
- "typeIdentifier": "t_uint256",
1758
- "typeString": "uint256"
1759
- }
1760
- }
1761
- ],
1762
- "id": 9648,
1763
- "isConstant": false,
1764
- "isInlineArray": false,
1765
- "isLValue": false,
1766
- "isPure": false,
1767
- "lValueRequested": false,
1768
- "nodeType": "TupleExpression",
1769
- "src": "505:11:45",
1770
- "typeDescriptions": {
1771
- "typeIdentifier": "t_uint256",
1772
- "typeString": "uint256"
1773
- }
1774
- },
1775
- "nodeType": "BinaryOperation",
1776
- "operator": "/",
1777
- "rightExpression": {
1778
- "argumentTypes": null,
1779
- "hexValue": "32",
1780
- "id": 9649,
1781
- "isConstant": false,
1782
- "isLValue": false,
1783
- "isPure": true,
1784
- "kind": "number",
1785
- "lValueRequested": false,
1786
- "nodeType": "Literal",
1787
- "src": "519:1:45",
1788
- "subdenomination": null,
1789
- "typeDescriptions": {
1790
- "typeIdentifier": "t_rational_2_by_1",
1791
- "typeString": "int_const 2"
1792
- },
1793
- "value": "2"
1794
- },
1795
- "src": "505:15:45",
1796
- "typeDescriptions": {
1797
- "typeIdentifier": "t_uint256",
1798
- "typeString": "uint256"
1799
- }
1800
- },
1801
- "src": "501:19:45",
1802
- "typeDescriptions": {
1803
- "typeIdentifier": "t_uint256",
1804
- "typeString": "uint256"
1805
- }
1806
- },
1807
- "id": 9652,
1808
- "nodeType": "ExpressionStatement",
1809
- "src": "501:19:45"
1810
- }
1811
- ]
1812
- },
1813
- "condition": {
1814
- "argumentTypes": null,
1815
- "commonType": {
1816
- "typeIdentifier": "t_uint256",
1817
- "typeString": "uint256"
1818
- },
1819
- "id": 9637,
1820
- "isConstant": false,
1821
- "isLValue": false,
1822
- "isPure": false,
1823
- "lValueRequested": false,
1824
- "leftExpression": {
1825
- "argumentTypes": null,
1826
- "id": 9635,
1827
- "name": "x",
1828
- "nodeType": "Identifier",
1829
- "overloadedDeclarations": [],
1830
- "referencedDeclaration": 9628,
1831
- "src": "453:1:45",
1832
- "typeDescriptions": {
1833
- "typeIdentifier": "t_uint256",
1834
- "typeString": "uint256"
1835
- }
1836
- },
1837
- "nodeType": "BinaryOperation",
1838
- "operator": "<",
1839
- "rightExpression": {
1840
- "argumentTypes": null,
1841
- "id": 9636,
1842
- "name": "z",
1843
- "nodeType": "Identifier",
1844
- "overloadedDeclarations": [],
1845
- "referencedDeclaration": 9618,
1846
- "src": "457:1:45",
1847
- "typeDescriptions": {
1848
- "typeIdentifier": "t_uint256",
1849
- "typeString": "uint256"
1850
- }
1851
- },
1852
- "src": "453:5:45",
1853
- "typeDescriptions": {
1854
- "typeIdentifier": "t_bool",
1855
- "typeString": "bool"
1856
- }
1857
- },
1858
- "id": 9654,
1859
- "nodeType": "WhileStatement",
1860
- "src": "446:89:45"
1861
- }
1862
- ]
1863
- }
1864
- }
1865
- ]
1866
- },
1867
- "documentation": null,
1868
- "id": 9667,
1869
- "implemented": true,
1870
- "kind": "function",
1871
- "modifiers": [],
1872
- "name": "sqrt",
1873
- "nodeType": "FunctionDefinition",
1874
- "parameters": {
1875
- "id": 9616,
1876
- "nodeType": "ParameterList",
1877
- "parameters": [
1878
- {
1879
- "constant": false,
1880
- "id": 9615,
1881
- "name": "y",
1882
- "nodeType": "VariableDeclaration",
1883
- "scope": 9667,
1884
- "src": "321:6:45",
1885
- "stateVariable": false,
1886
- "storageLocation": "default",
1887
- "typeDescriptions": {
1888
- "typeIdentifier": "t_uint256",
1889
- "typeString": "uint256"
1890
- },
1891
- "typeName": {
1892
- "id": 9614,
1893
- "name": "uint",
1894
- "nodeType": "ElementaryTypeName",
1895
- "src": "321:4:45",
1896
- "typeDescriptions": {
1897
- "typeIdentifier": "t_uint256",
1898
- "typeString": "uint256"
1899
- }
1900
- },
1901
- "value": null,
1902
- "visibility": "internal"
1903
- }
1904
- ],
1905
- "src": "320:8:45"
1906
- },
1907
- "returnParameters": {
1908
- "id": 9619,
1909
- "nodeType": "ParameterList",
1910
- "parameters": [
1911
- {
1912
- "constant": false,
1913
- "id": 9618,
1914
- "name": "z",
1915
- "nodeType": "VariableDeclaration",
1916
- "scope": 9667,
1917
- "src": "352:6:45",
1918
- "stateVariable": false,
1919
- "storageLocation": "default",
1920
- "typeDescriptions": {
1921
- "typeIdentifier": "t_uint256",
1922
- "typeString": "uint256"
1923
- },
1924
- "typeName": {
1925
- "id": 9617,
1926
- "name": "uint",
1927
- "nodeType": "ElementaryTypeName",
1928
- "src": "352:4:45",
1929
- "typeDescriptions": {
1930
- "typeIdentifier": "t_uint256",
1931
- "typeString": "uint256"
1932
- }
1933
- },
1934
- "value": null,
1935
- "visibility": "internal"
1936
- }
1937
- ],
1938
- "src": "351:8:45"
1939
- },
1940
- "scope": 9668,
1941
- "src": "307:292:45",
1942
- "stateMutability": "pure",
1943
- "superFunction": null,
1944
- "visibility": "internal"
1945
- }
1946
- ],
1947
- "scope": 9669,
1948
- "src": "79:522:45"
1949
- }
1950
- ],
1951
- "src": "0:602:45"
1952
- },
1953
- "compiler": {
1954
- "name": "solc",
1955
- "version": "0.5.16+commit.9c3226ce.Emscripten.clang"
1956
- },
1957
- "networks": {},
1958
- "schemaVersion": "3.3.2",
1959
- "updatedAt": "2021-01-07T23:07:24.842Z",
1960
- "devdoc": {
1961
- "methods": {}
1962
- },
1963
- "userdoc": {
1964
- "methods": {}
1965
- }
1966
- }