Files
dodo-contractV2/build-v1/contracts/DODOMineReader.json
2020-11-10 18:38:34 +08:00

3640 lines
155 KiB
JSON

{
"contractName": "DODOMineReader",
"abi": [
{
"inputs": [
{
"internalType": "address",
"name": "_dodoMine",
"type": "address"
},
{
"internalType": "address",
"name": "_dodo",
"type": "address"
},
{
"internalType": "address",
"name": "_user",
"type": "address"
}
],
"name": "getUserStakedBalance",
"outputs": [
{
"internalType": "uint256",
"name": "baseBalance",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "quoteBalance",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"metadata": "{\"compiler\":{\"version\":\"0.6.9+commit.3e3065ac\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_dodoMine\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_dodo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"getUserStakedBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"baseBalance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"quoteBalance\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/token/DODOMineReader.sol\":\"DODOMineReader\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/intf/IDODO.sol\":{\"keccak256\":\"0x8fd9ec49ff1517e33698dc8dd4022da05f3a1ae6e4bf97c48f5f5b6714df2123\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://cfaa388f09d627ad26c66e6c4a73c232d494010b73b989392e264f815a84cd1d\",\"dweb:/ipfs/QmSBNeEyjgFSAtcYpKjyQfKZx7ahZKFwUtnnbpSSpS3p2H\"]},\"/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/intf/IERC20.sol\":{\"keccak256\":\"0x40355eddd56b5a9ac760c5a056e135946b372b724fb632415792ad82c60a9ac5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://66e932da3bb19bdd0a7b17715099bc419f087cbf06809885fd98a7a35574387e\",\"dweb:/ipfs/Qmdv97dz4214Xrbb8xGbuYPJtvmqAoUcXuSCFgA8NzBUsg\"]},\"/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/lib/SafeMath.sol\":{\"keccak256\":\"0x57d750628881687f826b54f60cbfd46c1a172433eed892bbb123f91869886af1\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b40bd7946010ddae9679f36630510217dcaa9cb8643824f9edc8ef52bda95717\",\"dweb:/ipfs/QmZSjpfUGyrmokZyaMc74a8h6zy2qFVECPVP8VfTvzNEFb\"]},\"/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/token/DODOMineReader.sol\":{\"keccak256\":\"0xacdbbc17ce75a41a7656e2ff50c85633af00f5c57240269a3bcfcc4800427574\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b915a0b00401e7355693594d02a1b606172e29c8886fe909749b4422bd8accb3\",\"dweb:/ipfs/QmbaER9zTzjuUh4x4YMDMiXu4cHzMCqihBUP7h2DP4ERmq\"]}},\"version\":1}",
"bytecode": "0x608060405234801561001057600080fd5b506105d5806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80634e41de7f14610030575b600080fd5b61004361003e36600461048f565b61005a565b604051610051929190610579565b60405180910390f35b6000806000846001600160a01b031663d689107c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561009857600080fd5b505afa1580156100ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d09190610473565b90506000856001600160a01b031663ac1fbc986040518163ffffffff1660e01b815260040160206040518083038186803b15801561010d57600080fd5b505afa158015610121573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101459190610473565b90506000876001600160a01b03166319a78f5584886040518363ffffffff1660e01b8152600401610177929190610514565b60206040518083038186803b15801561018f57600080fd5b505afa1580156101a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c791906104d9565b90506000886001600160a01b03166319a78f5584896040518363ffffffff1660e01b81526004016101f9929190610514565b60206040518083038186803b15801561021157600080fd5b505afa158015610225573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024991906104d9565b90506000846001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561028657600080fd5b505afa15801561029a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102be91906104d9565b90506000846001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156102fb57600080fd5b505afa15801561030f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033391906104d9565b90506000808b6001600160a01b031663ffa642256040518163ffffffff1660e01b8152600401604080518083038186803b15801561037057600080fd5b505afa158015610384573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a891906104f1565b90925090506103cd846103c1848963ffffffff6103f516565b9063ffffffff61044116565b99506103e3836103c1838863ffffffff6103f516565b98505050505050505050935093915050565b6000826104045750600061043b565b8282028284828161041157fe5b04146104385760405162461bcd60e51b815260040161042f90610556565b60405180910390fd5b90505b92915050565b60008082116104625760405162461bcd60e51b815260040161042f9061052e565b81838161046b57fe5b049392505050565b600060208284031215610484578081fd5b815161043881610587565b6000806000606084860312156104a3578182fd5b83356104ae81610587565b925060208401356104be81610587565b915060408401356104ce81610587565b809150509250925092565b6000602082840312156104ea578081fd5b5051919050565b60008060408385031215610503578182fd5b505080516020909101519092909150565b6001600160a01b0392831681529116602082015260400190565b6020808252600e908201526d2224ab24a224a723afa2a92927a960911b604082015260600190565b60208082526009908201526826aaa62fa2a92927a960b91b604082015260600190565b918252602082015260400190565b6001600160a01b038116811461059c57600080fd5b5056fea264697066735822122058a9b2316ed397b51ced2cada4331ee4342b25e67e74fb636333495dc36ed57c64736f6c63430006090033",
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80634e41de7f14610030575b600080fd5b61004361003e36600461048f565b61005a565b604051610051929190610579565b60405180910390f35b6000806000846001600160a01b031663d689107c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561009857600080fd5b505afa1580156100ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100d09190610473565b90506000856001600160a01b031663ac1fbc986040518163ffffffff1660e01b815260040160206040518083038186803b15801561010d57600080fd5b505afa158015610121573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101459190610473565b90506000876001600160a01b03166319a78f5584886040518363ffffffff1660e01b8152600401610177929190610514565b60206040518083038186803b15801561018f57600080fd5b505afa1580156101a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101c791906104d9565b90506000886001600160a01b03166319a78f5584896040518363ffffffff1660e01b81526004016101f9929190610514565b60206040518083038186803b15801561021157600080fd5b505afa158015610225573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024991906104d9565b90506000846001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561028657600080fd5b505afa15801561029a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102be91906104d9565b90506000846001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156102fb57600080fd5b505afa15801561030f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061033391906104d9565b90506000808b6001600160a01b031663ffa642256040518163ffffffff1660e01b8152600401604080518083038186803b15801561037057600080fd5b505afa158015610384573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a891906104f1565b90925090506103cd846103c1848963ffffffff6103f516565b9063ffffffff61044116565b99506103e3836103c1838863ffffffff6103f516565b98505050505050505050935093915050565b6000826104045750600061043b565b8282028284828161041157fe5b04146104385760405162461bcd60e51b815260040161042f90610556565b60405180910390fd5b90505b92915050565b60008082116104625760405162461bcd60e51b815260040161042f9061052e565b81838161046b57fe5b049392505050565b600060208284031215610484578081fd5b815161043881610587565b6000806000606084860312156104a3578182fd5b83356104ae81610587565b925060208401356104be81610587565b915060408401356104ce81610587565b809150509250925092565b6000602082840312156104ea578081fd5b5051919050565b60008060408385031215610503578182fd5b505080516020909101519092909150565b6001600160a01b0392831681529116602082015260400190565b6020808252600e908201526d2224ab24a224a723afa2a92927a960911b604082015260600190565b60208082526009908201526826aaa62fa2a92927a960b91b604082015260600190565b918252602082015260400190565b6001600160a01b038116811461059c57600080fd5b5056fea264697066735822122058a9b2316ed397b51ced2cada4331ee4342b25e67e74fb636333495dc36ed57c64736f6c63430006090033",
"immutableReferences": {},
"sourceMap": "390:1001:44:-:0;;;;;;;;;;;;;;;;;;;",
"deployedSourceMap": "390:1001:44:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;453:936;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;585:19;606:20;638:19;666:5;-1:-1:-1;;;;;660:33:44;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;638:57;;705:20;734:5;-1:-1:-1;;;;;728:34:44;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;705:59;;775:21;809:9;-1:-1:-1;;;;;799:37:44;;837:11;850:5;799:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;775:81;;866:22;901:9;-1:-1:-1;;;;;891:37:44;;929:12;943:5;891:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;866:83;;960:25;995:11;-1:-1:-1;;;;;988:31:44;;:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;960:61;;1031:26;1067:12;-1:-1:-1;;;;;1060:32:44;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1031:63;;1106:18;1126:19;1155:5;-1:-1:-1;;;;;1149:30:44;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1105:76;;-1:-1:-1;1105:76:44;-1:-1:-1;1205:52:44;1239:17;1205:29;1105:76;1220:13;1205:29;:14;:29;:::i;:::-;:33;:52;:33;:52;:::i;:::-;1191:66;-1:-1:-1;1282:55:44;1318:18;1282:31;:11;1298:14;1282:31;:15;:31;:::i;:55::-;1267:70;-1:-1:-1;;;;;;;;;453:936:44;;;;;;:::o;281:217:41:-;339:7;362:6;358:45;;-1:-1:-1;391:1:41;384:8;;358:45;425:5;;;429:1;425;:5;:1;448:5;;;;;:10;440:32;;;;-1:-1:-1;;;440:32:41;;;;;;;;;;;;;;;;;490:1;-1:-1:-1;281:217:41;;;;;:::o;504:138::-;562:7;593:1;589;:5;581:32;;;;-1:-1:-1;;;581:32:41;;;;;;;;;634:1;630;:5;;;;;;;504:138;-1:-1:-1;;;504:138:41:o;424:263:-1:-;;539:2;527:9;518:7;514:23;510:32;507:2;;;-1:-1;;545:12;507:2;226:6;220:13;238:33;265:5;238:33;;694:491;;;;832:2;820:9;811:7;807:23;803:32;800:2;;;-1:-1;;838:12;800:2;85:6;72:20;97:33;124:5;97:33;;;890:63;-1:-1;990:2;1029:22;;72:20;97:33;72:20;97:33;;;998:63;-1:-1;1098:2;1137:22;;72:20;97:33;72:20;97:33;;;1106:63;;;;794:391;;;;;;1192:263;;1307:2;1295:9;1286:7;1282:23;1278:32;1275:2;;;-1:-1;;1313:12;1275:2;-1:-1;361:13;;1269:186;-1:-1;1269:186;1462:399;;;1594:2;1582:9;1573:7;1569:23;1565:32;1562:2;;;-1:-1;;1600:12;1562:2;-1:-1;;361:13;;1763:2;1813:22;;;361:13;;;;;-1:-1;1556:305;2748:333;-1:-1;;;;;4606:54;;;1939:37;;4606:54;;3067:2;3052:18;;1939:37;2903:2;2888:18;;2874:207;3088:416;3288:2;3302:47;;;2213:2;3273:18;;;4378:19;-1:-1;;;4418:14;;;2229:37;2285:12;;;3259:245;3511:416;3711:2;3725:47;;;2536:1;3696:18;;;4378:19;-1:-1;;;4418:14;;;2551:32;2602:12;;;3682:245;3934:333;2699:37;;;4253:2;4238:18;;2699:37;4089:2;4074:18;;4060:207;4751:117;-1:-1;;;;;4606:54;;4810:35;;4800:2;;4859:1;;4849:12;4800:2;4794:74;",
"source": "/*\n\n Copyright 2020 DODO ZOO.\n SPDX-License-Identifier: Apache-2.0\n\n*/\n\npragma solidity 0.6.9;\npragma experimental ABIEncoderV2;\n\nimport {IDODO} from \"../intf/IDODO.sol\";\nimport {IERC20} from \"../intf/IERC20.sol\";\nimport {SafeMath} from \"../lib/SafeMath.sol\";\n\n\ninterface IDODOMine {\n function getUserLpBalance(address _lpToken, address _user) external view returns (uint256);\n}\n\n\ncontract DODOMineReader {\n using SafeMath for uint256;\n\n function getUserStakedBalance(\n address _dodoMine,\n address _dodo,\n address _user\n ) external view returns (uint256 baseBalance, uint256 quoteBalance) {\n address baseLpToken = IDODO(_dodo)._BASE_CAPITAL_TOKEN_();\n address quoteLpToken = IDODO(_dodo)._QUOTE_CAPITAL_TOKEN_();\n\n uint256 baseLpBalance = IDODOMine(_dodoMine).getUserLpBalance(baseLpToken, _user);\n uint256 quoteLpBalance = IDODOMine(_dodoMine).getUserLpBalance(quoteLpToken, _user);\n\n uint256 baseLpTotalSupply = IERC20(baseLpToken).totalSupply();\n uint256 quoteLpTotalSupply = IERC20(quoteLpToken).totalSupply();\n\n (uint256 baseTarget, uint256 quoteTarget) = IDODO(_dodo).getExpectedTarget();\n baseBalance = baseTarget.mul(baseLpBalance).div(baseLpTotalSupply);\n quoteBalance = quoteTarget.mul(quoteLpBalance).div(quoteLpTotalSupply);\n\n return (baseBalance, quoteBalance);\n }\n}\n",
"sourcePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/token/DODOMineReader.sol",
"ast": {
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/token/DODOMineReader.sol",
"exportedSymbols": {
"DODOMineReader": [
12945
],
"IDODOMine": [
12841
]
},
"id": 12946,
"license": "Apache-2.0",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 12824,
"literals": [
"solidity",
"0.6",
".9"
],
"nodeType": "PragmaDirective",
"src": "78:22:44"
},
{
"id": 12825,
"literals": [
"experimental",
"ABIEncoderV2"
],
"nodeType": "PragmaDirective",
"src": "101:33:44"
},
{
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/intf/IDODO.sol",
"file": "../intf/IDODO.sol",
"id": 12827,
"nodeType": "ImportDirective",
"scope": 12946,
"sourceUnit": 10492,
"src": "136:40:44",
"symbolAliases": [
{
"foreign": {
"argumentTypes": null,
"id": 12826,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": null,
"src": "144:5:44",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
},
"local": null
}
],
"unitAlias": ""
},
{
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/intf/IERC20.sol",
"file": "../intf/IERC20.sol",
"id": 12829,
"nodeType": "ImportDirective",
"scope": 12946,
"sourceUnit": 10608,
"src": "177:42:44",
"symbolAliases": [
{
"foreign": {
"argumentTypes": null,
"id": 12828,
"name": "IERC20",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": null,
"src": "185:6:44",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
},
"local": null
}
],
"unitAlias": ""
},
{
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/lib/SafeMath.sol",
"file": "../lib/SafeMath.sol",
"id": 12831,
"nodeType": "ImportDirective",
"scope": 12946,
"sourceUnit": 11624,
"src": "220:45:44",
"symbolAliases": [
{
"foreign": {
"argumentTypes": null,
"id": 12830,
"name": "SafeMath",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": null,
"src": "228:8:44",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
},
"local": null
}
],
"unitAlias": ""
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "interface",
"documentation": null,
"fullyImplemented": false,
"id": 12841,
"linearizedBaseContracts": [
12841
],
"name": "IDODOMine",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": null,
"documentation": null,
"functionSelector": "19a78f55",
"id": 12840,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getUserLpBalance",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 12836,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12833,
"mutability": "mutable",
"name": "_lpToken",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12840,
"src": "320:16:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12832,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "320:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12835,
"mutability": "mutable",
"name": "_user",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12840,
"src": "338:13:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12834,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "338:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "319:33:44"
},
"returnParameters": {
"id": 12839,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12838,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12840,
"src": "376:7:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12837,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "376:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "375:9:44"
},
"scope": 12841,
"src": "294:91:44",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
}
],
"scope": 12946,
"src": "268:119:44"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 12945,
"linearizedBaseContracts": [
12945
],
"name": "DODOMineReader",
"nodeType": "ContractDefinition",
"nodes": [
{
"id": 12844,
"libraryName": {
"contractScope": null,
"id": 12842,
"name": "SafeMath",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 11623,
"src": "426:8:44",
"typeDescriptions": {
"typeIdentifier": "t_contract$_SafeMath_$11623",
"typeString": "library SafeMath"
}
},
"nodeType": "UsingForDirective",
"src": "420:27:44",
"typeName": {
"id": 12843,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "439:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
{
"body": {
"id": 12943,
"nodeType": "Block",
"src": "628:761:44",
"statements": [
{
"assignments": [
12858
],
"declarations": [
{
"constant": false,
"id": 12858,
"mutability": "mutable",
"name": "baseLpToken",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "638:19:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12857,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "638:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12864,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12860,
"name": "_dodo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12848,
"src": "666:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12859,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10491,
"src": "660:5:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODO_$10491_$",
"typeString": "type(contract IDODO)"
}
},
"id": 12861,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "660:12:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODO_$10491",
"typeString": "contract IDODO"
}
},
"id": 12862,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_BASE_CAPITAL_TOKEN_",
"nodeType": "MemberAccess",
"referencedDeclaration": 10475,
"src": "660:33:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
"typeString": "function () view external returns (address)"
}
},
"id": 12863,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "660:35:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "638:57:44"
},
{
"assignments": [
12866
],
"declarations": [
{
"constant": false,
"id": 12866,
"mutability": "mutable",
"name": "quoteLpToken",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "705:20:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12865,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "705:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12872,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12868,
"name": "_dodo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12848,
"src": "734:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12867,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10491,
"src": "728:5:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODO_$10491_$",
"typeString": "type(contract IDODO)"
}
},
"id": 12869,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "728:12:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODO_$10491",
"typeString": "contract IDODO"
}
},
"id": 12870,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_QUOTE_CAPITAL_TOKEN_",
"nodeType": "MemberAccess",
"referencedDeclaration": 10480,
"src": "728:34:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
"typeString": "function () view external returns (address)"
}
},
"id": 12871,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "728:36:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "705:59:44"
},
{
"assignments": [
12874
],
"declarations": [
{
"constant": false,
"id": 12874,
"mutability": "mutable",
"name": "baseLpBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "775:21:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12873,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "775:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12882,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12879,
"name": "baseLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12858,
"src": "837:11:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 12880,
"name": "_user",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12850,
"src": "850:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12876,
"name": "_dodoMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12846,
"src": "809:9:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12875,
"name": "IDODOMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12841,
"src": "799:9:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODOMine_$12841_$",
"typeString": "type(contract IDODOMine)"
}
},
"id": 12877,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "799:20:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODOMine_$12841",
"typeString": "contract IDODOMine"
}
},
"id": 12878,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "getUserLpBalance",
"nodeType": "MemberAccess",
"referencedDeclaration": 12840,
"src": "799:37:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$",
"typeString": "function (address,address) view external returns (uint256)"
}
},
"id": 12881,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "799:57:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "775:81:44"
},
{
"assignments": [
12884
],
"declarations": [
{
"constant": false,
"id": 12884,
"mutability": "mutable",
"name": "quoteLpBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "866:22:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12883,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "866:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12892,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12889,
"name": "quoteLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12866,
"src": "929:12:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 12890,
"name": "_user",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12850,
"src": "943:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12886,
"name": "_dodoMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12846,
"src": "901:9:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12885,
"name": "IDODOMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12841,
"src": "891:9:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODOMine_$12841_$",
"typeString": "type(contract IDODOMine)"
}
},
"id": 12887,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "891:20:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODOMine_$12841",
"typeString": "contract IDODOMine"
}
},
"id": 12888,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "getUserLpBalance",
"nodeType": "MemberAccess",
"referencedDeclaration": 12840,
"src": "891:37:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$",
"typeString": "function (address,address) view external returns (uint256)"
}
},
"id": 12891,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "891:58:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "866:83:44"
},
{
"assignments": [
12894
],
"declarations": [
{
"constant": false,
"id": 12894,
"mutability": "mutable",
"name": "baseLpTotalSupply",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "960:25:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12893,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "960:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12900,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12896,
"name": "baseLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12858,
"src": "995:11:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12895,
"name": "IERC20",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10607,
"src": "988:6:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IERC20_$10607_$",
"typeString": "type(contract IERC20)"
}
},
"id": 12897,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "988:19:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$10607",
"typeString": "contract IERC20"
}
},
"id": 12898,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "totalSupply",
"nodeType": "MemberAccess",
"referencedDeclaration": 10546,
"src": "988:31:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
"typeString": "function () view external returns (uint256)"
}
},
"id": 12899,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "988:33:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "960:61:44"
},
{
"assignments": [
12902
],
"declarations": [
{
"constant": false,
"id": 12902,
"mutability": "mutable",
"name": "quoteLpTotalSupply",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "1031:26:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12901,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1031:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12908,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12904,
"name": "quoteLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12866,
"src": "1067:12:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12903,
"name": "IERC20",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10607,
"src": "1060:6:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IERC20_$10607_$",
"typeString": "type(contract IERC20)"
}
},
"id": 12905,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1060:20:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$10607",
"typeString": "contract IERC20"
}
},
"id": 12906,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "totalSupply",
"nodeType": "MemberAccess",
"referencedDeclaration": 10546,
"src": "1060:32:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
"typeString": "function () view external returns (uint256)"
}
},
"id": 12907,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1060:34:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1031:63:44"
},
{
"assignments": [
12910,
12912
],
"declarations": [
{
"constant": false,
"id": 12910,
"mutability": "mutable",
"name": "baseTarget",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "1106:18:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12909,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1106:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12912,
"mutability": "mutable",
"name": "quoteTarget",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "1126:19:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12911,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1126:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12918,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12914,
"name": "_dodo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12848,
"src": "1155:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12913,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10491,
"src": "1149:5:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODO_$10491_$",
"typeString": "type(contract IDODO)"
}
},
"id": 12915,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1149:12:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODO_$10491",
"typeString": "contract IDODO"
}
},
"id": 12916,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "getExpectedTarget",
"nodeType": "MemberAccess",
"referencedDeclaration": 10428,
"src": "1149:30:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$_t_uint256_$",
"typeString": "function () view external returns (uint256,uint256)"
}
},
"id": 12917,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1149:32:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
"typeString": "tuple(uint256,uint256)"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1105:76:44"
},
{
"expression": {
"argumentTypes": null,
"id": 12927,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 12919,
"name": "baseBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12853,
"src": "1191:11:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12925,
"name": "baseLpTotalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12894,
"src": "1239:17:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12922,
"name": "baseLpBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12874,
"src": "1220:13:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 12920,
"name": "baseTarget",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12910,
"src": "1205:10:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12921,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 11478,
"src": "1205:14:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12923,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1205:29:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12924,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "div",
"nodeType": "MemberAccess",
"referencedDeclaration": 11499,
"src": "1205:33:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12926,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1205:52:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1191:66:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12928,
"nodeType": "ExpressionStatement",
"src": "1191:66:44"
},
{
"expression": {
"argumentTypes": null,
"id": 12937,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 12929,
"name": "quoteBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12855,
"src": "1267:12:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12935,
"name": "quoteLpTotalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12902,
"src": "1318:18:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12932,
"name": "quoteLpBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12884,
"src": "1298:14:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 12930,
"name": "quoteTarget",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12912,
"src": "1282:11:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12931,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 11478,
"src": "1282:15:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12933,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1282:31:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12934,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "div",
"nodeType": "MemberAccess",
"referencedDeclaration": 11499,
"src": "1282:35:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12936,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1282:55:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1267:70:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12938,
"nodeType": "ExpressionStatement",
"src": "1267:70:44"
},
{
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 12939,
"name": "baseBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12853,
"src": "1356:11:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 12940,
"name": "quoteBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12855,
"src": "1369:12:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 12941,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "1355:27:44",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
"typeString": "tuple(uint256,uint256)"
}
},
"functionReturnParameters": 12856,
"id": 12942,
"nodeType": "Return",
"src": "1348:34:44"
}
]
},
"documentation": null,
"functionSelector": "4e41de7f",
"id": 12944,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getUserStakedBalance",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 12851,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12846,
"mutability": "mutable",
"name": "_dodoMine",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "492:17:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12845,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "492:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12848,
"mutability": "mutable",
"name": "_dodo",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "519:13:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12847,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "519:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12850,
"mutability": "mutable",
"name": "_user",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "542:13:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12849,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "542:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "482:79:44"
},
"returnParameters": {
"id": 12856,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12853,
"mutability": "mutable",
"name": "baseBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "585:19:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12852,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "585:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12855,
"mutability": "mutable",
"name": "quoteBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "606:20:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12854,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "606:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "584:43:44"
},
"scope": 12945,
"src": "453:936:44",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
}
],
"scope": 12946,
"src": "390:1001:44"
}
],
"src": "78:1314:44"
},
"legacyAST": {
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/token/DODOMineReader.sol",
"exportedSymbols": {
"DODOMineReader": [
12945
],
"IDODOMine": [
12841
]
},
"id": 12946,
"license": "Apache-2.0",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 12824,
"literals": [
"solidity",
"0.6",
".9"
],
"nodeType": "PragmaDirective",
"src": "78:22:44"
},
{
"id": 12825,
"literals": [
"experimental",
"ABIEncoderV2"
],
"nodeType": "PragmaDirective",
"src": "101:33:44"
},
{
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/intf/IDODO.sol",
"file": "../intf/IDODO.sol",
"id": 12827,
"nodeType": "ImportDirective",
"scope": 12946,
"sourceUnit": 10492,
"src": "136:40:44",
"symbolAliases": [
{
"foreign": {
"argumentTypes": null,
"id": 12826,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": null,
"src": "144:5:44",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
},
"local": null
}
],
"unitAlias": ""
},
{
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/intf/IERC20.sol",
"file": "../intf/IERC20.sol",
"id": 12829,
"nodeType": "ImportDirective",
"scope": 12946,
"sourceUnit": 10608,
"src": "177:42:44",
"symbolAliases": [
{
"foreign": {
"argumentTypes": null,
"id": 12828,
"name": "IERC20",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": null,
"src": "185:6:44",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
},
"local": null
}
],
"unitAlias": ""
},
{
"absolutePath": "/Users/owen/Desktop/dodo/dodo-smart-contract/contracts/lib/SafeMath.sol",
"file": "../lib/SafeMath.sol",
"id": 12831,
"nodeType": "ImportDirective",
"scope": 12946,
"sourceUnit": 11624,
"src": "220:45:44",
"symbolAliases": [
{
"foreign": {
"argumentTypes": null,
"id": 12830,
"name": "SafeMath",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": null,
"src": "228:8:44",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
},
"local": null
}
],
"unitAlias": ""
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "interface",
"documentation": null,
"fullyImplemented": false,
"id": 12841,
"linearizedBaseContracts": [
12841
],
"name": "IDODOMine",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": null,
"documentation": null,
"functionSelector": "19a78f55",
"id": 12840,
"implemented": false,
"kind": "function",
"modifiers": [],
"name": "getUserLpBalance",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 12836,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12833,
"mutability": "mutable",
"name": "_lpToken",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12840,
"src": "320:16:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12832,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "320:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12835,
"mutability": "mutable",
"name": "_user",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12840,
"src": "338:13:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12834,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "338:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "319:33:44"
},
"returnParameters": {
"id": 12839,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12838,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12840,
"src": "376:7:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12837,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "376:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "375:9:44"
},
"scope": 12841,
"src": "294:91:44",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
}
],
"scope": 12946,
"src": "268:119:44"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 12945,
"linearizedBaseContracts": [
12945
],
"name": "DODOMineReader",
"nodeType": "ContractDefinition",
"nodes": [
{
"id": 12844,
"libraryName": {
"contractScope": null,
"id": 12842,
"name": "SafeMath",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 11623,
"src": "426:8:44",
"typeDescriptions": {
"typeIdentifier": "t_contract$_SafeMath_$11623",
"typeString": "library SafeMath"
}
},
"nodeType": "UsingForDirective",
"src": "420:27:44",
"typeName": {
"id": 12843,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "439:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
{
"body": {
"id": 12943,
"nodeType": "Block",
"src": "628:761:44",
"statements": [
{
"assignments": [
12858
],
"declarations": [
{
"constant": false,
"id": 12858,
"mutability": "mutable",
"name": "baseLpToken",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "638:19:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12857,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "638:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12864,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12860,
"name": "_dodo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12848,
"src": "666:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12859,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10491,
"src": "660:5:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODO_$10491_$",
"typeString": "type(contract IDODO)"
}
},
"id": 12861,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "660:12:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODO_$10491",
"typeString": "contract IDODO"
}
},
"id": 12862,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_BASE_CAPITAL_TOKEN_",
"nodeType": "MemberAccess",
"referencedDeclaration": 10475,
"src": "660:33:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
"typeString": "function () view external returns (address)"
}
},
"id": 12863,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "660:35:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "638:57:44"
},
{
"assignments": [
12866
],
"declarations": [
{
"constant": false,
"id": 12866,
"mutability": "mutable",
"name": "quoteLpToken",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "705:20:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12865,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "705:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12872,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12868,
"name": "_dodo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12848,
"src": "734:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12867,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10491,
"src": "728:5:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODO_$10491_$",
"typeString": "type(contract IDODO)"
}
},
"id": 12869,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "728:12:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODO_$10491",
"typeString": "contract IDODO"
}
},
"id": 12870,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "_QUOTE_CAPITAL_TOKEN_",
"nodeType": "MemberAccess",
"referencedDeclaration": 10480,
"src": "728:34:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_address_$",
"typeString": "function () view external returns (address)"
}
},
"id": 12871,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "728:36:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "705:59:44"
},
{
"assignments": [
12874
],
"declarations": [
{
"constant": false,
"id": 12874,
"mutability": "mutable",
"name": "baseLpBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "775:21:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12873,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "775:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12882,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12879,
"name": "baseLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12858,
"src": "837:11:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 12880,
"name": "_user",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12850,
"src": "850:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12876,
"name": "_dodoMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12846,
"src": "809:9:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12875,
"name": "IDODOMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12841,
"src": "799:9:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODOMine_$12841_$",
"typeString": "type(contract IDODOMine)"
}
},
"id": 12877,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "799:20:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODOMine_$12841",
"typeString": "contract IDODOMine"
}
},
"id": 12878,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "getUserLpBalance",
"nodeType": "MemberAccess",
"referencedDeclaration": 12840,
"src": "799:37:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$",
"typeString": "function (address,address) view external returns (uint256)"
}
},
"id": 12881,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "799:57:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "775:81:44"
},
{
"assignments": [
12884
],
"declarations": [
{
"constant": false,
"id": 12884,
"mutability": "mutable",
"name": "quoteLpBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "866:22:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12883,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "866:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12892,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12889,
"name": "quoteLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12866,
"src": "929:12:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 12890,
"name": "_user",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12850,
"src": "943:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12886,
"name": "_dodoMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12846,
"src": "901:9:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12885,
"name": "IDODOMine",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12841,
"src": "891:9:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODOMine_$12841_$",
"typeString": "type(contract IDODOMine)"
}
},
"id": 12887,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "891:20:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODOMine_$12841",
"typeString": "contract IDODOMine"
}
},
"id": 12888,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "getUserLpBalance",
"nodeType": "MemberAccess",
"referencedDeclaration": 12840,
"src": "891:37:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$",
"typeString": "function (address,address) view external returns (uint256)"
}
},
"id": 12891,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "891:58:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "866:83:44"
},
{
"assignments": [
12894
],
"declarations": [
{
"constant": false,
"id": 12894,
"mutability": "mutable",
"name": "baseLpTotalSupply",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "960:25:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12893,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "960:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12900,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12896,
"name": "baseLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12858,
"src": "995:11:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12895,
"name": "IERC20",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10607,
"src": "988:6:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IERC20_$10607_$",
"typeString": "type(contract IERC20)"
}
},
"id": 12897,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "988:19:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$10607",
"typeString": "contract IERC20"
}
},
"id": 12898,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "totalSupply",
"nodeType": "MemberAccess",
"referencedDeclaration": 10546,
"src": "988:31:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
"typeString": "function () view external returns (uint256)"
}
},
"id": 12899,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "988:33:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "960:61:44"
},
{
"assignments": [
12902
],
"declarations": [
{
"constant": false,
"id": 12902,
"mutability": "mutable",
"name": "quoteLpTotalSupply",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "1031:26:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12901,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1031:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12908,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12904,
"name": "quoteLpToken",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12866,
"src": "1067:12:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12903,
"name": "IERC20",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10607,
"src": "1060:6:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IERC20_$10607_$",
"typeString": "type(contract IERC20)"
}
},
"id": 12905,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1060:20:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IERC20_$10607",
"typeString": "contract IERC20"
}
},
"id": 12906,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "totalSupply",
"nodeType": "MemberAccess",
"referencedDeclaration": 10546,
"src": "1060:32:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$",
"typeString": "function () view external returns (uint256)"
}
},
"id": 12907,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1060:34:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1031:63:44"
},
{
"assignments": [
12910,
12912
],
"declarations": [
{
"constant": false,
"id": 12910,
"mutability": "mutable",
"name": "baseTarget",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "1106:18:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12909,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1106:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12912,
"mutability": "mutable",
"name": "quoteTarget",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12943,
"src": "1126:19:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12911,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1126:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 12918,
"initialValue": {
"argumentTypes": null,
"arguments": [],
"expression": {
"argumentTypes": [],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12914,
"name": "_dodo",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12848,
"src": "1155:5:44",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 12913,
"name": "IDODO",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 10491,
"src": "1149:5:44",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_IDODO_$10491_$",
"typeString": "type(contract IDODO)"
}
},
"id": 12915,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1149:12:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_contract$_IDODO_$10491",
"typeString": "contract IDODO"
}
},
"id": 12916,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "getExpectedTarget",
"nodeType": "MemberAccess",
"referencedDeclaration": 10428,
"src": "1149:30:44",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$__$returns$_t_uint256_$_t_uint256_$",
"typeString": "function () view external returns (uint256,uint256)"
}
},
"id": 12917,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1149:32:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
"typeString": "tuple(uint256,uint256)"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1105:76:44"
},
{
"expression": {
"argumentTypes": null,
"id": 12927,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 12919,
"name": "baseBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12853,
"src": "1191:11:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12925,
"name": "baseLpTotalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12894,
"src": "1239:17:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12922,
"name": "baseLpBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12874,
"src": "1220:13:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 12920,
"name": "baseTarget",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12910,
"src": "1205:10:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12921,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 11478,
"src": "1205:14:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12923,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1205:29:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12924,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "div",
"nodeType": "MemberAccess",
"referencedDeclaration": 11499,
"src": "1205:33:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12926,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1205:52:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1191:66:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12928,
"nodeType": "ExpressionStatement",
"src": "1191:66:44"
},
{
"expression": {
"argumentTypes": null,
"id": 12937,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 12929,
"name": "quoteBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12855,
"src": "1267:12:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12935,
"name": "quoteLpTotalSupply",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12902,
"src": "1318:18:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 12932,
"name": "quoteLpBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12884,
"src": "1298:14:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"id": 12930,
"name": "quoteTarget",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12912,
"src": "1282:11:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12931,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "mul",
"nodeType": "MemberAccess",
"referencedDeclaration": 11478,
"src": "1282:15:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12933,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1282:31:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12934,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "div",
"nodeType": "MemberAccess",
"referencedDeclaration": 11499,
"src": "1282:35:44",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$",
"typeString": "function (uint256,uint256) pure returns (uint256)"
}
},
"id": 12936,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1282:55:44",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1267:70:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 12938,
"nodeType": "ExpressionStatement",
"src": "1267:70:44"
},
{
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 12939,
"name": "baseBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12853,
"src": "1356:11:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 12940,
"name": "quoteBalance",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 12855,
"src": "1369:12:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 12941,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "1355:27:44",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$",
"typeString": "tuple(uint256,uint256)"
}
},
"functionReturnParameters": 12856,
"id": 12942,
"nodeType": "Return",
"src": "1348:34:44"
}
]
},
"documentation": null,
"functionSelector": "4e41de7f",
"id": 12944,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getUserStakedBalance",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 12851,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12846,
"mutability": "mutable",
"name": "_dodoMine",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "492:17:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12845,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "492:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12848,
"mutability": "mutable",
"name": "_dodo",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "519:13:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12847,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "519:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12850,
"mutability": "mutable",
"name": "_user",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "542:13:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 12849,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "542:7:44",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "482:79:44"
},
"returnParameters": {
"id": 12856,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 12853,
"mutability": "mutable",
"name": "baseBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "585:19:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12852,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "585:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 12855,
"mutability": "mutable",
"name": "quoteBalance",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 12944,
"src": "606:20:44",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 12854,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "606:7:44",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "584:43:44"
},
"scope": 12945,
"src": "453:936:44",
"stateMutability": "view",
"virtual": false,
"visibility": "external"
}
],
"scope": 12946,
"src": "390:1001:44"
}
],
"src": "78:1314:44"
},
"compiler": {
"name": "solc",
"version": "0.6.9+commit.3e3065ac.Emscripten.clang"
},
"networks": {},
"schemaVersion": "3.2.3",
"updatedAt": "2020-11-06T08:03:35.735Z",
"devdoc": {
"methods": {}
},
"userdoc": {
"methods": {}
}
}