{ "abi": [], "bytecode": { "object": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122030bc009e46805a15e5865df1b53618409a3eca5b0655cd2daf934767cbfe23f764736f6c63430008160033", "sourceMap": "306:8361:38:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;306:8361:38;;;;;;;;;;;;;;;;;", "linkReferences": {} }, "deployedBytecode": { "object": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122030bc009e46805a15e5865df1b53618409a3eca5b0655cd2daf934767cbfe23f764736f6c63430008160033", "sourceMap": "306:8361:38:-:0;;;;;;;;", "linkReferences": {} }, "methodIdentifiers": {}, "rawMetadata": "{\"compiler\":{\"version\":\"0.8.22+commit.4fc1097e\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"stateVariables\":{\"MAX_SQRT_RATIO\":{\"details\":\"The maximum value that can be returned from #getSqrtRatioAtTick. Equivalent to getSqrtRatioAtTick(MAX_TICK)\"},\"MAX_TICK\":{\"details\":\"The maximum tick that may be passed to #getSqrtRatioAtTick computed from log base 1.0001 of 2**128\"},\"MIN_SQRT_RATIO\":{\"details\":\"The minimum value that can be returned from #getSqrtRatioAtTick. Equivalent to getSqrtRatioAtTick(MIN_TICK)\"},\"MIN_TICK\":{\"details\":\"The minimum tick that may be passed to #getSqrtRatioAtTick computed from log base 1.0001 of 2**-128\"}},\"title\":\"Math library for computing sqrt prices from ticks and vice versa\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Computes sqrt price for ticks of size 1.0001, i.e. sqrt(1.0001^tick) as fixed point Q64.96 numbers. Supports prices between 2**-128 and 2**128\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib_uniswap/v3-core/contracts/libraries/TickMath.sol\":\"TickMath\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"details\":{\"constantOptimizer\":true,\"cse\":true,\"deduplicate\":true,\"inliner\":true,\"jumpdestRemover\":true,\"orderLiterals\":true,\"peephole\":true,\"simpleCounterForLoopUncheckedIncrement\":true,\"yul\":true,\"yulDetails\":{\"optimizerSteps\":\"dhfoD[xarrscLMcCTU]uljmul:fDnTOcmu\",\"stackAllocation\":true}},\"runs\":999999999},\"remappings\":[\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@uniswap/v3-core/=lib_uniswap/v3-core/\",\":@uniswap/v3-periphery/=lib_uniswap/v3-periphery/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":v3-core/=lib_uniswap/v3-core/\",\":v3-periphery/libraries/=lib_uniswap/v3-periphery/contracts/libraries/\"]},\"sources\":{\"lib_uniswap/v3-core/contracts/libraries/TickMath.sol\":{\"keccak256\":\"0x350d6743e4d8ff3b7f3bcc569919b22dd13e46918a7994d29d7cb5c60080ee4d\",\"license\":\"GPL-2.0-or-later\",\"urls\":[\"bzz-raw://513f138148bd8b28edb0625d27c593b09155a1f71cc3c081659d448d079ca8d3\",\"dweb:/ipfs/QmRhWsD9JhoKLVT9ShUkDC2kYcNneDKXbt3NTHEpDkRZ2G\"]}},\"version\":1}", "metadata": { "compiler": { "version": "0.8.22+commit.4fc1097e" }, "language": "Solidity", "output": { "abi": [], "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }, "settings": { "remappings": [ "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/", "@uniswap/v3-core/=lib_uniswap/v3-core/", "@uniswap/v3-periphery/=lib_uniswap/v3-periphery/", "ds-test/=lib/forge-std/lib/ds-test/src/", "forge-std/=lib/forge-std/src/", "openzeppelin-contracts/=lib/openzeppelin-contracts/", "v3-core/=lib_uniswap/v3-core/", "v3-periphery/libraries/=lib_uniswap/v3-periphery/contracts/libraries/" ], "optimizer": { "runs": 999999999, "details": { "peephole": true, "inliner": true, "jumpdestRemover": true, "orderLiterals": true, "deduplicate": true, "cse": true, "constantOptimizer": true, "yul": true, "yulDetails": { "stackAllocation": true, "optimizerSteps": "dhfoD[xarrscLMcCTU]uljmul:fDnTOcmu" } } }, "metadata": { "bytecodeHash": "ipfs" }, "compilationTarget": { "lib_uniswap/v3-core/contracts/libraries/TickMath.sol": "TickMath" }, "libraries": {} }, "sources": { "lib_uniswap/v3-core/contracts/libraries/TickMath.sol": { "keccak256": "0x350d6743e4d8ff3b7f3bcc569919b22dd13e46918a7994d29d7cb5c60080ee4d", "urls": [ "bzz-raw://513f138148bd8b28edb0625d27c593b09155a1f71cc3c081659d448d079ca8d3", "dweb:/ipfs/QmRhWsD9JhoKLVT9ShUkDC2kYcNneDKXbt3NTHEpDkRZ2G" ], "license": "GPL-2.0-or-later" } }, "version": 1 }, "ast": { "absolutePath": "lib_uniswap/v3-core/contracts/libraries/TickMath.sol", "id": 45060, "exportedSymbols": { "TickMath": [ 45059 ] }, "nodeType": "SourceUnit", "src": "45:8623:38", "nodes": [ { "id": 44521, "nodeType": "PragmaDirective", "src": "45:24:38", "nodes": [], "literals": [ "solidity", ">=", "0.5", ".0" ] }, { "id": 45059, "nodeType": "ContractDefinition", "src": "306:8361:38", "nodes": [ { "id": 44527, "nodeType": "VariableDeclaration", "src": "442:42:38", "nodes": [], "constant": true, "documentation": { "id": 44523, "nodeType": "StructuredDocumentation", "src": "329:108:38", "text": "@dev The minimum tick that may be passed to #getSqrtRatioAtTick computed from log base 1.0001 of 2**-128" }, "mutability": "constant", "name": "MIN_TICK", "nameLocation": "466:8:38", "scope": 45059, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" }, "typeName": { "id": 44524, "name": "int24", "nodeType": "ElementaryTypeName", "src": "442:5:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "value": { "id": 44526, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "-", "prefix": true, "src": "477:7:38", "subExpression": { "hexValue": "383837323732", "id": 44525, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "478:6:38", "typeDescriptions": { "typeIdentifier": "t_rational_887272_by_1", "typeString": "int_const 887272" }, "value": "887272" }, "typeDescriptions": { "typeIdentifier": "t_rational_minus_887272_by_1", "typeString": "int_const -887272" } }, "visibility": "internal" }, { "id": 44532, "nodeType": "VariableDeclaration", "src": "602:44:38", "nodes": [], "constant": true, "documentation": { "id": 44528, "nodeType": "StructuredDocumentation", "src": "490:107:38", "text": "@dev The maximum tick that may be passed to #getSqrtRatioAtTick computed from log base 1.0001 of 2**128" }, "mutability": "constant", "name": "MAX_TICK", "nameLocation": "626:8:38", "scope": 45059, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" }, "typeName": { "id": 44529, "name": "int24", "nodeType": "ElementaryTypeName", "src": "602:5:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "value": { "id": 44531, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "-", "prefix": true, "src": "637:9:38", "subExpression": { "id": 44530, "name": "MIN_TICK", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44527, "src": "638:8:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "visibility": "internal" }, { "id": 44536, "nodeType": "VariableDeclaration", "src": "774:53:38", "nodes": [], "constant": true, "documentation": { "id": 44533, "nodeType": "StructuredDocumentation", "src": "653:116:38", "text": "@dev The minimum value that can be returned from #getSqrtRatioAtTick. Equivalent to getSqrtRatioAtTick(MIN_TICK)" }, "mutability": "constant", "name": "MIN_SQRT_RATIO", "nameLocation": "800:14:38", "scope": 45059, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "typeName": { "id": 44534, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "774:7:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "value": { "hexValue": "34323935313238373339", "id": 44535, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "817:10:38", "typeDescriptions": { "typeIdentifier": "t_rational_4295128739_by_1", "typeString": "int_const 4295128739" }, "value": "4295128739" }, "visibility": "internal" }, { "id": 44540, "nodeType": "VariableDeclaration", "src": "954:92:38", "nodes": [], "constant": true, "documentation": { "id": 44537, "nodeType": "StructuredDocumentation", "src": "833:116:38", "text": "@dev The maximum value that can be returned from #getSqrtRatioAtTick. Equivalent to getSqrtRatioAtTick(MAX_TICK)" }, "mutability": "constant", "name": "MAX_SQRT_RATIO", "nameLocation": "980:14:38", "scope": 45059, "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "typeName": { "id": 44538, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "954:7:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "value": { "hexValue": "31343631343436373033343835323130313033323837323733303532323033393838383232333738373233393730333432", "id": 44539, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "997:49:38", "typeDescriptions": { "typeIdentifier": "t_rational_1461446703485210103287273052203988822378723970342_by_1", "typeString": "int_const 1461...(41 digits omitted)...0342" }, "value": "1461446703485210103287273052203988822378723970342" }, "visibility": "internal" }, { "id": 44918, "nodeType": "FunctionDefinition", "src": "1355:2599:38", "nodes": [], "body": { "id": 44917, "nodeType": "Block", "src": "1440:2514:38", "nodes": [], "statements": [ { "id": 44916, "nodeType": "UncheckedBlock", "src": "1441:2512:38", "statements": [ { "assignments": [ 44549 ], "declarations": [ { "constant": false, "id": 44549, "mutability": "mutable", "name": "absTick", "nameLocation": "1468:7:38", "nodeType": "VariableDeclaration", "scope": 44916, "src": "1460:15:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 44548, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1460:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 44569, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_int24", "typeString": "int24" }, "id": 44552, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44550, "name": "tick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44543, "src": "1478:4:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "hexValue": "30", "id": 44551, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1485:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1478:8:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "arguments": [ { "arguments": [ { "id": 44565, "name": "tick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44543, "src": "1529:4:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int24", "typeString": "int24" } ], "id": 44564, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1522:6:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 44563, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1522:6:38", "typeDescriptions": {} } }, "id": 44566, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1522:12:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 44562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1514:7:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 44561, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1514:7:38", "typeDescriptions": {} } }, "id": 44567, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1514:21:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44568, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "1478:57:38", "trueExpression": { "arguments": [ { "id": 44559, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "UnaryOperation", "operator": "-", "prefix": true, "src": "1497:13:38", "subExpression": { "arguments": [ { "id": 44557, "name": "tick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44543, "src": "1505:4:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int24", "typeString": "int24" } ], "id": 44556, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1498:6:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 44555, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1498:6:38", "typeDescriptions": {} } }, "id": 44558, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1498:12:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 44554, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1489:7:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 44553, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1489:7:38", "typeDescriptions": {} } }, "id": 44560, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1489:22:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "1460:75:38" }, { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44579, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44571, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "1553:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "arguments": [ { "arguments": [ { "id": 44576, "name": "MAX_TICK", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44532, "src": "1579:8:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int24", "typeString": "int24" } ], "id": 44575, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1572:6:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 44574, "name": "int256", "nodeType": "ElementaryTypeName", "src": "1572:6:38", "typeDescriptions": {} } }, "id": 44577, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1572:16:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 44573, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "1564:7:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 44572, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1564:7:38", "typeDescriptions": {} } }, "id": 44578, "isConstant": false, "isLValue": false, "isPure": true, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1564:25:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "1553:36:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "54", "id": 44580, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1591:3:38", "typeDescriptions": { "typeIdentifier": "t_stringliteral_846b7b6deb1cfa110d0ea7ec6162a7123b761785528db70cceed5143183b11fc", "typeString": "literal_string \"T\"" }, "value": "T" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_846b7b6deb1cfa110d0ea7ec6162a7123b761785528db70cceed5143183b11fc", "typeString": "literal_string \"T\"" } ], "id": 44570, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "1545:7:38", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 44581, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "1545:50:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 44582, "nodeType": "ExpressionStatement", "src": "1545:50:38" }, { "assignments": [ 44584 ], "declarations": [ { "constant": false, "id": 44584, "mutability": "mutable", "name": "ratio", "nameLocation": "1614:5:38", "nodeType": "VariableDeclaration", "scope": 44916, "src": "1606:13:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 44583, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1606:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 44593, "initialValue": { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44589, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44587, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44585, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "1622:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307831", "id": 44586, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1632:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "0x1" }, "src": "1622:13:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44588, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1639:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1622:18:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "hexValue": "3078313030303030303030303030303030303030303030303030303030303030303030", "id": 44591, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1680:35:38", "typeDescriptions": { "typeIdentifier": "t_rational_340282366920938463463374607431768211456_by_1", "typeString": "int_const 3402...(31 digits omitted)...1456" }, "value": "0x100000000000000000000000000000000" }, "id": 44592, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "1622:93:38", "trueExpression": { "hexValue": "30786666666362393333626436666164333761613264313632643161353934303031", "id": 44590, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1643:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_340265354078544963557816517032075149313_by_1", "typeString": "int_const 3402...(31 digits omitted)...9313" }, "value": "0xfffcb933bd6fad37aa2d162d1a594001" }, "typeDescriptions": { "typeIdentifier": "t_uint136", "typeString": "uint136" } }, "nodeType": "VariableDeclarationStatement", "src": "1606:109:38" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44598, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44596, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44594, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "1729:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307832", "id": 44595, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1739:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", "typeString": "int_const 2" }, "value": "0x2" }, "src": "1729:13:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44597, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1746:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1729:18:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44608, "nodeType": "IfStatement", "src": "1725:83:38", "trueBody": { "expression": { "id": 44606, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44599, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "1749:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44605, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44602, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44600, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "1758:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786666663937323732333733643431333235396134363939303538306532313361", "id": 44601, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1766:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_340248342086729790484326174814286782778_by_1", "typeString": "int_const 3402...(31 digits omitted)...2778" }, "value": "0xfff97272373d413259a46990580e213a" }, "src": "1758:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44603, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1757:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44604, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1805:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "1757:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "1749:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44607, "nodeType": "ExpressionStatement", "src": "1749:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44611, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44609, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "1822:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307834", "id": 44610, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1832:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_4_by_1", "typeString": "int_const 4" }, "value": "0x4" }, "src": "1822:13:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44612, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1839:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1822:18:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44623, "nodeType": "IfStatement", "src": "1818:83:38", "trueBody": { "expression": { "id": 44621, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44614, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "1842:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44617, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44615, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "1851:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786666663265353066356636353639333265663132333537636633633766646363", "id": 44616, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1859:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_340214320654664324051920982716015181260_by_1", "typeString": "int_const 3402...(31 digits omitted)...1260" }, "value": "0xfff2e50f5f656932ef12357cf3c7fdcc" }, "src": "1851:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44618, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1850:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44619, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1898:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "1850:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "1842:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44622, "nodeType": "ExpressionStatement", "src": "1842:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44628, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44626, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44624, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "1915:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307838", "id": 44625, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1925:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_8_by_1", "typeString": "int_const 8" }, "value": "0x8" }, "src": "1915:13:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44627, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1932:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "1915:18:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44638, "nodeType": "IfStatement", "src": "1911:83:38", "trueBody": { "expression": { "id": 44636, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44629, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "1935:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44632, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44630, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "1944:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786666653563616361376531306534653631633336323465616130393431636430", "id": 44631, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1952:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_340146287995602323631171512101879684304_by_1", "typeString": "int_const 3401...(31 digits omitted)...4304" }, "value": "0xffe5caca7e10e4e61c3624eaa0941cd0" }, "src": "1944:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44633, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "1943:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44634, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "1991:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "1943:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "1935:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44637, "nodeType": "ExpressionStatement", "src": "1935:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44643, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44641, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44639, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2008:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783130", "id": 44640, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2018:4:38", "typeDescriptions": { "typeIdentifier": "t_rational_16_by_1", "typeString": "int_const 16" }, "value": "0x10" }, "src": "2008:14:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44642, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2026:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2008:19:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44653, "nodeType": "IfStatement", "src": "2004:84:38", "trueBody": { "expression": { "id": 44651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44644, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2029:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44647, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44645, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2038:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786666636239383433643630663631353963396462353838333563393236363434", "id": 44646, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2046:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_340010263488231146823593991679159461444_by_1", "typeString": "int_const 3400...(31 digits omitted)...1444" }, "value": "0xffcb9843d60f6159c9db58835c926644" }, "src": "2038:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44648, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2037:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44649, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2085:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2037:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2029:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44652, "nodeType": "ExpressionStatement", "src": "2029:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44658, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44654, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2102:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783230", "id": 44655, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2112:4:38", "typeDescriptions": { "typeIdentifier": "t_rational_32_by_1", "typeString": "int_const 32" }, "value": "0x20" }, "src": "2102:14:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44657, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2120:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2102:19:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44668, "nodeType": "IfStatement", "src": "2098:84:38", "trueBody": { "expression": { "id": 44666, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44659, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2123:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44665, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44660, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2132:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786666393733623431666139386330383134373265363839366466623235346330", "id": 44661, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2140:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_339738377640345403697157401104375502016_by_1", "typeString": "int_const 3397...(31 digits omitted)...2016" }, "value": "0xff973b41fa98c081472e6896dfb254c0" }, "src": "2132:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44663, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2131:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44664, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2179:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2131:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2123:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44667, "nodeType": "ExpressionStatement", "src": "2123:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44673, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44671, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44669, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2196:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783430", "id": 44670, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2206:4:38", "typeDescriptions": { "typeIdentifier": "t_rational_64_by_1", "typeString": "int_const 64" }, "value": "0x40" }, "src": "2196:14:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44672, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2214:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2196:19:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44683, "nodeType": "IfStatement", "src": "2192:84:38", "trueBody": { "expression": { "id": 44681, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44674, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2217:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44677, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44675, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2226:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786666326561313634363663393661333834336563373862333236623532383631", "id": 44676, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2234:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_339195258003219555707034227454543997025_by_1", "typeString": "int_const 3391...(31 digits omitted)...7025" }, "value": "0xff2ea16466c96a3843ec78b326b52861" }, "src": "2226:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44678, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2225:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44679, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2273:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2225:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2217:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44682, "nodeType": "ExpressionStatement", "src": "2217:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44688, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44686, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44684, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2290:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783830", "id": 44685, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2300:4:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "0x80" }, "src": "2290:14:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44687, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2308:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2290:19:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44698, "nodeType": "IfStatement", "src": "2286:84:38", "trueBody": { "expression": { "id": 44696, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44689, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2311:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44695, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44692, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44690, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2320:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786665356465653034366139396132613831316334363166313936396333303533", "id": 44691, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2328:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_338111622100601834656805679988414885971_by_1", "typeString": "int_const 3381...(31 digits omitted)...5971" }, "value": "0xfe5dee046a99a2a811c461f1969c3053" }, "src": "2320:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44693, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2319:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44694, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2367:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2319:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2311:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44697, "nodeType": "ExpressionStatement", "src": "2311:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44703, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44701, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44699, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2384:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "3078313030", "id": 44700, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2394:5:38", "typeDescriptions": { "typeIdentifier": "t_rational_256_by_1", "typeString": "int_const 256" }, "value": "0x100" }, "src": "2384:15:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44702, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2403:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2384:20:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44713, "nodeType": "IfStatement", "src": "2380:85:38", "trueBody": { "expression": { "id": 44711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44704, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2406:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44710, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44705, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2415:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786663626538366337393030613838616564636666633833623437396161336134", "id": 44706, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2423:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_335954724994790223023589805789778977700_by_1", "typeString": "int_const 3359...(31 digits omitted)...7700" }, "value": "0xfcbe86c7900a88aedcffc83b479aa3a4" }, "src": "2415:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44708, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2414:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44709, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2462:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2414:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2406:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44712, "nodeType": "ExpressionStatement", "src": "2406:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44718, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44716, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44714, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2479:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "3078323030", "id": 44715, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2489:5:38", "typeDescriptions": { "typeIdentifier": "t_rational_512_by_1", "typeString": "int_const 512" }, "value": "0x200" }, "src": "2479:15:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44717, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2498:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2479:20:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44728, "nodeType": "IfStatement", "src": "2475:85:38", "trueBody": { "expression": { "id": 44726, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44719, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2501:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44725, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44722, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44720, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2510:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786639383761373235336163343133313736663262303734636637383135653534", "id": 44721, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2518:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_331682121138379247127172139078559817300_by_1", "typeString": "int_const 3316...(31 digits omitted)...7300" }, "value": "0xf987a7253ac413176f2b074cf7815e54" }, "src": "2510:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44723, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2509:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44724, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2557:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2509:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2501:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44727, "nodeType": "ExpressionStatement", "src": "2501:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44733, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44731, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44729, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2574:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "3078343030", "id": 44730, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2584:5:38", "typeDescriptions": { "typeIdentifier": "t_rational_1024_by_1", "typeString": "int_const 1024" }, "value": "0x400" }, "src": "2574:15:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44732, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2593:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2574:20:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44743, "nodeType": "IfStatement", "src": "2570:85:38", "trueBody": { "expression": { "id": 44741, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44734, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2596:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44740, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44737, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44735, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2605:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786633333932623038323262373030303539343063376133393865346237306633", "id": 44736, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2613:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_323299236684853023288211250268160618739_by_1", "typeString": "int_const 3232...(31 digits omitted)...8739" }, "value": "0xf3392b0822b70005940c7a398e4b70f3" }, "src": "2605:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44738, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2604:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44739, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2652:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2604:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2596:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44742, "nodeType": "ExpressionStatement", "src": "2596:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44748, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44746, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44744, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2669:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "3078383030", "id": 44745, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2679:5:38", "typeDescriptions": { "typeIdentifier": "t_rational_2048_by_1", "typeString": "int_const 2048" }, "value": "0x800" }, "src": "2669:15:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44747, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2688:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2669:20:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44758, "nodeType": "IfStatement", "src": "2665:85:38", "trueBody": { "expression": { "id": 44756, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44749, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2691:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44752, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44750, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2700:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786537313539343735613263323962373434336232396337666136653838396439", "id": 44751, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2708:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_307163716377032989948697243942600083929_by_1", "typeString": "int_const 3071...(31 digits omitted)...3929" }, "value": "0xe7159475a2c29b7443b29c7fa6e889d9" }, "src": "2700:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44753, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2699:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44754, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2747:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2699:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2691:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44757, "nodeType": "ExpressionStatement", "src": "2691:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44763, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44761, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44759, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2764:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307831303030", "id": 44760, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2774:6:38", "typeDescriptions": { "typeIdentifier": "t_rational_4096_by_1", "typeString": "int_const 4096" }, "value": "0x1000" }, "src": "2764:16:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44762, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2784:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2764:21:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44773, "nodeType": "IfStatement", "src": "2760:86:38", "trueBody": { "expression": { "id": 44771, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44764, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2787:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44770, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44767, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44765, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2796:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786430393766336264666432303232623838343561643866373932616135383235", "id": 44766, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2804:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_277268403626896220162999269216087595045_by_1", "typeString": "int_const 2772...(31 digits omitted)...5045" }, "value": "0xd097f3bdfd2022b8845ad8f792aa5825" }, "src": "2796:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44768, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2795:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44769, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2843:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2795:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2787:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44772, "nodeType": "ExpressionStatement", "src": "2787:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44778, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44776, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44774, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2860:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307832303030", "id": 44775, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2870:6:38", "typeDescriptions": { "typeIdentifier": "t_rational_8192_by_1", "typeString": "int_const 8192" }, "value": "0x2000" }, "src": "2860:16:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44777, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2880:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2860:21:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44788, "nodeType": "IfStatement", "src": "2856:86:38", "trueBody": { "expression": { "id": 44786, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44779, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2883:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44785, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44782, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44780, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2892:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30786139663734363436326438373066646638613635646331663930653036316535", "id": 44781, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2900:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_225923453940442621947126027127485391333_by_1", "typeString": "int_const 2259...(31 digits omitted)...1333" }, "value": "0xa9f746462d870fdf8a65dc1f90e061e5" }, "src": "2892:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44783, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2891:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44784, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2939:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2891:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2883:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44787, "nodeType": "ExpressionStatement", "src": "2883:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44793, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44791, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44789, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "2956:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307834303030", "id": 44790, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2966:6:38", "typeDescriptions": { "typeIdentifier": "t_rational_16384_by_1", "typeString": "int_const 16384" }, "value": "0x4000" }, "src": "2956:16:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44792, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2976:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "2956:21:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44803, "nodeType": "IfStatement", "src": "2952:86:38", "trueBody": { "expression": { "id": 44801, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44794, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2979:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44800, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44795, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "2988:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30783730643836396131353664326131623839306262336466363262616633326637", "id": 44796, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "2996:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_149997214084966997727330242082538205943_by_1", "typeString": "int_const 1499...(31 digits omitted)...5943" }, "value": "0x70d869a156d2a1b890bb3df62baf32f7" }, "src": "2988:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44798, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "2987:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44799, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3035:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "2987:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "2979:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44802, "nodeType": "ExpressionStatement", "src": "2979:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44808, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44806, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44804, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "3052:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "307838303030", "id": 44805, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3062:6:38", "typeDescriptions": { "typeIdentifier": "t_rational_32768_by_1", "typeString": "int_const 32768" }, "value": "0x8000" }, "src": "3052:16:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44807, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3072:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3052:21:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44818, "nodeType": "IfStatement", "src": "3048:86:38", "trueBody": { "expression": { "id": 44816, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44809, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3075:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44815, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44812, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44810, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3084:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30783331626531333566393764303866643938313233313530353534326663666136", "id": 44811, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3092:34:38", "typeDescriptions": { "typeIdentifier": "t_rational_66119101136024775622716233608466517926_by_1", "typeString": "int_const 6611...(30 digits omitted)...7926" }, "value": "0x31be135f97d08fd981231505542fcfa6" }, "src": "3084:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44813, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3083:44:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44814, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3131:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "3083:51:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3075:59:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44817, "nodeType": "ExpressionStatement", "src": "3075:59:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44823, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44821, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44819, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "3148:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783130303030", "id": 44820, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3158:7:38", "typeDescriptions": { "typeIdentifier": "t_rational_65536_by_1", "typeString": "int_const 65536" }, "value": "0x10000" }, "src": "3148:17:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44822, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3169:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3148:22:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44833, "nodeType": "IfStatement", "src": "3144:86:38", "trueBody": { "expression": { "id": 44831, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44824, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3172:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44827, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44825, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3181:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "307839616135303862356237613834653163363737646535346633653939626339", "id": 44826, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3189:33:38", "typeDescriptions": { "typeIdentifier": "t_rational_12847376061809297530290974190478138313_by_1", "typeString": "int_const 1284...(30 digits omitted)...8313" }, "value": "0x9aa508b5b7a84e1c677de54f3e99bc9" }, "src": "3181:41:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44828, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3180:43:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44829, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3227:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "3180:50:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3172:58:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44832, "nodeType": "ExpressionStatement", "src": "3172:58:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44838, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44836, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44834, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "3244:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783230303030", "id": 44835, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3254:7:38", "typeDescriptions": { "typeIdentifier": "t_rational_131072_by_1", "typeString": "int_const 131072" }, "value": "0x20000" }, "src": "3244:17:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44837, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3265:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3244:22:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44848, "nodeType": "IfStatement", "src": "3240:85:38", "trueBody": { "expression": { "id": 44846, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44839, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3268:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44845, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44842, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44840, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3277:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "3078356436616638646564623831313936363939633332393232356565363034", "id": 44841, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3285:32:38", "typeDescriptions": { "typeIdentifier": "t_rational_485053260817066172746253684029974020_by_1", "typeString": "int_const 4850...(28 digits omitted)...4020" }, "value": "0x5d6af8dedb81196699c329225ee604" }, "src": "3277:40:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44843, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3276:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44844, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3322:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "3276:49:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3268:57:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44847, "nodeType": "ExpressionStatement", "src": "3268:57:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44853, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44851, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44849, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "3339:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783430303030", "id": 44850, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3349:7:38", "typeDescriptions": { "typeIdentifier": "t_rational_262144_by_1", "typeString": "int_const 262144" }, "value": "0x40000" }, "src": "3339:17:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44852, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3360:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3339:22:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44863, "nodeType": "IfStatement", "src": "3335:83:38", "trueBody": { "expression": { "id": 44861, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44854, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3363:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44860, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44855, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3372:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "307832323136653538346635666131656139323630343162656466653938", "id": 44856, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3380:30:38", "typeDescriptions": { "typeIdentifier": "t_rational_691415978906521570653435304214168_by_1", "typeString": "int_const 6914...(25 digits omitted)...4168" }, "value": "0x2216e584f5fa1ea926041bedfe98" }, "src": "3372:38:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44858, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3371:40:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44859, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3415:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "3371:47:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3363:55:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44862, "nodeType": "ExpressionStatement", "src": "3363:55:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44868, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44866, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44864, "name": "absTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44549, "src": "3432:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "&", "rightExpression": { "hexValue": "30783830303030", "id": 44865, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3442:7:38", "typeDescriptions": { "typeIdentifier": "t_rational_524288_by_1", "typeString": "int_const 524288" }, "value": "0x80000" }, "src": "3432:17:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "!=", "rightExpression": { "hexValue": "30", "id": 44867, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3453:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3432:22:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44878, "nodeType": "IfStatement", "src": "3428:78:38", "trueBody": { "expression": { "id": 44876, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44869, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3456:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44875, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44872, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44870, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3465:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "30783438613137303339316637646334323434346538666132", "id": 44871, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3473:25:38", "typeDescriptions": { "typeIdentifier": "t_rational_1404880482679654955896180642_by_1", "typeString": "int_const 1404880482679654955896180642" }, "value": "0x48a170391f7dc42444e8fa2" }, "src": "3465:33:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44873, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3464:35:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 44874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3503:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "3464:42:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3456:50:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44877, "nodeType": "ExpressionStatement", "src": "3456:50:38" } }, { "condition": { "commonType": { "typeIdentifier": "t_int24", "typeString": "int24" }, "id": 44881, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44879, "name": "tick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44543, "src": "3521:4:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "nodeType": "BinaryOperation", "operator": ">", "rightExpression": { "hexValue": "30", "id": 44880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3528:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3521:8:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "id": 44892, "nodeType": "IfStatement", "src": "3517:47:38", "trueBody": { "expression": { "id": 44890, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44882, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3531:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44889, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "expression": { "arguments": [ { "id": 44885, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3544:7:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 44884, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "3544:7:38", "typeDescriptions": {} } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" } ], "id": 44883, "name": "type", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -27, "src": "3539:4:38", "typeDescriptions": { "typeIdentifier": "t_function_metatype_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 44886, "isConstant": false, "isLValue": false, "isPure": true, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3539:13:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_magic_meta_type_t_uint256", "typeString": "type(uint256)" } }, "id": 44887, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberLocation": "3553:3:38", "memberName": "max", "nodeType": "MemberAccess", "src": "3539:17:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "/", "rightExpression": { "id": 44888, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3559:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3539:25:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "3531:33:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44891, "nodeType": "ExpressionStatement", "src": "3531:33:38" } }, { "expression": { "id": 44914, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44893, "name": "sqrtPriceX96", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44546, "src": "3874:12:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "arguments": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44912, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44898, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44896, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3898:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "3332", "id": 44897, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3907:2:38", "typeDescriptions": { "typeIdentifier": "t_rational_32_by_1", "typeString": "int_const 32" }, "value": "32" }, "src": "3898:11:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44899, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3897:13:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { "components": [ { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44907, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44905, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44900, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44584, "src": "3914:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "%", "rightExpression": { "components": [ { "commonType": { "typeIdentifier": "t_rational_4294967296_by_1", "typeString": "int_const 4294967296" }, "id": 44903, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "leftExpression": { "hexValue": "31", "id": 44901, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3923:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "nodeType": "BinaryOperation", "operator": "<<", "rightExpression": { "hexValue": "3332", "id": 44902, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3928:2:38", "typeDescriptions": { "typeIdentifier": "t_rational_32_by_1", "typeString": "int_const 32" }, "value": "32" }, "src": "3923:7:38", "typeDescriptions": { "typeIdentifier": "t_rational_4294967296_by_1", "typeString": "int_const 4294967296" } } ], "id": 44904, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3922:9:38", "typeDescriptions": { "typeIdentifier": "t_rational_4294967296_by_1", "typeString": "int_const 4294967296" } }, "src": "3914:17:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "hexValue": "30", "id": 44906, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3935:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "src": "3914:22:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "hexValue": "31", "id": 44909, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3943:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", "typeString": "int_const 1" }, "value": "1" }, "id": 44910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "3914:30:38", "trueExpression": { "hexValue": "30", "id": 44908, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "3939:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } } ], "id": 44911, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "3913:32:38", "typeDescriptions": { "typeIdentifier": "t_uint8", "typeString": "uint8" } }, "src": "3897:48:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 44895, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "3889:7:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint160_$", "typeString": "type(uint160)" }, "typeName": { "id": 44894, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "3889:7:38", "typeDescriptions": {} } }, "id": 44913, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "3889:57:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "src": "3874:72:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "id": 44915, "nodeType": "ExpressionStatement", "src": "3874:72:38" } ] } ] }, "documentation": { "id": 44541, "nodeType": "StructuredDocumentation", "src": "1053:297:38", "text": "@notice Calculates sqrt(1.0001^tick) * 2^96\n @dev Throws if |tick| > max tick\n @param tick The input tick for the above formula\n @return sqrtPriceX96 A Fixed point Q64.96 number representing the sqrt of the ratio of the two assets (token1/token0)\n at the given tick" }, "implemented": true, "kind": "function", "modifiers": [], "name": "getSqrtRatioAtTick", "nameLocation": "1364:18:38", "parameters": { "id": 44544, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 44543, "mutability": "mutable", "name": "tick", "nameLocation": "1389:4:38", "nodeType": "VariableDeclaration", "scope": 44918, "src": "1383:10:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" }, "typeName": { "id": 44542, "name": "int24", "nodeType": "ElementaryTypeName", "src": "1383:5:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "visibility": "internal" } ], "src": "1382:12:38" }, "returnParameters": { "id": 44547, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 44546, "mutability": "mutable", "name": "sqrtPriceX96", "nameLocation": "1426:12:38", "nodeType": "VariableDeclaration", "scope": 44918, "src": "1418:20:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "typeName": { "id": 44545, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "1418:7:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "visibility": "internal" } ], "src": "1417:22:38" }, "scope": 45059, "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "id": 45058, "nodeType": "FunctionDefinition", "src": "4373:4293:38", "nodes": [], "body": { "id": 45057, "nodeType": "Block", "src": "4458:4208:38", "nodes": [], "statements": [ { "id": 45056, "nodeType": "UncheckedBlock", "src": "4459:4205:38", "statements": [ { "expression": { "arguments": [ { "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, "id": 44933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "commonType": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "id": 44929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44927, "name": "sqrtPriceX96", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44921, "src": "4585:12:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "id": 44928, "name": "MIN_SQRT_RATIO", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44536, "src": "4601:14:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "src": "4585:30:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "BinaryOperation", "operator": "&&", "rightExpression": { "commonType": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "id": 44932, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44930, "name": "sqrtPriceX96", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44921, "src": "4619:12:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "nodeType": "BinaryOperation", "operator": "<", "rightExpression": { "id": 44931, "name": "MAX_SQRT_RATIO", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44540, "src": "4634:14:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "src": "4619:29:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "src": "4585:63:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, { "hexValue": "52", "id": 44934, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "4650:3:38", "typeDescriptions": { "typeIdentifier": "t_stringliteral_ef22bddd350b943170a67d35191c27e310709a28c38b5762a152ff640108f5b2", "typeString": "literal_string \"R\"" }, "value": "R" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" }, { "typeIdentifier": "t_stringliteral_ef22bddd350b943170a67d35191c27e310709a28c38b5762a152ff640108f5b2", "typeString": "literal_string \"R\"" } ], "id": 44926, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ -18, -18 ], "referencedDeclaration": -18, "src": "4577:7:38", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, "id": 44935, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4577:77:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 44936, "nodeType": "ExpressionStatement", "src": "4577:77:38" }, { "assignments": [ 44938 ], "declarations": [ { "constant": false, "id": 44938, "mutability": "mutable", "name": "ratio", "nameLocation": "4672:5:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "4664:13:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 44937, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4664:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 44945, "initialValue": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44944, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "id": 44941, "name": "sqrtPriceX96", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44921, "src": "4688:12:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint160", "typeString": "uint160" } ], "id": 44940, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "4680:7:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": { "id": 44939, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4680:7:38", "typeDescriptions": {} } }, "id": 44942, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "4680:21:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<<", "rightExpression": { "hexValue": "3332", "id": 44943, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "4705:2:38", "typeDescriptions": { "typeIdentifier": "t_rational_32_by_1", "typeString": "int_const 32" }, "value": "32" }, "src": "4680:27:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "4664:43:38" }, { "assignments": [ 44947 ], "declarations": [ { "constant": false, "id": 44947, "mutability": "mutable", "name": "r", "nameLocation": "4726:1:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "4718:9:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 44946, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4718:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 44949, "initialValue": { "id": 44948, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44938, "src": "4730:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", "src": "4718:17:38" }, { "assignments": [ 44951 ], "declarations": [ { "constant": false, "id": 44951, "mutability": "mutable", "name": "msb", "nameLocation": "4753:3:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "4745:11:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 44950, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "4745:7:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "id": 44953, "initialValue": { "hexValue": "30", "id": 44952, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "4759:1:38", "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", "typeString": "int_const 0" }, "value": "0" }, "nodeType": "VariableDeclarationStatement", "src": "4745:15:38" }, { "AST": { "nativeSrc": "4780:139:38", "nodeType": "YulBlock", "src": "4780:139:38", "statements": [ { "nativeSrc": "4794:58:38", "nodeType": "YulVariableDeclaration", "src": "4794:58:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "4807:1:38", "nodeType": "YulLiteral", "src": "4807:1:38", "type": "", "value": "7" }, { "arguments": [ { "name": "r", "nativeSrc": "4813:1:38", "nodeType": "YulIdentifier", "src": "4813:1:38" }, { "kind": "number", "nativeSrc": "4816:34:38", "nodeType": "YulLiteral", "src": "4816:34:38", "type": "", "value": "0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" } ], "functionName": { "name": "gt", "nativeSrc": "4810:2:38", "nodeType": "YulIdentifier", "src": "4810:2:38" }, "nativeSrc": "4810:41:38", "nodeType": "YulFunctionCall", "src": "4810:41:38" } ], "functionName": { "name": "shl", "nativeSrc": "4803:3:38", "nodeType": "YulIdentifier", "src": "4803:3:38" }, "nativeSrc": "4803:49:38", "nodeType": "YulFunctionCall", "src": "4803:49:38" }, "variables": [ { "name": "f", "nativeSrc": "4798:1:38", "nodeType": "YulTypedName", "src": "4798:1:38", "type": "" } ] }, { "nativeSrc": "4865:17:38", "nodeType": "YulAssignment", "src": "4865:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "4875:3:38", "nodeType": "YulIdentifier", "src": "4875:3:38" }, { "name": "f", "nativeSrc": "4880:1:38", "nodeType": "YulIdentifier", "src": "4880:1:38" } ], "functionName": { "name": "or", "nativeSrc": "4872:2:38", "nodeType": "YulIdentifier", "src": "4872:2:38" }, "nativeSrc": "4872:10:38", "nodeType": "YulFunctionCall", "src": "4872:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "4865:3:38", "nodeType": "YulIdentifier", "src": "4865:3:38" } ] }, { "nativeSrc": "4895:14:38", "nodeType": "YulAssignment", "src": "4895:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "4904:1:38", "nodeType": "YulIdentifier", "src": "4904:1:38" }, { "name": "r", "nativeSrc": "4907:1:38", "nodeType": "YulIdentifier", "src": "4907:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "4900:3:38", "nodeType": "YulIdentifier", "src": "4900:3:38" }, "nativeSrc": "4900:9:38", "nodeType": "YulFunctionCall", "src": "4900:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "4895:1:38", "nodeType": "YulIdentifier", "src": "4895:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "4865:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "4875:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "4813:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "4895:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "4907:1:38", "valueSize": 1 } ], "id": 44954, "nodeType": "InlineAssembly", "src": "4771:148:38" }, { "AST": { "nativeSrc": "4937:123:38", "nodeType": "YulBlock", "src": "4937:123:38", "statements": [ { "nativeSrc": "4951:42:38", "nodeType": "YulVariableDeclaration", "src": "4951:42:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "4964:1:38", "nodeType": "YulLiteral", "src": "4964:1:38", "type": "", "value": "6" }, { "arguments": [ { "name": "r", "nativeSrc": "4970:1:38", "nodeType": "YulIdentifier", "src": "4970:1:38" }, { "kind": "number", "nativeSrc": "4973:18:38", "nodeType": "YulLiteral", "src": "4973:18:38", "type": "", "value": "0xFFFFFFFFFFFFFFFF" } ], "functionName": { "name": "gt", "nativeSrc": "4967:2:38", "nodeType": "YulIdentifier", "src": "4967:2:38" }, "nativeSrc": "4967:25:38", "nodeType": "YulFunctionCall", "src": "4967:25:38" } ], "functionName": { "name": "shl", "nativeSrc": "4960:3:38", "nodeType": "YulIdentifier", "src": "4960:3:38" }, "nativeSrc": "4960:33:38", "nodeType": "YulFunctionCall", "src": "4960:33:38" }, "variables": [ { "name": "f", "nativeSrc": "4955:1:38", "nodeType": "YulTypedName", "src": "4955:1:38", "type": "" } ] }, { "nativeSrc": "5006:17:38", "nodeType": "YulAssignment", "src": "5006:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5016:3:38", "nodeType": "YulIdentifier", "src": "5016:3:38" }, { "name": "f", "nativeSrc": "5021:1:38", "nodeType": "YulIdentifier", "src": "5021:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5013:2:38", "nodeType": "YulIdentifier", "src": "5013:2:38" }, "nativeSrc": "5013:10:38", "nodeType": "YulFunctionCall", "src": "5013:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5006:3:38", "nodeType": "YulIdentifier", "src": "5006:3:38" } ] }, { "nativeSrc": "5036:14:38", "nodeType": "YulAssignment", "src": "5036:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "5045:1:38", "nodeType": "YulIdentifier", "src": "5045:1:38" }, { "name": "r", "nativeSrc": "5048:1:38", "nodeType": "YulIdentifier", "src": "5048:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "5041:3:38", "nodeType": "YulIdentifier", "src": "5041:3:38" }, "nativeSrc": "5041:9:38", "nodeType": "YulFunctionCall", "src": "5041:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5036:1:38", "nodeType": "YulIdentifier", "src": "5036:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5006:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5016:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "4970:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5036:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5048:1:38", "valueSize": 1 } ], "id": 44955, "nodeType": "InlineAssembly", "src": "4928:132:38" }, { "AST": { "nativeSrc": "5078:115:38", "nodeType": "YulBlock", "src": "5078:115:38", "statements": [ { "nativeSrc": "5092:34:38", "nodeType": "YulVariableDeclaration", "src": "5092:34:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "5105:1:38", "nodeType": "YulLiteral", "src": "5105:1:38", "type": "", "value": "5" }, { "arguments": [ { "name": "r", "nativeSrc": "5111:1:38", "nodeType": "YulIdentifier", "src": "5111:1:38" }, { "kind": "number", "nativeSrc": "5114:10:38", "nodeType": "YulLiteral", "src": "5114:10:38", "type": "", "value": "0xFFFFFFFF" } ], "functionName": { "name": "gt", "nativeSrc": "5108:2:38", "nodeType": "YulIdentifier", "src": "5108:2:38" }, "nativeSrc": "5108:17:38", "nodeType": "YulFunctionCall", "src": "5108:17:38" } ], "functionName": { "name": "shl", "nativeSrc": "5101:3:38", "nodeType": "YulIdentifier", "src": "5101:3:38" }, "nativeSrc": "5101:25:38", "nodeType": "YulFunctionCall", "src": "5101:25:38" }, "variables": [ { "name": "f", "nativeSrc": "5096:1:38", "nodeType": "YulTypedName", "src": "5096:1:38", "type": "" } ] }, { "nativeSrc": "5139:17:38", "nodeType": "YulAssignment", "src": "5139:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5149:3:38", "nodeType": "YulIdentifier", "src": "5149:3:38" }, { "name": "f", "nativeSrc": "5154:1:38", "nodeType": "YulIdentifier", "src": "5154:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5146:2:38", "nodeType": "YulIdentifier", "src": "5146:2:38" }, "nativeSrc": "5146:10:38", "nodeType": "YulFunctionCall", "src": "5146:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5139:3:38", "nodeType": "YulIdentifier", "src": "5139:3:38" } ] }, { "nativeSrc": "5169:14:38", "nodeType": "YulAssignment", "src": "5169:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "5178:1:38", "nodeType": "YulIdentifier", "src": "5178:1:38" }, { "name": "r", "nativeSrc": "5181:1:38", "nodeType": "YulIdentifier", "src": "5181:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "5174:3:38", "nodeType": "YulIdentifier", "src": "5174:3:38" }, "nativeSrc": "5174:9:38", "nodeType": "YulFunctionCall", "src": "5174:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5169:1:38", "nodeType": "YulIdentifier", "src": "5169:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5139:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5149:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5111:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5169:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5181:1:38", "valueSize": 1 } ], "id": 44956, "nodeType": "InlineAssembly", "src": "5069:124:38" }, { "AST": { "nativeSrc": "5211:111:38", "nodeType": "YulBlock", "src": "5211:111:38", "statements": [ { "nativeSrc": "5225:30:38", "nodeType": "YulVariableDeclaration", "src": "5225:30:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "5238:1:38", "nodeType": "YulLiteral", "src": "5238:1:38", "type": "", "value": "4" }, { "arguments": [ { "name": "r", "nativeSrc": "5244:1:38", "nodeType": "YulIdentifier", "src": "5244:1:38" }, { "kind": "number", "nativeSrc": "5247:6:38", "nodeType": "YulLiteral", "src": "5247:6:38", "type": "", "value": "0xFFFF" } ], "functionName": { "name": "gt", "nativeSrc": "5241:2:38", "nodeType": "YulIdentifier", "src": "5241:2:38" }, "nativeSrc": "5241:13:38", "nodeType": "YulFunctionCall", "src": "5241:13:38" } ], "functionName": { "name": "shl", "nativeSrc": "5234:3:38", "nodeType": "YulIdentifier", "src": "5234:3:38" }, "nativeSrc": "5234:21:38", "nodeType": "YulFunctionCall", "src": "5234:21:38" }, "variables": [ { "name": "f", "nativeSrc": "5229:1:38", "nodeType": "YulTypedName", "src": "5229:1:38", "type": "" } ] }, { "nativeSrc": "5268:17:38", "nodeType": "YulAssignment", "src": "5268:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5278:3:38", "nodeType": "YulIdentifier", "src": "5278:3:38" }, { "name": "f", "nativeSrc": "5283:1:38", "nodeType": "YulIdentifier", "src": "5283:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5275:2:38", "nodeType": "YulIdentifier", "src": "5275:2:38" }, "nativeSrc": "5275:10:38", "nodeType": "YulFunctionCall", "src": "5275:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5268:3:38", "nodeType": "YulIdentifier", "src": "5268:3:38" } ] }, { "nativeSrc": "5298:14:38", "nodeType": "YulAssignment", "src": "5298:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "5307:1:38", "nodeType": "YulIdentifier", "src": "5307:1:38" }, { "name": "r", "nativeSrc": "5310:1:38", "nodeType": "YulIdentifier", "src": "5310:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "5303:3:38", "nodeType": "YulIdentifier", "src": "5303:3:38" }, "nativeSrc": "5303:9:38", "nodeType": "YulFunctionCall", "src": "5303:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5298:1:38", "nodeType": "YulIdentifier", "src": "5298:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5268:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5278:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5244:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5298:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5310:1:38", "valueSize": 1 } ], "id": 44957, "nodeType": "InlineAssembly", "src": "5202:120:38" }, { "AST": { "nativeSrc": "5340:109:38", "nodeType": "YulBlock", "src": "5340:109:38", "statements": [ { "nativeSrc": "5354:28:38", "nodeType": "YulVariableDeclaration", "src": "5354:28:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "5367:1:38", "nodeType": "YulLiteral", "src": "5367:1:38", "type": "", "value": "3" }, { "arguments": [ { "name": "r", "nativeSrc": "5373:1:38", "nodeType": "YulIdentifier", "src": "5373:1:38" }, { "kind": "number", "nativeSrc": "5376:4:38", "nodeType": "YulLiteral", "src": "5376:4:38", "type": "", "value": "0xFF" } ], "functionName": { "name": "gt", "nativeSrc": "5370:2:38", "nodeType": "YulIdentifier", "src": "5370:2:38" }, "nativeSrc": "5370:11:38", "nodeType": "YulFunctionCall", "src": "5370:11:38" } ], "functionName": { "name": "shl", "nativeSrc": "5363:3:38", "nodeType": "YulIdentifier", "src": "5363:3:38" }, "nativeSrc": "5363:19:38", "nodeType": "YulFunctionCall", "src": "5363:19:38" }, "variables": [ { "name": "f", "nativeSrc": "5358:1:38", "nodeType": "YulTypedName", "src": "5358:1:38", "type": "" } ] }, { "nativeSrc": "5395:17:38", "nodeType": "YulAssignment", "src": "5395:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5405:3:38", "nodeType": "YulIdentifier", "src": "5405:3:38" }, { "name": "f", "nativeSrc": "5410:1:38", "nodeType": "YulIdentifier", "src": "5410:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5402:2:38", "nodeType": "YulIdentifier", "src": "5402:2:38" }, "nativeSrc": "5402:10:38", "nodeType": "YulFunctionCall", "src": "5402:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5395:3:38", "nodeType": "YulIdentifier", "src": "5395:3:38" } ] }, { "nativeSrc": "5425:14:38", "nodeType": "YulAssignment", "src": "5425:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "5434:1:38", "nodeType": "YulIdentifier", "src": "5434:1:38" }, { "name": "r", "nativeSrc": "5437:1:38", "nodeType": "YulIdentifier", "src": "5437:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "5430:3:38", "nodeType": "YulIdentifier", "src": "5430:3:38" }, "nativeSrc": "5430:9:38", "nodeType": "YulFunctionCall", "src": "5430:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5425:1:38", "nodeType": "YulIdentifier", "src": "5425:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5395:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5405:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5373:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5425:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5437:1:38", "valueSize": 1 } ], "id": 44958, "nodeType": "InlineAssembly", "src": "5331:118:38" }, { "AST": { "nativeSrc": "5467:108:38", "nodeType": "YulBlock", "src": "5467:108:38", "statements": [ { "nativeSrc": "5481:27:38", "nodeType": "YulVariableDeclaration", "src": "5481:27:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "5494:1:38", "nodeType": "YulLiteral", "src": "5494:1:38", "type": "", "value": "2" }, { "arguments": [ { "name": "r", "nativeSrc": "5500:1:38", "nodeType": "YulIdentifier", "src": "5500:1:38" }, { "kind": "number", "nativeSrc": "5503:3:38", "nodeType": "YulLiteral", "src": "5503:3:38", "type": "", "value": "0xF" } ], "functionName": { "name": "gt", "nativeSrc": "5497:2:38", "nodeType": "YulIdentifier", "src": "5497:2:38" }, "nativeSrc": "5497:10:38", "nodeType": "YulFunctionCall", "src": "5497:10:38" } ], "functionName": { "name": "shl", "nativeSrc": "5490:3:38", "nodeType": "YulIdentifier", "src": "5490:3:38" }, "nativeSrc": "5490:18:38", "nodeType": "YulFunctionCall", "src": "5490:18:38" }, "variables": [ { "name": "f", "nativeSrc": "5485:1:38", "nodeType": "YulTypedName", "src": "5485:1:38", "type": "" } ] }, { "nativeSrc": "5521:17:38", "nodeType": "YulAssignment", "src": "5521:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5531:3:38", "nodeType": "YulIdentifier", "src": "5531:3:38" }, { "name": "f", "nativeSrc": "5536:1:38", "nodeType": "YulIdentifier", "src": "5536:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5528:2:38", "nodeType": "YulIdentifier", "src": "5528:2:38" }, "nativeSrc": "5528:10:38", "nodeType": "YulFunctionCall", "src": "5528:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5521:3:38", "nodeType": "YulIdentifier", "src": "5521:3:38" } ] }, { "nativeSrc": "5551:14:38", "nodeType": "YulAssignment", "src": "5551:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "5560:1:38", "nodeType": "YulIdentifier", "src": "5560:1:38" }, { "name": "r", "nativeSrc": "5563:1:38", "nodeType": "YulIdentifier", "src": "5563:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "5556:3:38", "nodeType": "YulIdentifier", "src": "5556:3:38" }, "nativeSrc": "5556:9:38", "nodeType": "YulFunctionCall", "src": "5556:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5551:1:38", "nodeType": "YulIdentifier", "src": "5551:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5521:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5531:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5500:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5551:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5563:1:38", "valueSize": 1 } ], "id": 44959, "nodeType": "InlineAssembly", "src": "5458:117:38" }, { "AST": { "nativeSrc": "5593:108:38", "nodeType": "YulBlock", "src": "5593:108:38", "statements": [ { "nativeSrc": "5607:27:38", "nodeType": "YulVariableDeclaration", "src": "5607:27:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "5620:1:38", "nodeType": "YulLiteral", "src": "5620:1:38", "type": "", "value": "1" }, { "arguments": [ { "name": "r", "nativeSrc": "5626:1:38", "nodeType": "YulIdentifier", "src": "5626:1:38" }, { "kind": "number", "nativeSrc": "5629:3:38", "nodeType": "YulLiteral", "src": "5629:3:38", "type": "", "value": "0x3" } ], "functionName": { "name": "gt", "nativeSrc": "5623:2:38", "nodeType": "YulIdentifier", "src": "5623:2:38" }, "nativeSrc": "5623:10:38", "nodeType": "YulFunctionCall", "src": "5623:10:38" } ], "functionName": { "name": "shl", "nativeSrc": "5616:3:38", "nodeType": "YulIdentifier", "src": "5616:3:38" }, "nativeSrc": "5616:18:38", "nodeType": "YulFunctionCall", "src": "5616:18:38" }, "variables": [ { "name": "f", "nativeSrc": "5611:1:38", "nodeType": "YulTypedName", "src": "5611:1:38", "type": "" } ] }, { "nativeSrc": "5647:17:38", "nodeType": "YulAssignment", "src": "5647:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5657:3:38", "nodeType": "YulIdentifier", "src": "5657:3:38" }, { "name": "f", "nativeSrc": "5662:1:38", "nodeType": "YulIdentifier", "src": "5662:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5654:2:38", "nodeType": "YulIdentifier", "src": "5654:2:38" }, "nativeSrc": "5654:10:38", "nodeType": "YulFunctionCall", "src": "5654:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5647:3:38", "nodeType": "YulIdentifier", "src": "5647:3:38" } ] }, { "nativeSrc": "5677:14:38", "nodeType": "YulAssignment", "src": "5677:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "5686:1:38", "nodeType": "YulIdentifier", "src": "5686:1:38" }, { "name": "r", "nativeSrc": "5689:1:38", "nodeType": "YulIdentifier", "src": "5689:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "5682:3:38", "nodeType": "YulIdentifier", "src": "5682:3:38" }, "nativeSrc": "5682:9:38", "nodeType": "YulFunctionCall", "src": "5682:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5677:1:38", "nodeType": "YulIdentifier", "src": "5677:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5647:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5657:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5626:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5677:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5689:1:38", "valueSize": 1 } ], "id": 44960, "nodeType": "InlineAssembly", "src": "5584:117:38" }, { "AST": { "nativeSrc": "5719:73:38", "nodeType": "YulBlock", "src": "5719:73:38", "statements": [ { "nativeSrc": "5733:19:38", "nodeType": "YulVariableDeclaration", "src": "5733:19:38", "value": { "arguments": [ { "name": "r", "nativeSrc": "5745:1:38", "nodeType": "YulIdentifier", "src": "5745:1:38" }, { "kind": "number", "nativeSrc": "5748:3:38", "nodeType": "YulLiteral", "src": "5748:3:38", "type": "", "value": "0x1" } ], "functionName": { "name": "gt", "nativeSrc": "5742:2:38", "nodeType": "YulIdentifier", "src": "5742:2:38" }, "nativeSrc": "5742:10:38", "nodeType": "YulFunctionCall", "src": "5742:10:38" }, "variables": [ { "name": "f", "nativeSrc": "5737:1:38", "nodeType": "YulTypedName", "src": "5737:1:38", "type": "" } ] }, { "nativeSrc": "5765:17:38", "nodeType": "YulAssignment", "src": "5765:17:38", "value": { "arguments": [ { "name": "msb", "nativeSrc": "5775:3:38", "nodeType": "YulIdentifier", "src": "5775:3:38" }, { "name": "f", "nativeSrc": "5780:1:38", "nodeType": "YulIdentifier", "src": "5780:1:38" } ], "functionName": { "name": "or", "nativeSrc": "5772:2:38", "nodeType": "YulIdentifier", "src": "5772:2:38" }, "nativeSrc": "5772:10:38", "nodeType": "YulFunctionCall", "src": "5772:10:38" }, "variableNames": [ { "name": "msb", "nativeSrc": "5765:3:38", "nodeType": "YulIdentifier", "src": "5765:3:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5765:3:38", "valueSize": 1 }, { "declaration": 44951, "isOffset": false, "isSlot": false, "src": "5775:3:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5745:1:38", "valueSize": 1 } ], "id": 44961, "nodeType": "InlineAssembly", "src": "5710:82:38" }, { "condition": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44964, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44962, "name": "msb", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44951, "src": "5806:3:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">=", "rightExpression": { "hexValue": "313238", "id": 44963, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5813:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "5806:10:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { "expression": { "id": 44981, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44974, "name": "r", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44947, "src": "5857:1:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44980, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44975, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44938, "src": "5861:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "<<", "rightExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44978, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "hexValue": "313237", "id": 44976, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5871:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_127_by_1", "typeString": "int_const 127" }, "value": "127" }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "id": 44977, "name": "msb", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44951, "src": "5877:3:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5871:9:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44979, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "5870:11:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5861:20:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5857:24:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44982, "nodeType": "ExpressionStatement", "src": "5857:24:38" }, "id": 44983, "nodeType": "IfStatement", "src": "5802:79:38", "trueBody": { "expression": { "id": 44972, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 44965, "name": "r", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44947, "src": "5818:1:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44971, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44966, "name": "ratio", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44938, "src": "5822:5:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "components": [ { "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "id": 44969, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 44967, "name": "msb", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44951, "src": "5832:3:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "313237", "id": 44968, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5838:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_127_by_1", "typeString": "int_const 127" }, "value": "127" }, "src": "5832:9:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "id": 44970, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "5831:11:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5822:20:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "5818:24:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 44973, "nodeType": "ExpressionStatement", "src": "5818:24:38" } }, { "assignments": [ 44985 ], "declarations": [ { "constant": false, "id": 44985, "mutability": "mutable", "name": "log_2", "nameLocation": "5899:5:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "5892:12:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 44984, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5892:6:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 44995, "initialValue": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 44994, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 44991, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "id": 44988, "name": "msb", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44951, "src": "5915:3:38", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 44987, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "5908:6:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_int256_$", "typeString": "type(int256)" }, "typeName": { "id": 44986, "name": "int256", "nodeType": "ElementaryTypeName", "src": "5908:6:38", "typeDescriptions": {} } }, "id": 44989, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "5908:11:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "313238", "id": 44990, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5922:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "5908:17:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "id": 44992, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "5907:19:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "<<", "rightExpression": { "hexValue": "3634", "id": 44993, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "5930:2:38", "typeDescriptions": { "typeIdentifier": "t_rational_64_by_1", "typeString": "int_const 64" }, "value": "64" }, "src": "5907:25:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "5892:40:38" }, { "AST": { "nativeSrc": "5952:151:38", "nodeType": "YulBlock", "src": "5952:151:38", "statements": [ { "nativeSrc": "5966:24:38", "nodeType": "YulAssignment", "src": "5966:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "5975:3:38", "nodeType": "YulLiteral", "src": "5975:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "5984:1:38", "nodeType": "YulIdentifier", "src": "5984:1:38" }, { "name": "r", "nativeSrc": "5987:1:38", "nodeType": "YulIdentifier", "src": "5987:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "5980:3:38", "nodeType": "YulIdentifier", "src": "5980:3:38" }, "nativeSrc": "5980:9:38", "nodeType": "YulFunctionCall", "src": "5980:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "5971:3:38", "nodeType": "YulIdentifier", "src": "5971:3:38" }, "nativeSrc": "5971:19:38", "nodeType": "YulFunctionCall", "src": "5971:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "5966:1:38", "nodeType": "YulIdentifier", "src": "5966:1:38" } ] }, { "nativeSrc": "6003:20:38", "nodeType": "YulVariableDeclaration", "src": "6003:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6016:3:38", "nodeType": "YulLiteral", "src": "6016:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "6021:1:38", "nodeType": "YulIdentifier", "src": "6021:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6012:3:38", "nodeType": "YulIdentifier", "src": "6012:3:38" }, "nativeSrc": "6012:11:38", "nodeType": "YulFunctionCall", "src": "6012:11:38" }, "variables": [ { "name": "f", "nativeSrc": "6007:1:38", "nodeType": "YulTypedName", "src": "6007:1:38", "type": "" } ] }, { "nativeSrc": "6036:30:38", "nodeType": "YulAssignment", "src": "6036:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "6048:5:38", "nodeType": "YulIdentifier", "src": "6048:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "6059:2:38", "nodeType": "YulLiteral", "src": "6059:2:38", "type": "", "value": "63" }, { "name": "f", "nativeSrc": "6063:1:38", "nodeType": "YulIdentifier", "src": "6063:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "6055:3:38", "nodeType": "YulIdentifier", "src": "6055:3:38" }, "nativeSrc": "6055:10:38", "nodeType": "YulFunctionCall", "src": "6055:10:38" } ], "functionName": { "name": "or", "nativeSrc": "6045:2:38", "nodeType": "YulIdentifier", "src": "6045:2:38" }, "nativeSrc": "6045:21:38", "nodeType": "YulFunctionCall", "src": "6045:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "6036:5:38", "nodeType": "YulIdentifier", "src": "6036:5:38" } ] }, { "nativeSrc": "6079:14:38", "nodeType": "YulAssignment", "src": "6079:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "6088:1:38", "nodeType": "YulIdentifier", "src": "6088:1:38" }, { "name": "r", "nativeSrc": "6091:1:38", "nodeType": "YulIdentifier", "src": "6091:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6084:3:38", "nodeType": "YulIdentifier", "src": "6084:3:38" }, "nativeSrc": "6084:9:38", "nodeType": "YulFunctionCall", "src": "6084:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6079:1:38", "nodeType": "YulIdentifier", "src": "6079:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6036:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6048:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5966:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5984:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "5987:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6021:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6079:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6091:1:38", "valueSize": 1 } ], "id": 44996, "nodeType": "InlineAssembly", "src": "5943:160:38" }, { "AST": { "nativeSrc": "6121:151:38", "nodeType": "YulBlock", "src": "6121:151:38", "statements": [ { "nativeSrc": "6135:24:38", "nodeType": "YulAssignment", "src": "6135:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6144:3:38", "nodeType": "YulLiteral", "src": "6144:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "6153:1:38", "nodeType": "YulIdentifier", "src": "6153:1:38" }, { "name": "r", "nativeSrc": "6156:1:38", "nodeType": "YulIdentifier", "src": "6156:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "6149:3:38", "nodeType": "YulIdentifier", "src": "6149:3:38" }, "nativeSrc": "6149:9:38", "nodeType": "YulFunctionCall", "src": "6149:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "6140:3:38", "nodeType": "YulIdentifier", "src": "6140:3:38" }, "nativeSrc": "6140:19:38", "nodeType": "YulFunctionCall", "src": "6140:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6135:1:38", "nodeType": "YulIdentifier", "src": "6135:1:38" } ] }, { "nativeSrc": "6172:20:38", "nodeType": "YulVariableDeclaration", "src": "6172:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6185:3:38", "nodeType": "YulLiteral", "src": "6185:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "6190:1:38", "nodeType": "YulIdentifier", "src": "6190:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6181:3:38", "nodeType": "YulIdentifier", "src": "6181:3:38" }, "nativeSrc": "6181:11:38", "nodeType": "YulFunctionCall", "src": "6181:11:38" }, "variables": [ { "name": "f", "nativeSrc": "6176:1:38", "nodeType": "YulTypedName", "src": "6176:1:38", "type": "" } ] }, { "nativeSrc": "6205:30:38", "nodeType": "YulAssignment", "src": "6205:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "6217:5:38", "nodeType": "YulIdentifier", "src": "6217:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "6228:2:38", "nodeType": "YulLiteral", "src": "6228:2:38", "type": "", "value": "62" }, { "name": "f", "nativeSrc": "6232:1:38", "nodeType": "YulIdentifier", "src": "6232:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "6224:3:38", "nodeType": "YulIdentifier", "src": "6224:3:38" }, "nativeSrc": "6224:10:38", "nodeType": "YulFunctionCall", "src": "6224:10:38" } ], "functionName": { "name": "or", "nativeSrc": "6214:2:38", "nodeType": "YulIdentifier", "src": "6214:2:38" }, "nativeSrc": "6214:21:38", "nodeType": "YulFunctionCall", "src": "6214:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "6205:5:38", "nodeType": "YulIdentifier", "src": "6205:5:38" } ] }, { "nativeSrc": "6248:14:38", "nodeType": "YulAssignment", "src": "6248:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "6257:1:38", "nodeType": "YulIdentifier", "src": "6257:1:38" }, { "name": "r", "nativeSrc": "6260:1:38", "nodeType": "YulIdentifier", "src": "6260:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6253:3:38", "nodeType": "YulIdentifier", "src": "6253:3:38" }, "nativeSrc": "6253:9:38", "nodeType": "YulFunctionCall", "src": "6253:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6248:1:38", "nodeType": "YulIdentifier", "src": "6248:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6205:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6217:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6135:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6153:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6156:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6190:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6248:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6260:1:38", "valueSize": 1 } ], "id": 44997, "nodeType": "InlineAssembly", "src": "6112:160:38" }, { "AST": { "nativeSrc": "6290:151:38", "nodeType": "YulBlock", "src": "6290:151:38", "statements": [ { "nativeSrc": "6304:24:38", "nodeType": "YulAssignment", "src": "6304:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6313:3:38", "nodeType": "YulLiteral", "src": "6313:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "6322:1:38", "nodeType": "YulIdentifier", "src": "6322:1:38" }, { "name": "r", "nativeSrc": "6325:1:38", "nodeType": "YulIdentifier", "src": "6325:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "6318:3:38", "nodeType": "YulIdentifier", "src": "6318:3:38" }, "nativeSrc": "6318:9:38", "nodeType": "YulFunctionCall", "src": "6318:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "6309:3:38", "nodeType": "YulIdentifier", "src": "6309:3:38" }, "nativeSrc": "6309:19:38", "nodeType": "YulFunctionCall", "src": "6309:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6304:1:38", "nodeType": "YulIdentifier", "src": "6304:1:38" } ] }, { "nativeSrc": "6341:20:38", "nodeType": "YulVariableDeclaration", "src": "6341:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6354:3:38", "nodeType": "YulLiteral", "src": "6354:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "6359:1:38", "nodeType": "YulIdentifier", "src": "6359:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6350:3:38", "nodeType": "YulIdentifier", "src": "6350:3:38" }, "nativeSrc": "6350:11:38", "nodeType": "YulFunctionCall", "src": "6350:11:38" }, "variables": [ { "name": "f", "nativeSrc": "6345:1:38", "nodeType": "YulTypedName", "src": "6345:1:38", "type": "" } ] }, { "nativeSrc": "6374:30:38", "nodeType": "YulAssignment", "src": "6374:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "6386:5:38", "nodeType": "YulIdentifier", "src": "6386:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "6397:2:38", "nodeType": "YulLiteral", "src": "6397:2:38", "type": "", "value": "61" }, { "name": "f", "nativeSrc": "6401:1:38", "nodeType": "YulIdentifier", "src": "6401:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "6393:3:38", "nodeType": "YulIdentifier", "src": "6393:3:38" }, "nativeSrc": "6393:10:38", "nodeType": "YulFunctionCall", "src": "6393:10:38" } ], "functionName": { "name": "or", "nativeSrc": "6383:2:38", "nodeType": "YulIdentifier", "src": "6383:2:38" }, "nativeSrc": "6383:21:38", "nodeType": "YulFunctionCall", "src": "6383:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "6374:5:38", "nodeType": "YulIdentifier", "src": "6374:5:38" } ] }, { "nativeSrc": "6417:14:38", "nodeType": "YulAssignment", "src": "6417:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "6426:1:38", "nodeType": "YulIdentifier", "src": "6426:1:38" }, { "name": "r", "nativeSrc": "6429:1:38", "nodeType": "YulIdentifier", "src": "6429:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6422:3:38", "nodeType": "YulIdentifier", "src": "6422:3:38" }, "nativeSrc": "6422:9:38", "nodeType": "YulFunctionCall", "src": "6422:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6417:1:38", "nodeType": "YulIdentifier", "src": "6417:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6374:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6386:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6304:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6322:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6325:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6359:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6417:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6429:1:38", "valueSize": 1 } ], "id": 44998, "nodeType": "InlineAssembly", "src": "6281:160:38" }, { "AST": { "nativeSrc": "6459:151:38", "nodeType": "YulBlock", "src": "6459:151:38", "statements": [ { "nativeSrc": "6473:24:38", "nodeType": "YulAssignment", "src": "6473:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6482:3:38", "nodeType": "YulLiteral", "src": "6482:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "6491:1:38", "nodeType": "YulIdentifier", "src": "6491:1:38" }, { "name": "r", "nativeSrc": "6494:1:38", "nodeType": "YulIdentifier", "src": "6494:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "6487:3:38", "nodeType": "YulIdentifier", "src": "6487:3:38" }, "nativeSrc": "6487:9:38", "nodeType": "YulFunctionCall", "src": "6487:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "6478:3:38", "nodeType": "YulIdentifier", "src": "6478:3:38" }, "nativeSrc": "6478:19:38", "nodeType": "YulFunctionCall", "src": "6478:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6473:1:38", "nodeType": "YulIdentifier", "src": "6473:1:38" } ] }, { "nativeSrc": "6510:20:38", "nodeType": "YulVariableDeclaration", "src": "6510:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6523:3:38", "nodeType": "YulLiteral", "src": "6523:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "6528:1:38", "nodeType": "YulIdentifier", "src": "6528:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6519:3:38", "nodeType": "YulIdentifier", "src": "6519:3:38" }, "nativeSrc": "6519:11:38", "nodeType": "YulFunctionCall", "src": "6519:11:38" }, "variables": [ { "name": "f", "nativeSrc": "6514:1:38", "nodeType": "YulTypedName", "src": "6514:1:38", "type": "" } ] }, { "nativeSrc": "6543:30:38", "nodeType": "YulAssignment", "src": "6543:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "6555:5:38", "nodeType": "YulIdentifier", "src": "6555:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "6566:2:38", "nodeType": "YulLiteral", "src": "6566:2:38", "type": "", "value": "60" }, { "name": "f", "nativeSrc": "6570:1:38", "nodeType": "YulIdentifier", "src": "6570:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "6562:3:38", "nodeType": "YulIdentifier", "src": "6562:3:38" }, "nativeSrc": "6562:10:38", "nodeType": "YulFunctionCall", "src": "6562:10:38" } ], "functionName": { "name": "or", "nativeSrc": "6552:2:38", "nodeType": "YulIdentifier", "src": "6552:2:38" }, "nativeSrc": "6552:21:38", "nodeType": "YulFunctionCall", "src": "6552:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "6543:5:38", "nodeType": "YulIdentifier", "src": "6543:5:38" } ] }, { "nativeSrc": "6586:14:38", "nodeType": "YulAssignment", "src": "6586:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "6595:1:38", "nodeType": "YulIdentifier", "src": "6595:1:38" }, { "name": "r", "nativeSrc": "6598:1:38", "nodeType": "YulIdentifier", "src": "6598:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6591:3:38", "nodeType": "YulIdentifier", "src": "6591:3:38" }, "nativeSrc": "6591:9:38", "nodeType": "YulFunctionCall", "src": "6591:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6586:1:38", "nodeType": "YulIdentifier", "src": "6586:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6543:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6555:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6473:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6491:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6494:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6528:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6586:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6598:1:38", "valueSize": 1 } ], "id": 44999, "nodeType": "InlineAssembly", "src": "6450:160:38" }, { "AST": { "nativeSrc": "6628:151:38", "nodeType": "YulBlock", "src": "6628:151:38", "statements": [ { "nativeSrc": "6642:24:38", "nodeType": "YulAssignment", "src": "6642:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6651:3:38", "nodeType": "YulLiteral", "src": "6651:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "6660:1:38", "nodeType": "YulIdentifier", "src": "6660:1:38" }, { "name": "r", "nativeSrc": "6663:1:38", "nodeType": "YulIdentifier", "src": "6663:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "6656:3:38", "nodeType": "YulIdentifier", "src": "6656:3:38" }, "nativeSrc": "6656:9:38", "nodeType": "YulFunctionCall", "src": "6656:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "6647:3:38", "nodeType": "YulIdentifier", "src": "6647:3:38" }, "nativeSrc": "6647:19:38", "nodeType": "YulFunctionCall", "src": "6647:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6642:1:38", "nodeType": "YulIdentifier", "src": "6642:1:38" } ] }, { "nativeSrc": "6679:20:38", "nodeType": "YulVariableDeclaration", "src": "6679:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6692:3:38", "nodeType": "YulLiteral", "src": "6692:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "6697:1:38", "nodeType": "YulIdentifier", "src": "6697:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6688:3:38", "nodeType": "YulIdentifier", "src": "6688:3:38" }, "nativeSrc": "6688:11:38", "nodeType": "YulFunctionCall", "src": "6688:11:38" }, "variables": [ { "name": "f", "nativeSrc": "6683:1:38", "nodeType": "YulTypedName", "src": "6683:1:38", "type": "" } ] }, { "nativeSrc": "6712:30:38", "nodeType": "YulAssignment", "src": "6712:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "6724:5:38", "nodeType": "YulIdentifier", "src": "6724:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "6735:2:38", "nodeType": "YulLiteral", "src": "6735:2:38", "type": "", "value": "59" }, { "name": "f", "nativeSrc": "6739:1:38", "nodeType": "YulIdentifier", "src": "6739:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "6731:3:38", "nodeType": "YulIdentifier", "src": "6731:3:38" }, "nativeSrc": "6731:10:38", "nodeType": "YulFunctionCall", "src": "6731:10:38" } ], "functionName": { "name": "or", "nativeSrc": "6721:2:38", "nodeType": "YulIdentifier", "src": "6721:2:38" }, "nativeSrc": "6721:21:38", "nodeType": "YulFunctionCall", "src": "6721:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "6712:5:38", "nodeType": "YulIdentifier", "src": "6712:5:38" } ] }, { "nativeSrc": "6755:14:38", "nodeType": "YulAssignment", "src": "6755:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "6764:1:38", "nodeType": "YulIdentifier", "src": "6764:1:38" }, { "name": "r", "nativeSrc": "6767:1:38", "nodeType": "YulIdentifier", "src": "6767:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6760:3:38", "nodeType": "YulIdentifier", "src": "6760:3:38" }, "nativeSrc": "6760:9:38", "nodeType": "YulFunctionCall", "src": "6760:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6755:1:38", "nodeType": "YulIdentifier", "src": "6755:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6712:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6724:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6642:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6660:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6663:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6697:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6755:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6767:1:38", "valueSize": 1 } ], "id": 45000, "nodeType": "InlineAssembly", "src": "6619:160:38" }, { "AST": { "nativeSrc": "6797:151:38", "nodeType": "YulBlock", "src": "6797:151:38", "statements": [ { "nativeSrc": "6811:24:38", "nodeType": "YulAssignment", "src": "6811:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6820:3:38", "nodeType": "YulLiteral", "src": "6820:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "6829:1:38", "nodeType": "YulIdentifier", "src": "6829:1:38" }, { "name": "r", "nativeSrc": "6832:1:38", "nodeType": "YulIdentifier", "src": "6832:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "6825:3:38", "nodeType": "YulIdentifier", "src": "6825:3:38" }, "nativeSrc": "6825:9:38", "nodeType": "YulFunctionCall", "src": "6825:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "6816:3:38", "nodeType": "YulIdentifier", "src": "6816:3:38" }, "nativeSrc": "6816:19:38", "nodeType": "YulFunctionCall", "src": "6816:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6811:1:38", "nodeType": "YulIdentifier", "src": "6811:1:38" } ] }, { "nativeSrc": "6848:20:38", "nodeType": "YulVariableDeclaration", "src": "6848:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6861:3:38", "nodeType": "YulLiteral", "src": "6861:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "6866:1:38", "nodeType": "YulIdentifier", "src": "6866:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6857:3:38", "nodeType": "YulIdentifier", "src": "6857:3:38" }, "nativeSrc": "6857:11:38", "nodeType": "YulFunctionCall", "src": "6857:11:38" }, "variables": [ { "name": "f", "nativeSrc": "6852:1:38", "nodeType": "YulTypedName", "src": "6852:1:38", "type": "" } ] }, { "nativeSrc": "6881:30:38", "nodeType": "YulAssignment", "src": "6881:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "6893:5:38", "nodeType": "YulIdentifier", "src": "6893:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "6904:2:38", "nodeType": "YulLiteral", "src": "6904:2:38", "type": "", "value": "58" }, { "name": "f", "nativeSrc": "6908:1:38", "nodeType": "YulIdentifier", "src": "6908:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "6900:3:38", "nodeType": "YulIdentifier", "src": "6900:3:38" }, "nativeSrc": "6900:10:38", "nodeType": "YulFunctionCall", "src": "6900:10:38" } ], "functionName": { "name": "or", "nativeSrc": "6890:2:38", "nodeType": "YulIdentifier", "src": "6890:2:38" }, "nativeSrc": "6890:21:38", "nodeType": "YulFunctionCall", "src": "6890:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "6881:5:38", "nodeType": "YulIdentifier", "src": "6881:5:38" } ] }, { "nativeSrc": "6924:14:38", "nodeType": "YulAssignment", "src": "6924:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "6933:1:38", "nodeType": "YulIdentifier", "src": "6933:1:38" }, { "name": "r", "nativeSrc": "6936:1:38", "nodeType": "YulIdentifier", "src": "6936:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "6929:3:38", "nodeType": "YulIdentifier", "src": "6929:3:38" }, "nativeSrc": "6929:9:38", "nodeType": "YulFunctionCall", "src": "6929:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6924:1:38", "nodeType": "YulIdentifier", "src": "6924:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6881:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "6893:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6811:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6829:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6832:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6866:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6924:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6936:1:38", "valueSize": 1 } ], "id": 45001, "nodeType": "InlineAssembly", "src": "6788:160:38" }, { "AST": { "nativeSrc": "6966:151:38", "nodeType": "YulBlock", "src": "6966:151:38", "statements": [ { "nativeSrc": "6980:24:38", "nodeType": "YulAssignment", "src": "6980:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "6989:3:38", "nodeType": "YulLiteral", "src": "6989:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "6998:1:38", "nodeType": "YulIdentifier", "src": "6998:1:38" }, { "name": "r", "nativeSrc": "7001:1:38", "nodeType": "YulIdentifier", "src": "7001:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "6994:3:38", "nodeType": "YulIdentifier", "src": "6994:3:38" }, "nativeSrc": "6994:9:38", "nodeType": "YulFunctionCall", "src": "6994:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "6985:3:38", "nodeType": "YulIdentifier", "src": "6985:3:38" }, "nativeSrc": "6985:19:38", "nodeType": "YulFunctionCall", "src": "6985:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "6980:1:38", "nodeType": "YulIdentifier", "src": "6980:1:38" } ] }, { "nativeSrc": "7017:20:38", "nodeType": "YulVariableDeclaration", "src": "7017:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7030:3:38", "nodeType": "YulLiteral", "src": "7030:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "7035:1:38", "nodeType": "YulIdentifier", "src": "7035:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7026:3:38", "nodeType": "YulIdentifier", "src": "7026:3:38" }, "nativeSrc": "7026:11:38", "nodeType": "YulFunctionCall", "src": "7026:11:38" }, "variables": [ { "name": "f", "nativeSrc": "7021:1:38", "nodeType": "YulTypedName", "src": "7021:1:38", "type": "" } ] }, { "nativeSrc": "7050:30:38", "nodeType": "YulAssignment", "src": "7050:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "7062:5:38", "nodeType": "YulIdentifier", "src": "7062:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "7073:2:38", "nodeType": "YulLiteral", "src": "7073:2:38", "type": "", "value": "57" }, { "name": "f", "nativeSrc": "7077:1:38", "nodeType": "YulIdentifier", "src": "7077:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "7069:3:38", "nodeType": "YulIdentifier", "src": "7069:3:38" }, "nativeSrc": "7069:10:38", "nodeType": "YulFunctionCall", "src": "7069:10:38" } ], "functionName": { "name": "or", "nativeSrc": "7059:2:38", "nodeType": "YulIdentifier", "src": "7059:2:38" }, "nativeSrc": "7059:21:38", "nodeType": "YulFunctionCall", "src": "7059:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "7050:5:38", "nodeType": "YulIdentifier", "src": "7050:5:38" } ] }, { "nativeSrc": "7093:14:38", "nodeType": "YulAssignment", "src": "7093:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "7102:1:38", "nodeType": "YulIdentifier", "src": "7102:1:38" }, { "name": "r", "nativeSrc": "7105:1:38", "nodeType": "YulIdentifier", "src": "7105:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7098:3:38", "nodeType": "YulIdentifier", "src": "7098:3:38" }, "nativeSrc": "7098:9:38", "nodeType": "YulFunctionCall", "src": "7098:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7093:1:38", "nodeType": "YulIdentifier", "src": "7093:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7050:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7062:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6980:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "6998:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7001:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7035:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7093:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7105:1:38", "valueSize": 1 } ], "id": 45002, "nodeType": "InlineAssembly", "src": "6957:160:38" }, { "AST": { "nativeSrc": "7135:151:38", "nodeType": "YulBlock", "src": "7135:151:38", "statements": [ { "nativeSrc": "7149:24:38", "nodeType": "YulAssignment", "src": "7149:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7158:3:38", "nodeType": "YulLiteral", "src": "7158:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "7167:1:38", "nodeType": "YulIdentifier", "src": "7167:1:38" }, { "name": "r", "nativeSrc": "7170:1:38", "nodeType": "YulIdentifier", "src": "7170:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "7163:3:38", "nodeType": "YulIdentifier", "src": "7163:3:38" }, "nativeSrc": "7163:9:38", "nodeType": "YulFunctionCall", "src": "7163:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "7154:3:38", "nodeType": "YulIdentifier", "src": "7154:3:38" }, "nativeSrc": "7154:19:38", "nodeType": "YulFunctionCall", "src": "7154:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7149:1:38", "nodeType": "YulIdentifier", "src": "7149:1:38" } ] }, { "nativeSrc": "7186:20:38", "nodeType": "YulVariableDeclaration", "src": "7186:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7199:3:38", "nodeType": "YulLiteral", "src": "7199:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "7204:1:38", "nodeType": "YulIdentifier", "src": "7204:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7195:3:38", "nodeType": "YulIdentifier", "src": "7195:3:38" }, "nativeSrc": "7195:11:38", "nodeType": "YulFunctionCall", "src": "7195:11:38" }, "variables": [ { "name": "f", "nativeSrc": "7190:1:38", "nodeType": "YulTypedName", "src": "7190:1:38", "type": "" } ] }, { "nativeSrc": "7219:30:38", "nodeType": "YulAssignment", "src": "7219:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "7231:5:38", "nodeType": "YulIdentifier", "src": "7231:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "7242:2:38", "nodeType": "YulLiteral", "src": "7242:2:38", "type": "", "value": "56" }, { "name": "f", "nativeSrc": "7246:1:38", "nodeType": "YulIdentifier", "src": "7246:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "7238:3:38", "nodeType": "YulIdentifier", "src": "7238:3:38" }, "nativeSrc": "7238:10:38", "nodeType": "YulFunctionCall", "src": "7238:10:38" } ], "functionName": { "name": "or", "nativeSrc": "7228:2:38", "nodeType": "YulIdentifier", "src": "7228:2:38" }, "nativeSrc": "7228:21:38", "nodeType": "YulFunctionCall", "src": "7228:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "7219:5:38", "nodeType": "YulIdentifier", "src": "7219:5:38" } ] }, { "nativeSrc": "7262:14:38", "nodeType": "YulAssignment", "src": "7262:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "7271:1:38", "nodeType": "YulIdentifier", "src": "7271:1:38" }, { "name": "r", "nativeSrc": "7274:1:38", "nodeType": "YulIdentifier", "src": "7274:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7267:3:38", "nodeType": "YulIdentifier", "src": "7267:3:38" }, "nativeSrc": "7267:9:38", "nodeType": "YulFunctionCall", "src": "7267:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7262:1:38", "nodeType": "YulIdentifier", "src": "7262:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7219:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7231:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7149:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7167:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7170:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7204:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7262:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7274:1:38", "valueSize": 1 } ], "id": 45003, "nodeType": "InlineAssembly", "src": "7126:160:38" }, { "AST": { "nativeSrc": "7304:151:38", "nodeType": "YulBlock", "src": "7304:151:38", "statements": [ { "nativeSrc": "7318:24:38", "nodeType": "YulAssignment", "src": "7318:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7327:3:38", "nodeType": "YulLiteral", "src": "7327:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "7336:1:38", "nodeType": "YulIdentifier", "src": "7336:1:38" }, { "name": "r", "nativeSrc": "7339:1:38", "nodeType": "YulIdentifier", "src": "7339:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "7332:3:38", "nodeType": "YulIdentifier", "src": "7332:3:38" }, "nativeSrc": "7332:9:38", "nodeType": "YulFunctionCall", "src": "7332:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "7323:3:38", "nodeType": "YulIdentifier", "src": "7323:3:38" }, "nativeSrc": "7323:19:38", "nodeType": "YulFunctionCall", "src": "7323:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7318:1:38", "nodeType": "YulIdentifier", "src": "7318:1:38" } ] }, { "nativeSrc": "7355:20:38", "nodeType": "YulVariableDeclaration", "src": "7355:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7368:3:38", "nodeType": "YulLiteral", "src": "7368:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "7373:1:38", "nodeType": "YulIdentifier", "src": "7373:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7364:3:38", "nodeType": "YulIdentifier", "src": "7364:3:38" }, "nativeSrc": "7364:11:38", "nodeType": "YulFunctionCall", "src": "7364:11:38" }, "variables": [ { "name": "f", "nativeSrc": "7359:1:38", "nodeType": "YulTypedName", "src": "7359:1:38", "type": "" } ] }, { "nativeSrc": "7388:30:38", "nodeType": "YulAssignment", "src": "7388:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "7400:5:38", "nodeType": "YulIdentifier", "src": "7400:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "7411:2:38", "nodeType": "YulLiteral", "src": "7411:2:38", "type": "", "value": "55" }, { "name": "f", "nativeSrc": "7415:1:38", "nodeType": "YulIdentifier", "src": "7415:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "7407:3:38", "nodeType": "YulIdentifier", "src": "7407:3:38" }, "nativeSrc": "7407:10:38", "nodeType": "YulFunctionCall", "src": "7407:10:38" } ], "functionName": { "name": "or", "nativeSrc": "7397:2:38", "nodeType": "YulIdentifier", "src": "7397:2:38" }, "nativeSrc": "7397:21:38", "nodeType": "YulFunctionCall", "src": "7397:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "7388:5:38", "nodeType": "YulIdentifier", "src": "7388:5:38" } ] }, { "nativeSrc": "7431:14:38", "nodeType": "YulAssignment", "src": "7431:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "7440:1:38", "nodeType": "YulIdentifier", "src": "7440:1:38" }, { "name": "r", "nativeSrc": "7443:1:38", "nodeType": "YulIdentifier", "src": "7443:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7436:3:38", "nodeType": "YulIdentifier", "src": "7436:3:38" }, "nativeSrc": "7436:9:38", "nodeType": "YulFunctionCall", "src": "7436:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7431:1:38", "nodeType": "YulIdentifier", "src": "7431:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7388:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7400:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7318:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7336:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7339:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7373:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7431:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7443:1:38", "valueSize": 1 } ], "id": 45004, "nodeType": "InlineAssembly", "src": "7295:160:38" }, { "AST": { "nativeSrc": "7473:151:38", "nodeType": "YulBlock", "src": "7473:151:38", "statements": [ { "nativeSrc": "7487:24:38", "nodeType": "YulAssignment", "src": "7487:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7496:3:38", "nodeType": "YulLiteral", "src": "7496:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "7505:1:38", "nodeType": "YulIdentifier", "src": "7505:1:38" }, { "name": "r", "nativeSrc": "7508:1:38", "nodeType": "YulIdentifier", "src": "7508:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "7501:3:38", "nodeType": "YulIdentifier", "src": "7501:3:38" }, "nativeSrc": "7501:9:38", "nodeType": "YulFunctionCall", "src": "7501:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "7492:3:38", "nodeType": "YulIdentifier", "src": "7492:3:38" }, "nativeSrc": "7492:19:38", "nodeType": "YulFunctionCall", "src": "7492:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7487:1:38", "nodeType": "YulIdentifier", "src": "7487:1:38" } ] }, { "nativeSrc": "7524:20:38", "nodeType": "YulVariableDeclaration", "src": "7524:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7537:3:38", "nodeType": "YulLiteral", "src": "7537:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "7542:1:38", "nodeType": "YulIdentifier", "src": "7542:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7533:3:38", "nodeType": "YulIdentifier", "src": "7533:3:38" }, "nativeSrc": "7533:11:38", "nodeType": "YulFunctionCall", "src": "7533:11:38" }, "variables": [ { "name": "f", "nativeSrc": "7528:1:38", "nodeType": "YulTypedName", "src": "7528:1:38", "type": "" } ] }, { "nativeSrc": "7557:30:38", "nodeType": "YulAssignment", "src": "7557:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "7569:5:38", "nodeType": "YulIdentifier", "src": "7569:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "7580:2:38", "nodeType": "YulLiteral", "src": "7580:2:38", "type": "", "value": "54" }, { "name": "f", "nativeSrc": "7584:1:38", "nodeType": "YulIdentifier", "src": "7584:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "7576:3:38", "nodeType": "YulIdentifier", "src": "7576:3:38" }, "nativeSrc": "7576:10:38", "nodeType": "YulFunctionCall", "src": "7576:10:38" } ], "functionName": { "name": "or", "nativeSrc": "7566:2:38", "nodeType": "YulIdentifier", "src": "7566:2:38" }, "nativeSrc": "7566:21:38", "nodeType": "YulFunctionCall", "src": "7566:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "7557:5:38", "nodeType": "YulIdentifier", "src": "7557:5:38" } ] }, { "nativeSrc": "7600:14:38", "nodeType": "YulAssignment", "src": "7600:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "7609:1:38", "nodeType": "YulIdentifier", "src": "7609:1:38" }, { "name": "r", "nativeSrc": "7612:1:38", "nodeType": "YulIdentifier", "src": "7612:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7605:3:38", "nodeType": "YulIdentifier", "src": "7605:3:38" }, "nativeSrc": "7605:9:38", "nodeType": "YulFunctionCall", "src": "7605:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7600:1:38", "nodeType": "YulIdentifier", "src": "7600:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7557:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7569:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7487:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7505:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7508:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7542:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7600:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7612:1:38", "valueSize": 1 } ], "id": 45005, "nodeType": "InlineAssembly", "src": "7464:160:38" }, { "AST": { "nativeSrc": "7642:151:38", "nodeType": "YulBlock", "src": "7642:151:38", "statements": [ { "nativeSrc": "7656:24:38", "nodeType": "YulAssignment", "src": "7656:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7665:3:38", "nodeType": "YulLiteral", "src": "7665:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "7674:1:38", "nodeType": "YulIdentifier", "src": "7674:1:38" }, { "name": "r", "nativeSrc": "7677:1:38", "nodeType": "YulIdentifier", "src": "7677:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "7670:3:38", "nodeType": "YulIdentifier", "src": "7670:3:38" }, "nativeSrc": "7670:9:38", "nodeType": "YulFunctionCall", "src": "7670:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "7661:3:38", "nodeType": "YulIdentifier", "src": "7661:3:38" }, "nativeSrc": "7661:19:38", "nodeType": "YulFunctionCall", "src": "7661:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7656:1:38", "nodeType": "YulIdentifier", "src": "7656:1:38" } ] }, { "nativeSrc": "7693:20:38", "nodeType": "YulVariableDeclaration", "src": "7693:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7706:3:38", "nodeType": "YulLiteral", "src": "7706:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "7711:1:38", "nodeType": "YulIdentifier", "src": "7711:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7702:3:38", "nodeType": "YulIdentifier", "src": "7702:3:38" }, "nativeSrc": "7702:11:38", "nodeType": "YulFunctionCall", "src": "7702:11:38" }, "variables": [ { "name": "f", "nativeSrc": "7697:1:38", "nodeType": "YulTypedName", "src": "7697:1:38", "type": "" } ] }, { "nativeSrc": "7726:30:38", "nodeType": "YulAssignment", "src": "7726:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "7738:5:38", "nodeType": "YulIdentifier", "src": "7738:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "7749:2:38", "nodeType": "YulLiteral", "src": "7749:2:38", "type": "", "value": "53" }, { "name": "f", "nativeSrc": "7753:1:38", "nodeType": "YulIdentifier", "src": "7753:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "7745:3:38", "nodeType": "YulIdentifier", "src": "7745:3:38" }, "nativeSrc": "7745:10:38", "nodeType": "YulFunctionCall", "src": "7745:10:38" } ], "functionName": { "name": "or", "nativeSrc": "7735:2:38", "nodeType": "YulIdentifier", "src": "7735:2:38" }, "nativeSrc": "7735:21:38", "nodeType": "YulFunctionCall", "src": "7735:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "7726:5:38", "nodeType": "YulIdentifier", "src": "7726:5:38" } ] }, { "nativeSrc": "7769:14:38", "nodeType": "YulAssignment", "src": "7769:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "7778:1:38", "nodeType": "YulIdentifier", "src": "7778:1:38" }, { "name": "r", "nativeSrc": "7781:1:38", "nodeType": "YulIdentifier", "src": "7781:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7774:3:38", "nodeType": "YulIdentifier", "src": "7774:3:38" }, "nativeSrc": "7774:9:38", "nodeType": "YulFunctionCall", "src": "7774:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7769:1:38", "nodeType": "YulIdentifier", "src": "7769:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7726:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7738:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7656:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7674:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7677:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7711:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7769:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7781:1:38", "valueSize": 1 } ], "id": 45006, "nodeType": "InlineAssembly", "src": "7633:160:38" }, { "AST": { "nativeSrc": "7811:151:38", "nodeType": "YulBlock", "src": "7811:151:38", "statements": [ { "nativeSrc": "7825:24:38", "nodeType": "YulAssignment", "src": "7825:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7834:3:38", "nodeType": "YulLiteral", "src": "7834:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "7843:1:38", "nodeType": "YulIdentifier", "src": "7843:1:38" }, { "name": "r", "nativeSrc": "7846:1:38", "nodeType": "YulIdentifier", "src": "7846:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "7839:3:38", "nodeType": "YulIdentifier", "src": "7839:3:38" }, "nativeSrc": "7839:9:38", "nodeType": "YulFunctionCall", "src": "7839:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "7830:3:38", "nodeType": "YulIdentifier", "src": "7830:3:38" }, "nativeSrc": "7830:19:38", "nodeType": "YulFunctionCall", "src": "7830:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7825:1:38", "nodeType": "YulIdentifier", "src": "7825:1:38" } ] }, { "nativeSrc": "7862:20:38", "nodeType": "YulVariableDeclaration", "src": "7862:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "7875:3:38", "nodeType": "YulLiteral", "src": "7875:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "7880:1:38", "nodeType": "YulIdentifier", "src": "7880:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7871:3:38", "nodeType": "YulIdentifier", "src": "7871:3:38" }, "nativeSrc": "7871:11:38", "nodeType": "YulFunctionCall", "src": "7871:11:38" }, "variables": [ { "name": "f", "nativeSrc": "7866:1:38", "nodeType": "YulTypedName", "src": "7866:1:38", "type": "" } ] }, { "nativeSrc": "7895:30:38", "nodeType": "YulAssignment", "src": "7895:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "7907:5:38", "nodeType": "YulIdentifier", "src": "7907:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "7918:2:38", "nodeType": "YulLiteral", "src": "7918:2:38", "type": "", "value": "52" }, { "name": "f", "nativeSrc": "7922:1:38", "nodeType": "YulIdentifier", "src": "7922:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "7914:3:38", "nodeType": "YulIdentifier", "src": "7914:3:38" }, "nativeSrc": "7914:10:38", "nodeType": "YulFunctionCall", "src": "7914:10:38" } ], "functionName": { "name": "or", "nativeSrc": "7904:2:38", "nodeType": "YulIdentifier", "src": "7904:2:38" }, "nativeSrc": "7904:21:38", "nodeType": "YulFunctionCall", "src": "7904:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "7895:5:38", "nodeType": "YulIdentifier", "src": "7895:5:38" } ] }, { "nativeSrc": "7938:14:38", "nodeType": "YulAssignment", "src": "7938:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "7947:1:38", "nodeType": "YulIdentifier", "src": "7947:1:38" }, { "name": "r", "nativeSrc": "7950:1:38", "nodeType": "YulIdentifier", "src": "7950:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "7943:3:38", "nodeType": "YulIdentifier", "src": "7943:3:38" }, "nativeSrc": "7943:9:38", "nodeType": "YulFunctionCall", "src": "7943:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7938:1:38", "nodeType": "YulIdentifier", "src": "7938:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7895:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "7907:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7825:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7843:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7846:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7880:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7938:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7950:1:38", "valueSize": 1 } ], "id": 45007, "nodeType": "InlineAssembly", "src": "7802:160:38" }, { "AST": { "nativeSrc": "7980:151:38", "nodeType": "YulBlock", "src": "7980:151:38", "statements": [ { "nativeSrc": "7994:24:38", "nodeType": "YulAssignment", "src": "7994:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "8003:3:38", "nodeType": "YulLiteral", "src": "8003:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "8012:1:38", "nodeType": "YulIdentifier", "src": "8012:1:38" }, { "name": "r", "nativeSrc": "8015:1:38", "nodeType": "YulIdentifier", "src": "8015:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "8008:3:38", "nodeType": "YulIdentifier", "src": "8008:3:38" }, "nativeSrc": "8008:9:38", "nodeType": "YulFunctionCall", "src": "8008:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "7999:3:38", "nodeType": "YulIdentifier", "src": "7999:3:38" }, "nativeSrc": "7999:19:38", "nodeType": "YulFunctionCall", "src": "7999:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "7994:1:38", "nodeType": "YulIdentifier", "src": "7994:1:38" } ] }, { "nativeSrc": "8031:20:38", "nodeType": "YulVariableDeclaration", "src": "8031:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "8044:3:38", "nodeType": "YulLiteral", "src": "8044:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "8049:1:38", "nodeType": "YulIdentifier", "src": "8049:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "8040:3:38", "nodeType": "YulIdentifier", "src": "8040:3:38" }, "nativeSrc": "8040:11:38", "nodeType": "YulFunctionCall", "src": "8040:11:38" }, "variables": [ { "name": "f", "nativeSrc": "8035:1:38", "nodeType": "YulTypedName", "src": "8035:1:38", "type": "" } ] }, { "nativeSrc": "8064:30:38", "nodeType": "YulAssignment", "src": "8064:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "8076:5:38", "nodeType": "YulIdentifier", "src": "8076:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "8087:2:38", "nodeType": "YulLiteral", "src": "8087:2:38", "type": "", "value": "51" }, { "name": "f", "nativeSrc": "8091:1:38", "nodeType": "YulIdentifier", "src": "8091:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "8083:3:38", "nodeType": "YulIdentifier", "src": "8083:3:38" }, "nativeSrc": "8083:10:38", "nodeType": "YulFunctionCall", "src": "8083:10:38" } ], "functionName": { "name": "or", "nativeSrc": "8073:2:38", "nodeType": "YulIdentifier", "src": "8073:2:38" }, "nativeSrc": "8073:21:38", "nodeType": "YulFunctionCall", "src": "8073:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "8064:5:38", "nodeType": "YulIdentifier", "src": "8064:5:38" } ] }, { "nativeSrc": "8107:14:38", "nodeType": "YulAssignment", "src": "8107:14:38", "value": { "arguments": [ { "name": "f", "nativeSrc": "8116:1:38", "nodeType": "YulIdentifier", "src": "8116:1:38" }, { "name": "r", "nativeSrc": "8119:1:38", "nodeType": "YulIdentifier", "src": "8119:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "8112:3:38", "nodeType": "YulIdentifier", "src": "8112:3:38" }, "nativeSrc": "8112:9:38", "nodeType": "YulFunctionCall", "src": "8112:9:38" }, "variableNames": [ { "name": "r", "nativeSrc": "8107:1:38", "nodeType": "YulIdentifier", "src": "8107:1:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "8064:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "8076:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "7994:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8012:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8015:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8049:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8107:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8119:1:38", "valueSize": 1 } ], "id": 45008, "nodeType": "InlineAssembly", "src": "7971:160:38" }, { "AST": { "nativeSrc": "8149:124:38", "nodeType": "YulBlock", "src": "8149:124:38", "statements": [ { "nativeSrc": "8163:24:38", "nodeType": "YulAssignment", "src": "8163:24:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "8172:3:38", "nodeType": "YulLiteral", "src": "8172:3:38", "type": "", "value": "127" }, { "arguments": [ { "name": "r", "nativeSrc": "8181:1:38", "nodeType": "YulIdentifier", "src": "8181:1:38" }, { "name": "r", "nativeSrc": "8184:1:38", "nodeType": "YulIdentifier", "src": "8184:1:38" } ], "functionName": { "name": "mul", "nativeSrc": "8177:3:38", "nodeType": "YulIdentifier", "src": "8177:3:38" }, "nativeSrc": "8177:9:38", "nodeType": "YulFunctionCall", "src": "8177:9:38" } ], "functionName": { "name": "shr", "nativeSrc": "8168:3:38", "nodeType": "YulIdentifier", "src": "8168:3:38" }, "nativeSrc": "8168:19:38", "nodeType": "YulFunctionCall", "src": "8168:19:38" }, "variableNames": [ { "name": "r", "nativeSrc": "8163:1:38", "nodeType": "YulIdentifier", "src": "8163:1:38" } ] }, { "nativeSrc": "8200:20:38", "nodeType": "YulVariableDeclaration", "src": "8200:20:38", "value": { "arguments": [ { "kind": "number", "nativeSrc": "8213:3:38", "nodeType": "YulLiteral", "src": "8213:3:38", "type": "", "value": "128" }, { "name": "r", "nativeSrc": "8218:1:38", "nodeType": "YulIdentifier", "src": "8218:1:38" } ], "functionName": { "name": "shr", "nativeSrc": "8209:3:38", "nodeType": "YulIdentifier", "src": "8209:3:38" }, "nativeSrc": "8209:11:38", "nodeType": "YulFunctionCall", "src": "8209:11:38" }, "variables": [ { "name": "f", "nativeSrc": "8204:1:38", "nodeType": "YulTypedName", "src": "8204:1:38", "type": "" } ] }, { "nativeSrc": "8233:30:38", "nodeType": "YulAssignment", "src": "8233:30:38", "value": { "arguments": [ { "name": "log_2", "nativeSrc": "8245:5:38", "nodeType": "YulIdentifier", "src": "8245:5:38" }, { "arguments": [ { "kind": "number", "nativeSrc": "8256:2:38", "nodeType": "YulLiteral", "src": "8256:2:38", "type": "", "value": "50" }, { "name": "f", "nativeSrc": "8260:1:38", "nodeType": "YulIdentifier", "src": "8260:1:38" } ], "functionName": { "name": "shl", "nativeSrc": "8252:3:38", "nodeType": "YulIdentifier", "src": "8252:3:38" }, "nativeSrc": "8252:10:38", "nodeType": "YulFunctionCall", "src": "8252:10:38" } ], "functionName": { "name": "or", "nativeSrc": "8242:2:38", "nodeType": "YulIdentifier", "src": "8242:2:38" }, "nativeSrc": "8242:21:38", "nodeType": "YulFunctionCall", "src": "8242:21:38" }, "variableNames": [ { "name": "log_2", "nativeSrc": "8233:5:38", "nodeType": "YulIdentifier", "src": "8233:5:38" } ] } ] }, "evmVersion": "paris", "externalReferences": [ { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "8233:5:38", "valueSize": 1 }, { "declaration": 44985, "isOffset": false, "isSlot": false, "src": "8245:5:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8163:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8181:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8184:1:38", "valueSize": 1 }, { "declaration": 44947, "isOffset": false, "isSlot": false, "src": "8218:1:38", "valueSize": 1 } ], "id": 45009, "nodeType": "InlineAssembly", "src": "8140:133:38" }, { "assignments": [ 45011 ], "declarations": [ { "constant": false, "id": 45011, "mutability": "mutable", "name": "log_sqrt10001", "nameLocation": "8290:13:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "8283:20:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" }, "typeName": { "id": 45010, "name": "int256", "nodeType": "ElementaryTypeName", "src": "8283:6:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "visibility": "internal" } ], "id": 45015, "initialValue": { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 45014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 45012, "name": "log_2", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44985, "src": "8306:5:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "*", "rightExpression": { "hexValue": "323535373338393538393939363033383236333437313431", "id": 45013, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "8314:24:38", "typeDescriptions": { "typeIdentifier": "t_rational_255738958999603826347141_by_1", "typeString": "int_const 255738958999603826347141" }, "value": "255738958999603826347141" }, "src": "8306:32:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "VariableDeclarationStatement", "src": "8283:55:38" }, { "assignments": [ 45017 ], "declarations": [ { "constant": false, "id": 45017, "mutability": "mutable", "name": "tickLow", "nameLocation": "8373:7:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "8367:13:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" }, "typeName": { "id": 45016, "name": "int24", "nodeType": "ElementaryTypeName", "src": "8367:5:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "visibility": "internal" } ], "id": 45027, "initialValue": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 45025, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 45022, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 45020, "name": "log_sqrt10001", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45011, "src": "8390:13:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "-", "rightExpression": { "hexValue": "33343032393932393536383039313332343138353936313430313030363630323437323130", "id": 45021, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "8406:37:38", "typeDescriptions": { "typeIdentifier": "t_rational_3402992956809132418596140100660247210_by_1", "typeString": "int_const 3402...(29 digits omitted)...7210" }, "value": "3402992956809132418596140100660247210" }, "src": "8390:53:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "id": 45023, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "8389:55:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 45024, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "8448:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "8389:62:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 45019, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "8383:5:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_int24_$", "typeString": "type(int24)" }, "typeName": { "id": 45018, "name": "int24", "nodeType": "ElementaryTypeName", "src": "8383:5:38", "typeDescriptions": {} } }, "id": 45026, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8383:69:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "nodeType": "VariableDeclarationStatement", "src": "8367:85:38" }, { "assignments": [ 45029 ], "declarations": [ { "constant": false, "id": 45029, "mutability": "mutable", "name": "tickHi", "nameLocation": "8468:6:38", "nodeType": "VariableDeclaration", "scope": 45056, "src": "8462:12:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" }, "typeName": { "id": 45028, "name": "int24", "nodeType": "ElementaryTypeName", "src": "8462:5:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "visibility": "internal" } ], "id": 45039, "initialValue": { "arguments": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 45037, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "components": [ { "commonType": { "typeIdentifier": "t_int256", "typeString": "int256" }, "id": 45034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 45032, "name": "log_sqrt10001", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45011, "src": "8484:13:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": "+", "rightExpression": { "hexValue": "323931333339343634373731393839363232393037303237363231313533333938303838343935", "id": 45033, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "8500:39:38", "typeDescriptions": { "typeIdentifier": "t_rational_291339464771989622907027621153398088495_by_1", "typeString": "int_const 2913...(31 digits omitted)...8495" }, "value": "291339464771989622907027621153398088495" }, "src": "8484:55:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "id": 45035, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", "src": "8483:57:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } }, "nodeType": "BinaryOperation", "operator": ">>", "rightExpression": { "hexValue": "313238", "id": 45036, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "8544:3:38", "typeDescriptions": { "typeIdentifier": "t_rational_128_by_1", "typeString": "int_const 128" }, "value": "128" }, "src": "8483:64:38", "typeDescriptions": { "typeIdentifier": "t_int256", "typeString": "int256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int256", "typeString": "int256" } ], "id": 45031, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", "src": "8477:5:38", "typeDescriptions": { "typeIdentifier": "t_type$_t_int24_$", "typeString": "type(int24)" }, "typeName": { "id": 45030, "name": "int24", "nodeType": "ElementaryTypeName", "src": "8477:5:38", "typeDescriptions": {} } }, "id": 45038, "isConstant": false, "isLValue": false, "isPure": false, "kind": "typeConversion", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8477:71:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "nodeType": "VariableDeclarationStatement", "src": "8462:86:38" }, { "expression": { "id": 45054, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "id": 45040, "name": "tick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44924, "src": "8559:4:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "condition": { "commonType": { "typeIdentifier": "t_int24", "typeString": "int24" }, "id": 45043, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "id": 45041, "name": "tickLow", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45017, "src": "8566:7:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "nodeType": "BinaryOperation", "operator": "==", "rightExpression": { "id": 45042, "name": "tickHi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45029, "src": "8577:6:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "src": "8566:17:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "condition": { "commonType": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "id": 45049, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "arguments": [ { "id": 45046, "name": "tickHi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45029, "src": "8615:6:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_int24", "typeString": "int24" } ], "id": 45045, "name": "getSqrtRatioAtTick", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44918, "src": "8596:18:38", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_int24_$returns$_t_uint160_$", "typeString": "function (int24) pure returns (uint160)" } }, "id": 45047, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "8596:26:38", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "nodeType": "BinaryOperation", "operator": "<=", "rightExpression": { "id": 45048, "name": "sqrtPriceX96", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 44921, "src": "8626:12:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "src": "8596:42:38", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseExpression": { "id": 45051, "name": "tickLow", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45017, "src": "8650:7:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "id": 45052, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "8596:61:38", "trueExpression": { "id": 45050, "name": "tickHi", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45029, "src": "8641:6:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "id": 45053, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", "src": "8566:91:38", "trueExpression": { "id": 45044, "name": "tickLow", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 45017, "src": "8586:7:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "src": "8559:98:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "id": 45055, "nodeType": "ExpressionStatement", "src": "8559:98:38" } ] } ] }, "documentation": { "id": 44919, "nodeType": "StructuredDocumentation", "src": "3960:408:38", "text": "@notice Calculates the greatest tick value such that getRatioAtTick(tick) <= ratio\n @dev Throws in case sqrtPriceX96 < MIN_SQRT_RATIO, as MIN_SQRT_RATIO is the lowest value getRatioAtTick may\n ever return.\n @param sqrtPriceX96 The sqrt ratio for which to compute the tick as a Q64.96\n @return tick The greatest tick for which the ratio is less than or equal to the input ratio" }, "implemented": true, "kind": "function", "modifiers": [], "name": "getTickAtSqrtRatio", "nameLocation": "4382:18:38", "parameters": { "id": 44922, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 44921, "mutability": "mutable", "name": "sqrtPriceX96", "nameLocation": "4409:12:38", "nodeType": "VariableDeclaration", "scope": 45058, "src": "4401:20:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" }, "typeName": { "id": 44920, "name": "uint160", "nodeType": "ElementaryTypeName", "src": "4401:7:38", "typeDescriptions": { "typeIdentifier": "t_uint160", "typeString": "uint160" } }, "visibility": "internal" } ], "src": "4400:22:38" }, "returnParameters": { "id": 44925, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 44924, "mutability": "mutable", "name": "tick", "nameLocation": "4452:4:38", "nodeType": "VariableDeclaration", "scope": 45058, "src": "4446:10:38", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" }, "typeName": { "id": 44923, "name": "int24", "nodeType": "ElementaryTypeName", "src": "4446:5:38", "typeDescriptions": { "typeIdentifier": "t_int24", "typeString": "int24" } }, "visibility": "internal" } ], "src": "4445:12:38" }, "scope": 45059, "stateMutability": "pure", "virtual": false, "visibility": "internal" } ], "abstract": false, "baseContracts": [], "canonicalName": "TickMath", "contractDependencies": [], "contractKind": "library", "documentation": { "id": 44522, "nodeType": "StructuredDocumentation", "src": "71:235:38", "text": "@title Math library for computing sqrt prices from ticks and vice versa\n @notice Computes sqrt price for ticks of size 1.0001, i.e. sqrt(1.0001^tick) as fixed point Q64.96 numbers. Supports\n prices between 2**-128 and 2**128" }, "fullyImplemented": true, "linearizedBaseContracts": [ 45059 ], "name": "TickMath", "nameLocation": "314:8:38", "scope": 45060, "usedErrors": [], "usedEvents": [] } ], "license": "GPL-2.0-or-later" }, "id": 38 }