Files
contract/deployment/alpha/out/TickMath.sol/TickMath.json
2023-11-16 17:36:43 -04:00

12458 lines
570 KiB
JSON

{
"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
}