fluid-contracts-public/deployments/arbitrum/UserModule.json

330 lines
217 KiB
JSON
Raw Permalink Normal View History

{
"address": "0xe71313Dd1F00afef64A0D20e940603741316eDD7",
"abi": [
{
"inputs": [
{
"internalType": "uint256",
"name": "errorId_",
"type": "uint256"
}
],
"name": "FluidLiquidityCalcsError",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "errorId_",
"type": "uint256"
}
],
"name": "FluidLiquidityError",
"type": "error"
},
{
"anonymous": false,
"inputs": [],
"name": "BorrowRateMaxCap",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "user",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "token",
"type": "address"
},
{
"indexed": false,
"internalType": "int256",
"name": "supplyAmount",
"type": "int256"
},
{
"indexed": false,
"internalType": "int256",
"name": "borrowAmount",
"type": "int256"
},
{
"indexed": false,
"internalType": "address",
"name": "withdrawTo",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "borrowTo",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalAmounts",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "exchangePricesAndConfig",
"type": "uint256"
}
],
"name": "LogOperate",
"type": "event"
},
{
"inputs": [
{
"internalType": "address",
"name": "token_",
"type": "address"
},
{
"internalType": "int256",
"name": "supplyAmount_",
"type": "int256"
},
{
"internalType": "int256",
"name": "borrowAmount_",
"type": "int256"
},
{
"internalType": "address",
"name": "withdrawTo_",
"type": "address"
},
{
"internalType": "address",
"name": "borrowTo_",
"type": "address"
},
{
"internalType": "bytes",
"name": "callbackData_",
"type": "bytes"
}
],
"name": "operate",
"outputs": [
{
"internalType": "uint256",
"name": "memVar3_",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "memVar4_",
"type": "uint256"
}
],
"stateMutability": "payable",
"type": "function"
}
],
"transactionHash": "0x6edcf57a80fb0be92c7ba16ab6b72495859e8888259a193f1a27ec20be7baad7",
"receipt": {
"to": "0x4e59b44847b379578588920cA78FbF26c0B4956C",
"from": "0x0Ed35B1609Ec45c7079E80d11149a52717e4859A",
"contractAddress": null,
"transactionIndex": 4,
"gasUsed": "3206510",
"logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
"blockHash": "0x10ee29403f3f6280dec656bb09847b134a0a25bdd499b43346d1dd879de02bfb",
"transactionHash": "0x6edcf57a80fb0be92c7ba16ab6b72495859e8888259a193f1a27ec20be7baad7",
"logs": [],
"blockNumber": 220375168,
"cumulativeGasUsed": "6230172",
"status": 1,
"byzantium": true
},
"args": [],
"numDeployments": 1,
"solcInputHash": "1989963ad64c4704dbe1170530c79d20",
"metadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"errorId_\",\"type\":\"uint256\"}],\"name\":\"FluidLiquidityCalcsError\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"errorId_\",\"type\":\"uint256\"}],\"name\":\"FluidLiquidityError\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[],\"name\":\"BorrowRateMaxCap\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"supplyAmount\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"borrowAmount\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"withdrawTo\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"borrowTo\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalAmounts\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"exchangePricesAndConfig\",\"type\":\"uint256\"}],\"name\":\"LogOperate\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token_\",\"type\":\"address\"},{\"internalType\":\"int256\",\"name\":\"supplyAmount_\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"borrowAmount_\",\"type\":\"int256\"},{\"internalType\":\"address\",\"name\":\"withdrawTo_\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"borrowTo_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"callbackData_\",\"type\":\"bytes\"}],\"name\":\"operate\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"memVar3_\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"memVar4_\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"For view methods / accessing data, use the \\\"LiquidityResolver\\\" periphery contract.\",\"events\":{\"LogOperate(address,address,int256,int256,address,address,uint256,uint256)\":{\"params\":{\"borrowAmount\":\"borrow amount for the operation. if >0 then a borrow happened, if <0 then a payback happened. if 0 then nothing.\",\"borrowTo\":\"address that funds where borrowed to (if borrowAmount >0)\",\"exchangePricesAndConfig\":\"updated exchange prices and configs storage slot. Contains updated supply & borrow exchange price: First 16 bits => 0- 15 => borrow rate (in 1e2: 100% = 10_000; 1% = 100 -> max value 65535) Next 14 bits => 16- 29 => fee on interest from borrowers to lenders (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383). configurable. Next 14 bits => 30- 43 => last stored utilization (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383) Next 14 bits => 44- 57 => update on storage threshold (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383). configurable. Next 33 bits => 58- 90 => last update timestamp (enough until 16 March 2242 -> max value 8589934591) Next 64 bits => 91-154 => supply exchange price (1e12 -> max value 18_446_744,073709551615) Next 64 bits => 155-218 => borrow exchange price (1e12 -> max value 18_446_744,073709551615) Next 1 bit => 219-219 => if 0 then ratio is supplyInterestFree / supplyWithInterest else ratio is supplyWithInterest / supplyInterestFree Next 14 bits => 220-233 => supplyRatio: supplyInterestFree / supplyWithInterest (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383) Next 1 bit => 234-234 => if 0 then ratio is borrowInterestFree / borrowWithInterest else ratio is borrowWithInterest / borrowInterestFree Next 14 bits => 235-248 => borrowRatio: borrowInterestFree / borrowWithInterest (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383)\",\"supplyAmount\":\"supply amount for the operation. if >0 then a deposit happened, if <0 then a withdrawal happened. if 0 then nothing.\",\"token\":\"token address
"bytecode": "0x608060405234801561001057600080fd5b506002600155612951806100256000396000f3fe60806040526004361061001e5760003560e01c8063ad967e1514610023575b600080fd5b61003661003136600461258b565b61004f565b6040805192835260208301919091520160405180910390f35b600080600260ff166001540361009a576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612ee160048201526024015b60405180910390fd5b6002600155871580156100ab575086155b156100e6576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612afd6004820152602401610091565b7fffffffffffffffffffffffffffffffff8000000000000000000000000000000088128061012357506f7fffffffffffffffffffffffffffffff88135b8061014d57507fffffffffffffffffffffffffffffffff8000000000000000000000000000000087125b8061016757506f7fffffffffffffffffffffffffffffff87135b156101a2576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612afe6004820152602401610091565b6000881280156101c6575073ffffffffffffffffffffffffffffffffffffffff8616155b806101f057506000871380156101f0575073ffffffffffffffffffffffffffffffffffffffff8516155b1561022b576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b006004820152602401610091565b73ffffffffffffffffffffffffffffffffffffffff891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015906102655750600034115b156102a0576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b026004820152602401610091565b6102f160405180610120016040528060001515815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60008060008a1261030357600061030c565b61030c8a612672565b60008c1361031b57600061031d565b8b5b61032791906126aa565b9050898b148015610336575034155b801561037f575061037f8b8a8a8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061130b92505050565b1561038c57506001825260005b7fffffffffffffffffffffffff111111111111111111111111111111111111111273ffffffffffffffffffffffffffffffffffffffff8d160161041b57348111806103dc5750633b9aca00810134115b15610417576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b016004820152602401610091565b5060005b801561060d576040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d16906370a0823190602401602060405180830381865afa15801561048b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104af91906126bd565b6040517fad207501000000000000000000000000000000000000000000000000000000008152909250339063ad207501906104f4908f9085908c908c906004016126d6565b600060405180830381600087803b15801561050e57600080fd5b505af1158015610522573d6000803e3d6000fd5b50506040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015284925073ffffffffffffffffffffffffffffffffffffffff8f1691506370a0823190602401602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b691906126bd565b6105c09190612747565b9150808210806105d2575080600a0182115b1561060d576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b016004820152602401610091565b73ffffffffffffffffffffffffffffffffffffffff8c166000908152600560205260409020546101008401819052610644906113ee565b60408086019190915260208086019290925273ffffffffffffffffffffffffffffffffffffffff8e1660009081526007909252908190205460e0850181905266ffffffffffffff600882901c811660ff8084169190911b6060880152604883901c82169383901c81169390931b608080880191909152608883901c9091169082901c83161b60a086015260c881901c60c091821c9283161b9085015291508a156108c05760008360e0015190506000806107038f8f88602001516115fc565b915091508060000361079c57600082131561073257818660600181815161072a91906126aa565b905250610755565b8160000386606001511161074757600061074f565b606086015182015b60608701525b6060860151610769906038600860006118b5565b60e0870180517fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001682179052945061087b565b60008113156107bf5780866080018181516107b791906126aa565b9052506107e2565b806000038660800151116107d45760006107
"deployedBytecode": "0x60806040526004361061001e5760003560e01c8063ad967e1514610023575b600080fd5b61003661003136600461258b565b61004f565b6040805192835260208301919091520160405180910390f35b600080600260ff166001540361009a576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612ee160048201526024015b60405180910390fd5b6002600155871580156100ab575086155b156100e6576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612afd6004820152602401610091565b7fffffffffffffffffffffffffffffffff8000000000000000000000000000000088128061012357506f7fffffffffffffffffffffffffffffff88135b8061014d57507fffffffffffffffffffffffffffffffff8000000000000000000000000000000087125b8061016757506f7fffffffffffffffffffffffffffffff87135b156101a2576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612afe6004820152602401610091565b6000881280156101c6575073ffffffffffffffffffffffffffffffffffffffff8616155b806101f057506000871380156101f0575073ffffffffffffffffffffffffffffffffffffffff8516155b1561022b576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b006004820152602401610091565b73ffffffffffffffffffffffffffffffffffffffff891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015906102655750600034115b156102a0576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b026004820152602401610091565b6102f160405180610120016040528060001515815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60008060008a1261030357600061030c565b61030c8a612672565b60008c1361031b57600061031d565b8b5b61032791906126aa565b9050898b148015610336575034155b801561037f575061037f8b8a8a8a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061130b92505050565b1561038c57506001825260005b7fffffffffffffffffffffffff111111111111111111111111111111111111111273ffffffffffffffffffffffffffffffffffffffff8d160161041b57348111806103dc5750633b9aca00810134115b15610417576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b016004820152602401610091565b5060005b801561060d576040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8d16906370a0823190602401602060405180830381865afa15801561048b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104af91906126bd565b6040517fad207501000000000000000000000000000000000000000000000000000000008152909250339063ad207501906104f4908f9085908c908c906004016126d6565b600060405180830381600087803b15801561050e57600080fd5b505af1158015610522573d6000803e3d6000fd5b50506040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015284925073ffffffffffffffffffffffffffffffffffffffff8f1691506370a0823190602401602060405180830381865afa158015610592573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105b691906126bd565b6105c09190612747565b9150808210806105d2575080600a0182115b1561060d576040517fdcab82e2000000000000000000000000000000000000000000000000000000008152612b016004820152602401610091565b73ffffffffffffffffffffffffffffffffffffffff8c166000908152600560205260409020546101008401819052610644906113ee565b60408086019190915260208086019290925273ffffffffffffffffffffffffffffffffffffffff8e1660009081526007909252908190205460e0850181905266ffffffffffffff600882901c811660ff8084169190911b6060880152604883901c82169383901c81169390931b608080880191909152608883901c9091169082901c83161b60a086015260c881901c60c091821c9283161b9085015291508a156108c05760008360e0015190506000806107038f8f88602001516115fc565b915091508060000361079c57600082131561073257818660600181815161072a91906126aa565b905250610755565b8160000386606001511161074757600061074f565b606086015182015b60608701525b6060860151610769906038600860006118b5565b60e0870180517fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001682179052945061087b565b60008113156107bf5780866080018181516107b791906126aa565b9052506107e2565b806000038660800151116107d45760006107dc565b608086015181015b60808701525b60808601516f7fffffffffffffffffff
"devdoc": {
"details": "For view methods / accessing data, use the \"LiquidityResolver\" periphery contract.",
"events": {
"LogOperate(address,address,int256,int256,address,address,uint256,uint256)": {
"params": {
"borrowAmount": "borrow amount for the operation. if >0 then a borrow happened, if <0 then a payback happened. if 0 then nothing.",
"borrowTo": "address that funds where borrowed to (if borrowAmount >0)",
"exchangePricesAndConfig": "updated exchange prices and configs storage slot. Contains updated supply & borrow exchange price: First 16 bits => 0- 15 => borrow rate (in 1e2: 100% = 10_000; 1% = 100 -> max value 65535) Next 14 bits => 16- 29 => fee on interest from borrowers to lenders (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383). configurable. Next 14 bits => 30- 43 => last stored utilization (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383) Next 14 bits => 44- 57 => update on storage threshold (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383). configurable. Next 33 bits => 58- 90 => last update timestamp (enough until 16 March 2242 -> max value 8589934591) Next 64 bits => 91-154 => supply exchange price (1e12 -> max value 18_446_744,073709551615) Next 64 bits => 155-218 => borrow exchange price (1e12 -> max value 18_446_744,073709551615) Next 1 bit => 219-219 => if 0 then ratio is supplyInterestFree / supplyWithInterest else ratio is supplyWithInterest / supplyInterestFree Next 14 bits => 220-233 => supplyRatio: supplyInterestFree / supplyWithInterest (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383) Next 1 bit => 234-234 => if 0 then ratio is borrowInterestFree / borrowWithInterest else ratio is borrowWithInterest / borrowInterestFree Next 14 bits => 235-248 => borrowRatio: borrowInterestFree / borrowWithInterest (in 1e2: 100% = 10_000; 1% = 100 -> max value 16_383)",
"supplyAmount": "supply amount for the operation. if >0 then a deposit happened, if <0 then a withdrawal happened. if 0 then nothing.",
"token": "token address for which this operation was executed",
"totalAmounts": "updated total amounts, stacked uint256 as written to storage: First 64 bits => 0- 63 => total supply with interest in raw (totalSupply = totalSupplyRaw * supplyExchangePrice); BigMath: 56 | 8 Next 64 bits => 64-127 => total interest free supply in normal token amount (totalSupply = totalSupply); BigMath: 56 | 8 Next 64 bits => 128-191 => total borrow with interest in raw (totalBorrow = totalBorrowRaw * borrowExchangePrice); BigMath: 56 | 8 Next 64 bits => 192-255 => total interest free borrow in normal token amount (totalBorrow = totalBorrow); BigMath: 56 | 8",
"user": "protocol that triggered this operation (e.g. via an fToken or via Vault protocol)",
"withdrawTo": "address that funds where withdrawn to (if supplyAmount <0)"
}
}
},
"kind": "dev",
"methods": {},
"title": "Fluid Liquidity UserModule",
"version": 1
},
"userdoc": {
"events": {
"BorrowRateMaxCap()": {
"notice": "emitted if the calculated borrow rate surpassed max borrow rate (16 bits) and was capped at maximum value 65535"
},
"LogOperate(address,address,int256,int256,address,address,uint256,uint256)": {
"notice": "emitted on any `operate()` execution: deposit / supply / withdraw / borrow. includes info related to the executed operation, new total amounts (packed uint256 of BigMath numbers as in storage) and exchange prices (packed uint256 as in storage)."
}
},
"kind": "user",
"methods": {
"operate(address,int256,int256,address,address,bytes)": {
"notice": "inheritdoc IFluidLiquidity"
}
},
"notice": "Fluid Liquidity public facing endpoint logic contract that implements the `operate()` method. operate can be used to deposit, withdraw, borrow & payback funds, given that they have the necessary user config allowance. Interacting users must be allowed via the Fluid Liquidity AdminModule first. Intended users are thus allow-listed protocols, e.g. the Lending protocol (fTokens), Vault protocol etc.",
"version": 1
},
"storageLayout": {
"storage": [
{
"astId": 17816,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_revenueCollector",
"offset": 0,
"slot": "0",
"type": "t_address"
},
{
"astId": 17819,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_status",
"offset": 0,
"slot": "1",
"type": "t_uint256"
},
{
"astId": 17824,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_isAuth",
"offset": 0,
"slot": "2",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 17829,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_isGuardian",
"offset": 0,
"slot": "3",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 17834,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_userClass",
"offset": 0,
"slot": "4",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 17839,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_exchangePricesAndConfig",
"offset": 0,
"slot": "5",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 17844,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_rateData",
"offset": 0,
"slot": "6",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 17849,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_totalAmounts",
"offset": 0,
"slot": "7",
"type": "t_mapping(t_address,t_uint256)"
},
{
"astId": 17856,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_userSupplyData",
"offset": 0,
"slot": "8",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
},
{
"astId": 17863,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_userBorrowData",
"offset": 0,
"slot": "9",
"type": "t_mapping(t_address,t_mapping(t_address,t_uint256))"
},
{
"astId": 17867,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_listedTokens",
"offset": 0,
"slot": "10",
"type": "t_array(t_address)dyn_storage"
},
{
"astId": 17872,
"contract": "contracts/liquidity/userModule/main.sol:FluidLiquidityUserModule",
"label": "_configs2",
"offset": 0,
"slot": "11",
"type": "t_mapping(t_address,t_uint256)"
}
],
"types": {
"t_address": {
"encoding": "inplace",
"label": "address",
"numberOfBytes": "20"
},
"t_array(t_address)dyn_storage": {
"base": "t_address",
"encoding": "dynamic_array",
"label": "address[]",
"numberOfBytes": "32"
},
"t_mapping(t_address,t_mapping(t_address,t_uint256))": {
"encoding": "mapping",
"key": "t_address",
"label": "mapping(address => mapping(address => uint256))",
"numberOfBytes": "32",
"value": "t_mapping(t_address,t_uint256)"
},
"t_mapping(t_address,t_uint256)": {
"encoding": "mapping",
"key": "t_address",
"label": "mapping(address => uint256)",
"numberOfBytes": "32",
"value": "t_uint256"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
}
}
}
}