UNPKG

@andrekorol/kollateral-contracts

Version:

Kollateral protocol, the flash loan building block

1,307 lines 45.6 kB
{ "contractName": "Types", "abi": [], "metadata": "{\"compiler\":{\"version\":\"0.7.3+commit.9bfce1f6\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/Users/andrekorol/src/kollateral/protocol/contracts/liquidity/dydx/Types.sol\":\"Types\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/andrekorol/src/kollateral/protocol/contracts/liquidity/dydx/Types.sol\":{\"keccak256\":\"0x6ed571153190f3dd335ef6979ee462c6edbf519b0f5b4ca0d469ac7ed39b9d72\",\"license\":\"Apache-2.0\",\"urls\":[\"bzz-raw://b9ed752bdc9d722648483115bc6bbc40c6566ba6f3ea6c1a6dea56706dfcdba3\",\"dweb:/ipfs/QmYzqrrEnrL3ALyrQZATiobh696caMHMe1V8GsmtsoVYb2\"]}},\"version\":1}", "bytecode": "0x60566023600b82828239805160001a607314601657fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122066b070349c55727696197314b2db68f5d0e5054d50eaec9d80df974aff20586764736f6c63430007030033", "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122066b070349c55727696197314b2db68f5d0e5054d50eaec9d80df974aff20586764736f6c63430007030033", "immutableReferences": {}, "generatedSources": [], "deployedGeneratedSources": [], "sourceMap": "702:1550:24:-:0;;;;;;;;;;;;;;;;;;;;;;;;;", "deployedSourceMap": "702:1550:24:-:0;;;;;;;;", "source": "/*\n\n Copyright 2019 dYdX Trading Inc.\n Copyright 2020 Kollateral LLC.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n*/\n\n// SPDX-License-Identifier: Apache-2.0\npragma solidity ^0.7.0;\n\nlibrary Types {\n enum ActionType {\n Deposit, // supply tokens\n Withdraw, // borrow tokens\n Transfer, // transfer balance between accounts\n Buy, // buy an amount of some token (externally)\n Sell, // sell an amount of some token (externally)\n Trade, // trade tokens against another account\n Liquidate, // liquidate an undercollateralized or expiring account\n Vaporize, // use excess tokens to zero-out a completely negative account\n Call // send arbitrary data to an address\n }\n\n enum AssetDenomination {\n Wei, // the amount is denominated in wei\n Par // the amount is denominated in par\n }\n\n enum AssetReference {\n Delta, // the amount is given as a delta from the current value\n Target // the amount is given as an exact number to end up at\n }\n\n struct AssetAmount {\n bool sign; // true if positive\n AssetDenomination denomination;\n AssetReference ref;\n uint256 value;\n }\n\n struct Wei {\n bool sign; // true if positive\n uint256 value;\n }\n\n struct ActionArgs {\n ActionType actionType;\n uint256 accountId;\n AssetAmount amount;\n uint256 primaryMarketId;\n uint256 secondaryMarketId;\n address otherAddress;\n uint256 otherAccountId;\n bytes data;\n }\n\n struct AccountInfo {\n address owner; // The address that owns the account\n uint256 number; // A nonce that allows a single address to control many accounts\n }\n}\n", "sourcePath": "/Users/andrekorol/src/kollateral/protocol/contracts/liquidity/dydx/Types.sol", "ast": { "absolutePath": "/Users/andrekorol/src/kollateral/protocol/contracts/liquidity/dydx/Types.sol", "exportedSymbols": { "Types": [ 3226 ] }, "id": 3227, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 3173, "literals": [ "solidity", "^", "0.7", ".0" ], "nodeType": "PragmaDirective", "src": "677:23:24" }, { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "library", "fullyImplemented": true, "id": 3226, "linearizedBaseContracts": [ 3226 ], "name": "Types", "nodeType": "ContractDefinition", "nodes": [ { "canonicalName": "Types.ActionType", "id": 3183, "members": [ { "id": 3174, "name": "Deposit", "nodeType": "EnumValue", "src": "748:7:24" }, { "id": 3175, "name": "Withdraw", "nodeType": "EnumValue", "src": "782:8:24" }, { "id": 3176, "name": "Transfer", "nodeType": "EnumValue", "src": "817:8:24" }, { "id": 3177, "name": "Buy", "nodeType": "EnumValue", "src": "872:3:24" }, { "id": 3178, "name": "Sell", "nodeType": "EnumValue", "src": "929:4:24" }, { "id": 3179, "name": "Trade", "nodeType": "EnumValue", "src": "988:5:24" }, { "id": 3180, "name": "Liquidate", "nodeType": "EnumValue", "src": "1043:9:24" }, { "id": 3181, "name": "Vaporize", "nodeType": "EnumValue", "src": "1118:8:24" }, { "id": 3182, "name": "Call", "nodeType": "EnumValue", "src": "1199:4:24" } ], "name": "ActionType", "nodeType": "EnumDefinition", "src": "722:524:24" }, { "canonicalName": "Types.AssetDenomination", "id": 3186, "members": [ { "id": 3184, "name": "Wei", "nodeType": "EnumValue", "src": "1285:3:24" }, { "id": 3185, "name": "Par", "nodeType": "EnumValue", "src": "1334:3:24" } ], "name": "AssetDenomination", "nodeType": "EnumDefinition", "src": "1252:127:24" }, { "canonicalName": "Types.AssetReference", "id": 3189, "members": [ { "id": 3187, "name": "Delta", "nodeType": "EnumValue", "src": "1415:5:24" }, { "id": 3188, "name": "Target", "nodeType": "EnumValue", "src": "1487:6:24" } ], "name": "AssetReference", "nodeType": "EnumDefinition", "src": "1385:169:24" }, { "canonicalName": "Types.AssetAmount", "id": 3198, "members": [ { "constant": false, "id": 3191, "mutability": "mutable", "name": "sign", "nodeType": "VariableDeclaration", "scope": 3198, "src": "1589:9:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 3190, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1589:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, { "constant": false, "id": 3193, "mutability": "mutable", "name": "denomination", "nodeType": "VariableDeclaration", "scope": 3198, "src": "1628:30:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_AssetDenomination_$3186", "typeString": "enum Types.AssetDenomination" }, "typeName": { "id": 3192, "name": "AssetDenomination", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3186, "src": "1628:17:24", "typeDescriptions": { "typeIdentifier": "t_enum$_AssetDenomination_$3186", "typeString": "enum Types.AssetDenomination" } }, "visibility": "internal" }, { "constant": false, "id": 3195, "mutability": "mutable", "name": "ref", "nodeType": "VariableDeclaration", "scope": 3198, "src": "1668:18:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_AssetReference_$3189", "typeString": "enum Types.AssetReference" }, "typeName": { "id": 3194, "name": "AssetReference", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3189, "src": "1668:14:24", "typeDescriptions": { "typeIdentifier": "t_enum$_AssetReference_$3189", "typeString": "enum Types.AssetReference" } }, "visibility": "internal" }, { "constant": false, "id": 3197, "mutability": "mutable", "name": "value", "nodeType": "VariableDeclaration", "scope": 3198, "src": "1696:13:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3196, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1696:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "name": "AssetAmount", "nodeType": "StructDefinition", "scope": 3226, "src": "1560:156:24", "visibility": "public" }, { "canonicalName": "Types.Wei", "id": 3203, "members": [ { "constant": false, "id": 3200, "mutability": "mutable", "name": "sign", "nodeType": "VariableDeclaration", "scope": 3203, "src": "1743:9:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 3199, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1743:4:24", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" }, { "constant": false, "id": 3202, "mutability": "mutable", "name": "value", "nodeType": "VariableDeclaration", "scope": 3203, "src": "1782:13:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3201, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1782:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "name": "Wei", "nodeType": "StructDefinition", "scope": 3226, "src": "1722:80:24", "visibility": "public" }, { "canonicalName": "Types.ActionArgs", "id": 3220, "members": [ { "constant": false, "id": 3205, "mutability": "mutable", "name": "actionType", "nodeType": "VariableDeclaration", "scope": 3220, "src": "1836:21:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_ActionType_$3183", "typeString": "enum Types.ActionType" }, "typeName": { "id": 3204, "name": "ActionType", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3183, "src": "1836:10:24", "typeDescriptions": { "typeIdentifier": "t_enum$_ActionType_$3183", "typeString": "enum Types.ActionType" } }, "visibility": "internal" }, { "constant": false, "id": 3207, "mutability": "mutable", "name": "accountId", "nodeType": "VariableDeclaration", "scope": 3220, "src": "1867:17:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3206, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1867:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 3209, "mutability": "mutable", "name": "amount", "nodeType": "VariableDeclaration", "scope": 3220, "src": "1894:18:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_AssetAmount_$3198_storage_ptr", "typeString": "struct Types.AssetAmount" }, "typeName": { "id": 3208, "name": "AssetAmount", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3198, "src": "1894:11:24", "typeDescriptions": { "typeIdentifier": "t_struct$_AssetAmount_$3198_storage_ptr", "typeString": "struct Types.AssetAmount" } }, "visibility": "internal" }, { "constant": false, "id": 3211, "mutability": "mutable", "name": "primaryMarketId", "nodeType": "VariableDeclaration", "scope": 3220, "src": "1922:23:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3210, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1922:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 3213, "mutability": "mutable", "name": "secondaryMarketId", "nodeType": "VariableDeclaration", "scope": 3220, "src": "1955:25:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3212, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1955:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 3215, "mutability": "mutable", "name": "otherAddress", "nodeType": "VariableDeclaration", "scope": 3220, "src": "1990:20:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3214, "name": "address", "nodeType": "ElementaryTypeName", "src": "1990:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3217, "mutability": "mutable", "name": "otherAccountId", "nodeType": "VariableDeclaration", "scope": 3220, "src": "2020:22:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3216, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2020:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 3219, "mutability": "mutable", "name": "data", "nodeType": "VariableDeclaration", "scope": 3220, "src": "2052:10:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" }, "typeName": { "id": 3218, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "2052:5:24", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "visibility": "internal" } ], "name": "ActionArgs", "nodeType": "StructDefinition", "scope": 3226, "src": "1808:261:24", "visibility": "public" }, { "canonicalName": "Types.AccountInfo", "id": 3225, "members": [ { "constant": false, "id": 3222, "mutability": "mutable", "name": "owner", "nodeType": "VariableDeclaration", "scope": 3225, "src": "2104:13:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3221, "name": "address", "nodeType": "ElementaryTypeName", "src": "2104:7:24", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3224, "mutability": "mutable", "name": "number", "nodeType": "VariableDeclaration", "scope": 3225, "src": "2164:14:24", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3223, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "2164:7:24", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "name": "AccountInfo", "nodeType": "StructDefinition", "scope": 3226, "src": "2075:175:24", "visibility": "public" } ], "scope": 3227, "src": "702:1550:24" } ], "src": "677:1576:24" }, "legacyAST": { "attributes": { "absolutePath": "/Users/andrekorol/src/kollateral/protocol/contracts/liquidity/dydx/Types.sol", "exportedSymbols": { "Types": [ 3226 ] }, "license": "Apache-2.0" }, "children": [ { "attributes": { "literals": [ "solidity", "^", "0.7", ".0" ] }, "id": 3173, "name": "PragmaDirective", "src": "677:23:24" }, { "attributes": { "abstract": false, "baseContracts": [ null ], "contractDependencies": [ null ], "contractKind": "library", "fullyImplemented": true, "linearizedBaseContracts": [ 3226 ], "name": "Types", "scope": 3227 }, "children": [ { "attributes": { "canonicalName": "Types.ActionType", "name": "ActionType" }, "children": [ { "attributes": { "name": "Deposit" }, "id": 3174, "name": "EnumValue", "src": "748:7:24" }, { "attributes": { "name": "Withdraw" }, "id": 3175, "name": "EnumValue", "src": "782:8:24" }, { "attributes": { "name": "Transfer" }, "id": 3176, "name": "EnumValue", "src": "817:8:24" }, { "attributes": { "name": "Buy" }, "id": 3177, "name": "EnumValue", "src": "872:3:24" }, { "attributes": { "name": "Sell" }, "id": 3178, "name": "EnumValue", "src": "929:4:24" }, { "attributes": { "name": "Trade" }, "id": 3179, "name": "EnumValue", "src": "988:5:24" }, { "attributes": { "name": "Liquidate" }, "id": 3180, "name": "EnumValue", "src": "1043:9:24" }, { "attributes": { "name": "Vaporize" }, "id": 3181, "name": "EnumValue", "src": "1118:8:24" }, { "attributes": { "name": "Call" }, "id": 3182, "name": "EnumValue", "src": "1199:4:24" } ], "id": 3183, "name": "EnumDefinition", "src": "722:524:24" }, { "attributes": { "canonicalName": "Types.AssetDenomination", "name": "AssetDenomination" }, "children": [ { "attributes": { "name": "Wei" }, "id": 3184, "name": "EnumValue", "src": "1285:3:24" }, { "attributes": { "name": "Par" }, "id": 3185, "name": "EnumValue", "src": "1334:3:24" } ], "id": 3186, "name": "EnumDefinition", "src": "1252:127:24" }, { "attributes": { "canonicalName": "Types.AssetReference", "name": "AssetReference" }, "children": [ { "attributes": { "name": "Delta" }, "id": 3187, "name": "EnumValue", "src": "1415:5:24" }, { "attributes": { "name": "Target" }, "id": 3188, "name": "EnumValue", "src": "1487:6:24" } ], "id": 3189, "name": "EnumDefinition", "src": "1385:169:24" }, { "attributes": { "canonicalName": "Types.AssetAmount", "name": "AssetAmount", "scope": 3226, "visibility": "public" }, "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "sign", "scope": 3198, "stateVariable": false, "storageLocation": "default", "type": "bool", "visibility": "internal" }, "children": [ { "attributes": { "name": "bool", "type": "bool" }, "id": 3190, "name": "ElementaryTypeName", "src": "1589:4:24" } ], "id": 3191, "name": "VariableDeclaration", "src": "1589:9:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "denomination", "scope": 3198, "stateVariable": false, "storageLocation": "default", "type": "enum Types.AssetDenomination", "visibility": "internal" }, "children": [ { "attributes": { "name": "AssetDenomination", "referencedDeclaration": 3186, "type": "enum Types.AssetDenomination" }, "id": 3192, "name": "UserDefinedTypeName", "src": "1628:17:24" } ], "id": 3193, "name": "VariableDeclaration", "src": "1628:30:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "ref", "scope": 3198, "stateVariable": false, "storageLocation": "default", "type": "enum Types.AssetReference", "visibility": "internal" }, "children": [ { "attributes": { "name": "AssetReference", "referencedDeclaration": 3189, "type": "enum Types.AssetReference" }, "id": 3194, "name": "UserDefinedTypeName", "src": "1668:14:24" } ], "id": 3195, "name": "VariableDeclaration", "src": "1668:18:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "value", "scope": 3198, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3196, "name": "ElementaryTypeName", "src": "1696:7:24" } ], "id": 3197, "name": "VariableDeclaration", "src": "1696:13:24" } ], "id": 3198, "name": "StructDefinition", "src": "1560:156:24" }, { "attributes": { "canonicalName": "Types.Wei", "name": "Wei", "scope": 3226, "visibility": "public" }, "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "sign", "scope": 3203, "stateVariable": false, "storageLocation": "default", "type": "bool", "visibility": "internal" }, "children": [ { "attributes": { "name": "bool", "type": "bool" }, "id": 3199, "name": "ElementaryTypeName", "src": "1743:4:24" } ], "id": 3200, "name": "VariableDeclaration", "src": "1743:9:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "value", "scope": 3203, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3201, "name": "ElementaryTypeName", "src": "1782:7:24" } ], "id": 3202, "name": "VariableDeclaration", "src": "1782:13:24" } ], "id": 3203, "name": "StructDefinition", "src": "1722:80:24" }, { "attributes": { "canonicalName": "Types.ActionArgs", "name": "ActionArgs", "scope": 3226, "visibility": "public" }, "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "actionType", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "enum Types.ActionType", "visibility": "internal" }, "children": [ { "attributes": { "name": "ActionType", "referencedDeclaration": 3183, "type": "enum Types.ActionType" }, "id": 3204, "name": "UserDefinedTypeName", "src": "1836:10:24" } ], "id": 3205, "name": "VariableDeclaration", "src": "1836:21:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "accountId", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3206, "name": "ElementaryTypeName", "src": "1867:7:24" } ], "id": 3207, "name": "VariableDeclaration", "src": "1867:17:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "amount", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "struct Types.AssetAmount", "visibility": "internal" }, "children": [ { "attributes": { "name": "AssetAmount", "referencedDeclaration": 3198, "type": "struct Types.AssetAmount" }, "id": 3208, "name": "UserDefinedTypeName", "src": "1894:11:24" } ], "id": 3209, "name": "VariableDeclaration", "src": "1894:18:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "primaryMarketId", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3210, "name": "ElementaryTypeName", "src": "1922:7:24" } ], "id": 3211, "name": "VariableDeclaration", "src": "1922:23:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "secondaryMarketId", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3212, "name": "ElementaryTypeName", "src": "1955:7:24" } ], "id": 3213, "name": "VariableDeclaration", "src": "1955:25:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "otherAddress", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "address", "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "stateMutability": "nonpayable", "type": "address" }, "id": 3214, "name": "ElementaryTypeName", "src": "1990:7:24" } ], "id": 3215, "name": "VariableDeclaration", "src": "1990:20:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "otherAccountId", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3216, "name": "ElementaryTypeName", "src": "2020:7:24" } ], "id": 3217, "name": "VariableDeclaration", "src": "2020:22:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "data", "scope": 3220, "stateVariable": false, "storageLocation": "default", "type": "bytes", "visibility": "internal" }, "children": [ { "attributes": { "name": "bytes", "type": "bytes" }, "id": 3218, "name": "ElementaryTypeName", "src": "2052:5:24" } ], "id": 3219, "name": "VariableDeclaration", "src": "2052:10:24" } ], "id": 3220, "name": "StructDefinition", "src": "1808:261:24" }, { "attributes": { "canonicalName": "Types.AccountInfo", "name": "AccountInfo", "scope": 3226, "visibility": "public" }, "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "owner", "scope": 3225, "stateVariable": false, "storageLocation": "default", "type": "address", "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "stateMutability": "nonpayable", "type": "address" }, "id": 3221, "name": "ElementaryTypeName", "src": "2104:7:24" } ], "id": 3222, "name": "VariableDeclaration", "src": "2104:13:24" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "number", "scope": 3225, "stateVariable": false, "storageLocation": "default", "type": "uint256", "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 3223, "name": "ElementaryTypeName", "src": "2164:7:24" } ], "id": 3224, "name": "VariableDeclaration", "src": "2164:14:24" } ], "id": 3225, "name": "StructDefinition", "src": "2075:175:24" } ], "id": 3226, "name": "ContractDefinition", "src": "702:1550:24" } ], "id": 3227, "name": "SourceUnit", "src": "677:1576:24" }, "compiler": { "name": "solc", "version": "0.7.3+commit.9bfce1f6.Emscripten.clang" }, "networks": {}, "schemaVersion": "3.3.3", "updatedAt": "2021-02-01T23:13:33.231Z", "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }